算法初識

決策樹

弱分類算法:決策樹,神經網絡 

html

Bagging -vs- Boosting 

Bagging是減小variance,而Boosting是減小bias算法

  • Bagging:重採樣,取平均
  • Boosting:最小化損失函數

Bootstrap:自助採樣算法,有放回抽樣,用小樣本數據集估計總體的非參數方法(估計統計量)。網絡

Bagging:套袋法,並行化集成學習方法,自助採樣 --> 加權融合 --> 等權重投票  函數

 場景:分類任務(簡單投票法),迴歸任務(簡單平均法)性能

Boosting:提高法,串行化集成學習方法,訓練子集 --> 基分類器 --> 加權融合 --> 加權投票學習

 缺點:需預先知道弱學習算法的分類正確的下限spa

AdaBoost:Adaptive Boosting(Boosting進階版),子集選擇 --> (分錯)樣本權重計算 --> 分類器權重計算  htm

 優勢:自適應訓練基分類器,側重訓練分錯的樣本blog

關於二者的區別,詳見:http://www.javashuo.com/article/p-fjkcqlep-me.htmlget

幾種算法關係總結以下:

  • Bagging + 決策樹 = 隨機森林(RF)
  • AdaBoost + 決策樹 = 提高樹(Boosting Tree)
  • Gradient Boosting + 決策樹 = 梯度提高樹(GBDT)

GBDT以決策樹(CART)爲基學習器的GB算法,XGBoost擴展和改進GDBT,更快、準確率相對高。

隨機森林

 

梯度提高樹

 

XGBoost

 

以上幾種總結以下:

隨機森林RF:並行化集成學習方法,以決策樹爲基學習器構建Bagging的集成學習方法,在決策樹的訓練過程當中引入隨機屬性選擇。

 特色:樣本擾動+屬性擾動 ==> 基學習器多樣性 ==> 泛化性能提高

梯度提高樹:採用加法模型(即基函數的線性組合)與前向分佈算法,以決策樹爲基函數的提高方法

 特色:利用最速降低法,關鍵是利用損失函數的負梯度在當前模型的值

XGBoost:並行化集成學習方法

 特色:

相關文章
相關標籤/搜索