sklearn集成方法之一随机森林

来源:互联网 发布:excel数据左上角 编辑:程序博客网 时间:2024/05/22 14:17

随机森林是有一系列决策树组成的元估计器,其中每个决策树训练的样本数相同,其样本数都等于原始输入的样本数,只是取样时随机的

①sklearn.ensemble.RandomForestClassifier(n_estimators=10, criterion=’gini’, max_depth=None,min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0,max_features=’auto’,max_leaf_nodes=None,min_impurity_split=1e-07, 

bootstrap=True,  oob_score=False, n_jobs=1,random_state=None, verbose=0,warm_start=False, class_weight=None)

  参数说明:

 n_estimators:估计器个数,默认10

criterion:划分选择标准,默认 ‘gini’,也支持 ‘entropy’       

max_features:划分时考虑最大特征数,可以是整数、浮点、字符串或None,默认‘auto’,主要用于寻找最好划分

①若为整数,则每次划分时考虑的最大特征数为max_features

②若为浮点数,则每次划分时考虑的最大特征数为(max_features * n_features)对应的最大特征数

③若为auto,则max_features=log2(n_features)

④若为log2,则max_features=log2(n_features)

⑤若为None,则考虑所有所有特征数即max_features=n_features

 max_depth:决策树的最大深度,可以是整数或None,默认None,若为None,表示子树的生长不会受数深度影响,直到所有叶节点所有样本均属于同一种类标签或所有叶节点都已达到min_samples_split samples

min_samples_split:内部节点再划分最小样本数,限制子树继续划分的条件,可以是整数、浮点数,默认为2

①若为整数,则最小样本数为min_samples_split

②若为浮点数,则每次节点每次划分的最小样本数为ceil(min_samples_split *n_samples),其中ceil表示上取整

min_samples_leaf:叶子结点最小的样本数,可以为整数、浮点数,默认为1

①若为整数,则表示叶子节点最小样本数为min_samples_leaf

②若为浮点数,则表示叶节点最小样本数为ceil(min_samples_leaf *n_samples)

min_weight_fraction_leaf:所有叶节点权重之和,浮点数,默认为0,若没有提供养样本权重,则代表所有样本具有等同的权重

max_leaf_nodes:叶节点最大数,可以是整数或None,特征过多时,可以限制该参数,可以缓解过拟合问题

min_impurity_split:节点最小划分不纯度,限制树停止生长的阈值,若节点的不纯度大于该阈值,则可以划分,否则为叶节点

bootstrap:布尔型,默认为True,在构建树时,bootstrap样本是否使用标识

oob_score:布尔型,默认False,是否使用袋外样本评估泛化准确率标识

n_jobs:整数,训练与预测时,并行运行的jobs数目,默认为-1

random_state:可以为整数、RandomState instance或None,若为整数,表示用于随机数生成器的随机种子数;若为RandomStateinstance,表示随机数生成器;若为None表示使用np.random随机生成器

verbose:整数,默认0,控制构建树的verbosity

warm_start:布尔型,若为True,表示重用之前的解决方案来训练或添加更多的估计器来集成,否则,训练整个森林

class_weight:可以为字典、列表字典、balanced、balanced_subsample或None,默认None,类标签权重以{class_label: weight}.形式给出

①若为None,则表示各个类标签具有相同的权重

②对于多类输出问题,可以以列表字典形式提供,按照y列的顺序

③若为balanced模式,根据输入的样本数,自动调整为n_samples / (n_classes*np.bincount(y))

④若为balanced_subsample模式,跟balanced模式类似,基本树bootstrap样本计算权重