RandomForest调参,不断总结

来源:互联网 发布:na.windows.app.23787 编辑:程序博客网 时间:2024/06/05 09:01
class sklearn.ensemble.RandomForestClassifier(
n_estimators: int 默认10
criterion:gini” or “entropy”(default=”gini”)表示使用基尼不纯度还是信息增益来计算属性,来选择最合适的节点。
max_depth:(default=None)设置树的最大深度,默认为None,直到使每一个叶节点只有一个类别,或是达到min_samples_split。
min_samples_split:默认2,int(可以被分割的所含最小样本数),float(总样本的百分比)
min_samples_leaf:默认1,int或float,叶子节点所含最少样本数
min_weight_fraction_leaf:(default=0) 叶子节点所需要的最小权值(当样本采样权重设置时才有意义,叶子节点的权重为属于该节点的所有样本权重和)
max_features:(default=”auto”) 每次找最好的分割点是可以考虑的特征数

If int,特征数
If float, 特征总数的百分比
If “auto”, sqrt(n_features).
If “sqrt”, sqrt(n_features)
If “log2”, log2(n_features).
If None, 全部特征数


max_leaf_nodes:
最大叶节点数 和树的最大深度同样作用
min_impurity_split
bootstrap:
是否有放回采样,默认True
oob_score:默认False,是否使用袋外数据统计泛华误差。
利用在某次决策树训练中没有被采样选中的数据对该单个模型进行验证,算是一个简单的交叉验证。性能消耗小,但是效果不错。

n_jobs:默认1.可并行job数。-1代表有多少job=core

import timeit 来计时统计查看速度差别:运行多个函数并提供最快的循环运行时间


random_state:如果给定相同的参数和训练数据,random_state的确定值将始终产生相同的结果。
一个具有不同随机状态的多个模型的集合,并且所有最优参数有时比单个随机状态更好。
verbose:(default=0) 是否显示任务进程
warm_start:False热启动,决定是否使用上次调用该类的结果然后增加新的。
class_weight:None,各个label的权重





点击打开链接

Random Forest和Gradient Tree Boosting调参


原创粉丝点击