SKlearn参数详解—随机森林
總第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:是統(tǒng)計學中的一種重采樣技術,可以簡單理解成是有放回地抽樣,默認是True,即采取有放回抽樣這種策略,這不就是bagging的思想么。
oob_score:袋外估計(out-of-bag),這個外是針對于bagging這個袋子而言的,我們知道,bagging采取的隨機抽樣的方式去建立樹模型,那么那些未被抽取到的樣本集,也就是未參與建立樹模型的數據集就是袋外數據集,我們就可以用這部分數據集去驗證模型效果,默認值為False。
對象/屬性
estimators_:打印輸出隨機森林中所有的樹。
classes_:輸出樣本集的類別。
n_classes_:輸出類別數量。
n_features_:特征數量。
n_outputs_:當模型被fit時的輸出維度。看看下圖來感受一些這個屬性。
feature_importances_:特征重要性。
oob_score_:袋外估計準確率得分,必須是oob_score參數選擇True的時候才可用。
oob_decision_function_:袋外估計對應的決策函數。
方法
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)在模型上的準確率。
你還可以看:
Sklearn參數詳解—GBDT
Sklearn參數詳解—Adaboost
總結
以上是生活随笔為你收集整理的SKlearn参数详解—随机森林的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微星 AM5 主板为海力士 A DIE
- 下一篇: 宏碁暗影骑士・擎游戏本上新:i5-135