15分钟
Dataset
Dataset
: 由lightgbm
内部使用的数据结构,它存储了数据集。
class lightgbm.Dataset(data, label=None, max_bin=None, reference=None, weight=None, group=None, init_score=None, silent=False, feature_name='auto', categorical_feature='auto', params=None, free_raw_data=True)
- 参数:
data
: 一个字符串、numpy array
或者scipy.parse
, 它指定了数据源。 如果是字符串,则表示数据源文件的文件名。label
: 一个列表、1维的numpy array
或者None
, 它指定了样本标记。默认为None
。max_bin
: 一个整数或者None
, 指定每个特征的最大分桶数量。默认为None
。 如果为None
,则从配置文件中读取。reference
: 一个Dataset
或者None
。 默认为None
。 如果当前构建的数据集用于验证集,则reference
必须传入训练集。否则会报告has different bin mappers
。weight
: 一个列表、1维的numpy array
或者None
, 它指定了样本的权重。默认为None
。group
: 一个列表、1维的numpy array
或者None
, 它指定了数据集的group/query size
。默认为None
。init_score
: 一个列表、1维的numpy array
或者None
, 它指定了Booster
的初始score
。默认为None
。silent
: 一个布尔值,指示是否在构建过程中输出信息。默认为False
feature_name
: 一个字符串列表或者'auto'
,它指定了特征的名字。默认为'auto'
- 如果数据源为
pandas DataFrame
并且feature_name='auto'
,则使用DataFrame
的column names
- 如果数据源为
categorical_feature
: 一个字符串列表、整数列表、或者'auto'
。它指定了categorical
特征。默认为'auto'
- 如果是整数列表,则给定了
categorical
特征的下标 - 如果是字符串列表,在给定了
categorical
特征的名字。此时必须设定feature_name
参数。 - 如果是
'auto'
并且数据源为pandas DataFrame
,则DataFrame
的categorical
列将作为categorical
特征
- 如果是整数列表,则给定了
params
: 一个字典或者None
,指定了其它的参数。默认为None
free_raw_data
: 一个布尔值,指定是否在创建完Dataset
之后释放原始的数据。默认为True
调用Dataset()
之后,并没有构建完Dataset
。 构建完需要等到构造一个Booster
的时候。
学员评价