赞
踩
总第114篇
随机森林(RandomForest,简称RF)是集成学习bagging的一种代表模型,随机森林模型正如他表面意思,是由若干颗树随机组成一片森林,这里的树就是决策树。
在GBDT篇我们说了GBDT和Adaboost的不同,那么RF和GBDT又有什么异同呢?主要有以下两点:
模型迭代方式不同,GBDT是boosting模型,RF是bagging模型。
GBDT只能使用CART模型,RF默认是CART模型,也可以选择ID3模型。
参数同样也分为两部分,一部分是框架提升部分的参数,另一部分是决策树参数。
- class 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_decrease=0.0,
- min_impurity_split=None, bootstrap=True, oob_score=False, n_jobs=1,
- random_state=None, verbose=0, warm_start=False, class_weight=None)
因随机森林中的树是决策树,所以关于决策树的大部分参数与前面决策树模型中的参数意思一致,这里就不再赘述,可查看:Sklearn参数详解--决策树
n_estimators:随机森林中树的棵树,默认是10棵。
criterion:样本集切分策略,默认是gini指数
,此时树模型为CART模型,当值选为信息增益
的时候,模型就成了ID3模型,默认为CART模型。
bootstrap:是统计学中的一种重采样技术,可以简单理解成是有放回地抽样,默认是True,即采取有放回抽样这种策略,这不就是bagging的思想么。
oob_score:袋外估计(out-of-bag),这个外是针对于bagging这个袋子而言的,我们知道,bagging采取的随机抽样的方式去建立树模型,那么那些未被抽取到的样本集,也就是未参与建立树模型的数据集就是袋外数据集,我们就可以用这部分数据集去验证模型效果,默认值为False。
estimators_:打印输出随机森林中所有的树。
oob_score
参数选择True的时候才可用。
apply(X):将训练好的模型应用在数据集X上,并返回数据集X对应的叶指数。
decision_function(X):返回决策函数值(比如svm中的决策距离)
fit(X,Y):在数据集(X,Y)上训练模型。
get_parms():获取模型参数
predict(X):预测数据集X的结果。
predict_log_proba(X):预测数据集X的对数概率。
predict_proba(X):预测数据集X的概率值。
score(X,Y):输出数据集(X,Y)在模型上的准确率。
你还可以看:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。