整合學習3 隨機森林(RF)與 bagging

2021-10-07 09:53:03 字數 1916 閱讀 4219

隨機森林大家都不會陌生,相對於xgb來講,方法很簡單,沒有那麼多複雜的公式,其主要是一種思想——bagging,關於抽樣、統計的。隨機森林也是決策樹家族的一員,了解隨機森林也得從決策樹開始,感興趣的可以參考這篇文章 決策樹——id3/c4.5/cart演算法 以及 整合學習1——xgboost

為什麼要出現rf演算法?當然是因為決策樹演算法有很多缺點和不足:

決策樹演算法的缺點:

1)貪婪演算法,陷入區域性最優。

2)樹過深,容易過擬合。不能平衡方差與偏差,樹複雜了偏差小,但是方差大(資料對模型的影響),樹簡單了方差小,但是偏差大。

3)不夠穩定,資料出現微小變化樹就會改變,受到高方差的困擾。

4)不太適合處理大規模資料

不管決策樹如何優化和除錯,其模型本身過於簡單,必然會帶來諸多缺點,比如抗干擾能力、泛化能力等。從一般的模型角度分析,乙個模型誤差可以分解為偏差、方差和噪音,偏差是指模型期望值與真實資料之間的差異,刻畫了模型本身的擬合效能,方差是指模型結果與模型期望結果之間的差異,是相同大小的訓練集對模型學習效能的影響,體現了資料擾動的影響,偏差和方差直接影響了模型的效能,所以在不改變決策樹基本模型的基礎上有兩個主要方向,乙個是減小偏差為主(xgboost),乙個是減小方差為主(rf)。

bagging(bootstrap aggregating)是bootstrap 與aggregating兩者的簡稱,aggregating我們知道是一種整合思想,將多個弱分類器集合起來組成乙個強分類器,那麼各個弱分類器之間如何訓練呢?這裡就用到了bootstrap 思想:

bootstrap 是一種統計學上的估計方法,對觀測資料進行再抽樣,進而實現對總體資料的分布特性進行推斷。因為我們一般獲取不到整體樣本,單獨用觀測樣本,對於整體資料分布來說並不準確,所以獲取相應的引數,均值、方差、中位數等等時,會有誤差,通過這種方式會相對準確。

bootstrap實現步驟:

1)在原有的樣本中通過有放回的抽樣,抽取一定數量的樣本。

2)基於抽到的樣本,我們獲取相應的引數,比如 α

\alpha

α3)重複上述步驟n次,一般大於1000次,獲取n個α

\alpha

α4)最後我們可以計算被估計量的均值,方差等,作為樣本的統計量。

簡單來說就是:我們獲取到的資料是不完全的,是整體資料的一部分,如何可以近似得到整體資料評估的引數,用的就是多次有放回的抽樣思想。比如我們有n個樣本,我們有放回的抽樣n次,得到n個樣本,評估一次引數α

\alpha

α,重複這樣的操作1000次,然後取平均,得到的近似結果α

^\hat

α^那麼應用在隨機森林演算法中也很明顯了,每建立一棵決策樹,就通過bootstrap方法抽取樣本建模,多次建模後採用aggregating。

rf有兩個關注點:

1)在訓練時,隨機森林每次有放回的隨機選取一部分學習樣本,bootstrap,儘管每棵樹都有較高的方差,但是整體而言資料的方差較小,同時偏差不會增加,這也是bootstrap的統計學意義,近似得到準確的資料分布。在測試時平均每個**器的**值,這種方法,稱為bagging(bootstrap aggregating)

bagging(bootstrap aggregating)可以減小統計學方差。通過多次有放回的隨機取樣,可以近似得出資料的分布,包括均值、方差等。bagging方法從另乙個角度有點像交叉驗證,一部分訓練另一部分(out of bagging,oob)測試,所以bagging方法自身就能計算測試誤差。

2)在節點**的時候,選取樣本的部分特徵計算**標準(列取樣),一般設定為sqrt(x)個,從泛化能力上講,這是一種防止過擬合的手段,減小方差(資料對模型的影響)。

所以,隨機森林的特點,泛化能力較強,不容易過擬合

整合學習1——xgboost

整合學習2——xgboost本身的特點,及xgb與gbdt、lgb、rf的區別於聯絡

整合學習 隨機森林

隨機森林 random forest,簡稱rf 是bagging的乙個擴充套件變體。bagging在1996年由beriman提出,作為並行式整合學習方法中最著名的代表,利用自助取樣法。可取樣出t個含m個訓練樣本的取樣集,然後基於每個取樣集訓練出乙個基學習器,再將這些基學習器進行結合。這就是bagg...

整合學習 隨機森林

bagging就是bootstrapaggregating,自舉匯聚法,亦稱為裝袋法。與boosting的不同 個人理解 由於bagging的每個分類器是同階的,則有 e d e 1n i 1ne di e di 偏差.v ar v ar 1 n i 1nva r di 1 nvar di 方 差e...

整合學習 隨機森林

用多個模型來解決乙個問題,就是整合 怎麼樣得到乙個好的整合?需要個體盡可能的精確,而且它們的差異性,多樣性盡可能的大 按整合中個體的生成方式來說,可以分為兩大方法 一棵樹是決策樹,多棵樹是隨機森林,解決了決策樹泛化能力弱的缺點。因為決策樹是一棵樹,它是有乙個決策的可能性,如果是多棵樹,每棵樹都有乙個...