9分钟
DMatrix
1. DMatrix: 由xgboost 内部使用的数据结构,它存储了数据集,并且针对了内存消耗和训练速度进行了优化。
xgboost.DMatrix(data, label=None, missing=None, weight=None, silent=False,
feature_names=None, feature_types=None, nthread=None)2. 属性:
feature_names: 返回每个特征的名字feature_types: 返回每个特征的数据类型
3. 方法:
.get_base_margin(): 返回一个浮点数,表示DMatrix的base margin。.set_base_margin(margin): 设置DMatrix的base margin- 参数:
margin: t一个序列,给出了每个样本的prediction margin
- 参数:
.get_float_info(field): 返回一个numpy array, 表示DMatrix的float property。.set_float_info(field,data): 设置DMatrix的float property。.set_float_info_npy2d(field,data): 设置DMatrix的float property。这里的data是二维的numpy array- 参数:
field: 一个字符串,给出了information的字段名。注:意义未知。data: 一个numpy array,给出了数据集每一个点的float information
- 参数:
.get_uint_info(field): 返回DMatrix的unsigned integer property。.set_unit_info(field,data): 设置DMatrix的unsigned integer property。- 参数:
field: 一个字符串,给出了information的字段名。注:意义未知。data: 一个numpy array, 给出了数据集每个点的uint information
- 返回值:一个
numpy array,表示数据集的unsigned integer information
- 参数:
.get_label(): 返回一个numpy array,表示DMatrix的label。.set_label(label): 设置样本标记。.set_label_npy2d(label): 设置样本标记。这里的label为二维的numpy array- 参数:
label: 一个序列,表示样本标记
- 参数:
.get_weight(): 一个numpy array,返回DMatrix的样本权重。.set_weight(weight): 设置样本权重。.set_weight_npy2d(weight): 设置样本权重。这里的weight为二维的numpy array- 参数:
weight:一个序列,表示样本权重
- 参数:
.num_col(): 返回DMatrix的列数- 返回值:一个整数,表示特征的数量
.num_row(): 返回DMatrix的行数- 返回值:一个整数,表示样本的数量
save_binary(fname,silent=True): 保存DMatrix到一个xgboost buffer文件中- 参数:
fname: 一个字符串,表示输出的文件名silent: 一个布尔值。如果为True,则不输出中间信息。
- 参数:
.set_group(group): 设置DMatrix每个组的大小(用于排序任务)- 参数:
group: 一个序列,给出了每个组的大小
- 参数:
slice(rindex): 切分DMaxtrix,返回一个新的DMatrix。 该新的DMatrix仅仅包含rindex- 参数:
rindex: 一个列表,给出了要保留的index - 返回值:一个新的
DMatrix对象
- 参数:
学员评价