集成學習實戰——Boosting(GBDT,Adaboost,XGBoost)


集成學習實踐部分也分成三塊來講解:

sklearn官方文檔:http://scikit-learn.org/stable/modules/ensemble.html#ensemble

1、GBDT

GradientBoostingClassifier:http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.GradientBoostingClassifier.html#sklearn.ensemble.GradientBoostingClassifier

GradientBoostingRegressor:http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.GradientBoostingRegressor.html#sklearn.ensemble.GradientBoostingRegressor

參數說明:

1、loss:損失函數的類型:分類算法中有對數似然損失函數"deviance"和指數損失函數"exponential"兩者輸入選擇,指數有點類似Adaboost

    對於回歸模型,有均方差"ls", 絕對損失"lad", Huber損失"huber"和分位數損失“quantile”。

2、learning_rate:學習率,也就是每個基學習器前面的權重

3、n_estimators:基學習器數量

4、subsample:采樣,就是正則化因子里講過,這里是不放回的采樣,取值在0,1之間 

若學習期的參數:這里以決策樹為例

5、max_features:划分是選擇的最多特征數

6、等等

2、XGBoost

 http://xgboost.apachecn.org/cn/latest/

參數介紹參考:http://blog.csdn.net/wzmsltw/article/details/50994481

 

 

3、Adaboost

在sklearn中Adaboost庫分成兩個,分別是分類和回歸AdaBoostClassifier和AdaBoostRegressor

對於集成學習我們參數部分也分成框架跟基學習器的參數兩種

1、框架部分:

AdaBoostClassifier:http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.AdaBoostClassifier.html#sklearn.ensemble.AdaBoostClassifier

 AdaBoostRegressor:http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.AdaBoostRegressor.html#sklearn.ensemble.AdaBoostRegressor

參數說明:

base_estimator:弱學習器是什么,default=DecisionTreeClassifier,

algorithm:這個參數只有AdaBoostClassifier有。主要原因是scikit-learn實現了兩種Adaboost分類算法,SAMME和SAMME.R。兩者的主要區別是弱學習器權重的度量,SAMME使用了和我們的原理篇里二元分類Adaboost算法的擴展,即用對樣本集分類效果作為弱學習器權重,而SAMME.R使用了對樣本集分類的預測概率大小來作為弱學習器權重。由於SAMME.R使用了概率度量的連續值,迭代一般比SAMME快,因此AdaBoostClassifier的默認算法algorithm的值也是SAMME.R。我們一般使用默認的SAMME.R就夠了,但是要注意的是使用了SAMME.R, 則弱分類學習器參數base_estimator必須限制使用支持概率預測的分類器。SAMME算法則沒有這個限制。

loss:只有AdaBoostRegressor有,代表使用的損失是那種損失

n_estimators:弱學習器個數

learning_rate:學習率,也就是我們前面理論部分有講到正則化里面的參數

 

2、基學習器

基學習器可選的有很多種,這里舉例CART樹

與決策樹的參數一樣,可選擇的有很多,更多參考決策樹那篇

 

3、實戰

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM