整合學習之bagging與隨機森林
1 Star2 Stars3 Stars4 Stars5 Stars 給文章打分!
Loading...

Bagging 演算法原理和Boosting 不同,它的弱學習器之間沒有依賴關係,可以並行生成,原理圖如下:
這裡寫圖片描述

從圖中可以看出,Bagging的個體弱學習器的訓練集是通過隨機取樣得到的,通過T次的隨機取樣,我們就可以得到T個取樣集,對於這T個取樣集,我們可以分別獨立的訓練出T個弱學習器,再對這T個弱學習器通過集合策略來的到最終的強學習器。
隨機取樣:
這裡採用的是自助取樣法,即對於m個樣本的原始訓練集,我們每次先隨機取樣一個樣本放入取樣集,接著把樣本放回,也就是說下次取樣時的樣本仍有可能被採集到,這裡取樣m次,最終可以得到m個樣本的取樣集,由於是隨機取樣,這樣每次的取樣集是和原始訓練集不同的,和其他取樣集也是不同的,這樣得到多個不同的弱學習器。在每輪隨機取樣中,訓練集大約有36.8%的資料沒有被取樣集採中。對於這部分36.8%的沒有被取樣到的資料,我們稱之為“包外估計”,這些資料沒有參與訓練集模型的擬合,因此可以用來檢測模型的泛化能力。

隨機森林是Bagging的一個特化進階版,所謂的特化是因為隨機森林的弱學習器是決策樹,所謂的進階是隨機森林在Bagging的樣本隨機取樣的基礎上,又加上了特徵的隨機選擇,其基本思想沒有脫離Bagging的範疇。
整合學習的結合策略:
1、平均法
對於數值類的迴歸預測問題,通常使用的結合策略是平均法,也就是說對於若干弱學習器的輸出進行平均得到最終的預測輸出。
最簡單的平均是算術平均,也就是說最終的預測是
這裡寫圖片描述
如果每個個體學習器有一個權重w,則最終的預測是
這裡寫圖片描述
其中wi是個體學習器的權重,通常有
這裡寫圖片描述
2、投票法
對於分類問題的預測,我們通常使用的是投票法。假設我們的預測類別是
這裡寫圖片描述,對於任意一個預測樣本x,我們的T個弱學習器的預測結果分別是
這裡寫圖片描述
最簡單的投票法是相對多數投票法,也就是我們常說的少數服從多數,也就是T個弱學習器的對樣本x的預測結果中,數量最多的類別
為最終的分類類別。如果不止一個類別獲得最高票,則隨機選擇一個做最終類別。
這裡寫圖片描述
稍微複雜的投票法是絕對多數投票法,也就是我們常說的要票過半數。在相對多數投票法的基礎上,不光要求獲得最高票,還要求票過半數。否則會拒絕預測。
這裡寫圖片描述
更加複雜的是加權投票法,和加權平均法一樣,每個弱學習器的分類票數要乘以一個權重,最終將各個類別的加權票數求和,最大的值對應的類別為最終類別。
這裡寫圖片描述
隨機森林
隨機森林(Random Forest ,簡稱RF) 是Bagging的一個
擴充套件變體.盯在以決策樹為基學習器構建Bagging 整合的基礎上,進一步在決策樹的訓練過程中引入了隨機屬性選擇.具體來說,傳統決策樹在選擇劃分屬性時是在當前結點的屬性集合(假定有d 個屬性)中選擇一個最優屬性;而在RF 中,對基決策樹的每個結點,先從該結點的屬性集合中隨機選擇一個包含k個屬性的子集,然後再從這個子集中選擇一個最優屬性用於劃分。
這裡的引數k 控制了隨機性的引入程度;若令k = d,則基決策樹的構建與傳統決策樹相同;若令k = 1,則是隨機選擇一個屬性用於劃分; 一般情況下,推薦值k = log2 d。
隨機森林簡單、容易實現、計算開銷小,令人驚奇的是, 它在很多現實任務中展現出強大的效能,被譽為”代表整合學習技術水平的方法”。
可以看出,隨機森林對Bagging 只做了小改動, 但是與Bagging 中基學習器的”多樣性”僅通過樣本擾動(通過對初始訓練集取樣)而來不同,隨機森林中基學習器的多樣性不僅來自樣本擾動,還來自屬性擾動,這就使得最終整合的泛化效能可通過個體學習器之間差異度的增加而進一步提升。

相關文章

程式語言 最新文章