隨機森林 Boost和GBDT

2021-07-22 13:06:30 字數 931 閱讀 4634

若干決策樹組成,每乙個決策樹很小,只有問題屬性中的一小個子集,然後將所以小的決策樹組合起來,用投票法決定分類。

* 在資料集上表現良好

* 在當前的很多資料集上,相對其他演算法有著很大的優勢

* 它能夠處理很高維度(feature很多)的資料,並且不用做特徵選擇(why?)

* 在訓練完後,它能夠給出哪些feature比較重要

* 在建立隨機森林的時候,對generlization error使用的是無偏估計(why?)

* 訓練速度快

* 在訓練過程中,能夠檢測到feature間的互相影響(怎樣給出?待研究)

* 容易做成並行化方法

* 實現比較簡單

最初為每個樣例賦予相同的權重,通過迭代的方式,對每一次分類錯誤的樣例給予更高的權重。進行n次迭代,得到n個分類器,再將它們組合起來(加權或投票),最終得到結果

boost的意思表示gbdt也需要迭代,每一次的計算是為了減少上一次的殘差(residual),而為了消除殘差,我們可以在殘差減少的梯度(gradient)方向上建立乙個新的模型。所以說,在gradient boost中,每個新的模型的簡歷是為了使得之前模型的殘差往梯度方向減少,與傳統boost對正確、錯誤的樣本進行加權有著很大的區別。

注:gbdt中的樹,都是回歸樹,不是分類樹。

**)

gbdt的核心就在於,每一棵樹學的是之前所有樹結論和的殘差,這個殘差就是乙個加**值後能得真實值的累加量。比如a的真實年齡是18歲,但第一棵樹的**年齡是12歲,差了6歲,即殘差為6歲。那麼在第二棵樹里我們把a的年齡設為6歲去學習,如果第二棵樹真的能把a分到6歲的葉子節點,那累加兩棵樹的結論就是a的真實年齡;如果第二棵樹的結論是5歲,則a仍然存在1歲的殘差,第三棵樹裡a的年齡就變成1歲,繼續學。這就是gradient boosting在gbdt中的意義。

殘差向量就是全域性最優方向,就是gradient

隨機森林和gbdt結合 隨機森林和GBDT的學習

前言 提到森林,就不得不聯想到樹,因為正是一棵棵的樹構成了龐大的森林,而在本篇文章中的 樹 指的就是decision tree 決策樹。隨機森林就是一棵棵決策樹的組合,也就是說隨機森林 boosting 決策樹,這樣就好理解多了吧,再來說說gbdt,gbdt全稱是gradient boosting ...

隨機森林和GBDT進行比較

4,gbdt和隨機森林的相同點 1 都是由多棵樹組成 2 最終的結果都是由多棵樹一起決定 5,gbdt和隨機森林的不同點 1 組成隨機森林的樹可以是分類樹,也可以是回歸樹 而gbdt只由回歸樹組成 2 組成隨機森林的樹可以並行生成 而gbdt只能是序列生成 3 對於最終的輸出結果而言,隨機森林採用多...

隨機森林(RF)與GBDT的異同

相同點 好吧,其實相同點不太好說,如果非要說的話,那就是它們都是由多棵樹組成,最終結果由這多棵樹一起決定 其實中間的細節還是不一樣 1 都是由多棵樹組成 2 最終的結果都是由多棵樹一起決定 不同點 1 從整合學習來說,rf屬於的bagging 稍微有點改變,增加了列抽樣 而gbdt屬於boostin...