Adaboost,GBDT,Xgboost

集成學習就是構建多個弱分類器對數據集進行預測,然後利用某種策略將多個分類器的結果集成起來,作爲最終的預測結果。
集成學習根據各個弱分類器之間有無依賴關係又分爲bagging和boosting兩大流派,如果各個弱分類器之間沒有依賴關係,可以各自並行,就屬於Bagging流派,典型代表爲隨機深林;如果各個分類器之間有依賴關係,而且必須串行,就屬於Boosting流派,典型代表爲Adaboost,GBDT,Xgboost。下面詳細介紹這些集成器的用法。
Adaboost,自適應增強,前一個被分錯的樣本的權重會在下一輪的新的弱分類器中權重得到加強而被正確分類的樣本的權重則會被削弱,直到達到某個預定的足夠小的錯誤率或者說達到了指定的迭代次數。
ADA迭代算法大致可以分爲三步:
1)初始化訓練權值的分佈,如果有N個樣本,則每一個樣本的初始權值爲1/N;
2)訓練弱分類器;如果樣本被分錯,則在構造下一個訓練集中,它的權值就會被增加;如果樣本被正確分類,則在下一輪的訓練集中,該樣本的權值就會被下降。然後權值更新後的樣本集就會被用於下一個分類器。
3)將各個弱分類器組合成一個強分類器;加大分類準確率較高的弱分類器的權重,減小準確率較低的弱分類器的權重。
GBDT,GBDT與Adaboost不同,其每一次的訓練都是爲了減少上一輪訓練的殘差,進而在殘差減少的方向上建立新的模型。
殘差指的是實際觀察值與估計值(擬合值)之間的差。
XGBoost

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章