隨機森林演算法梳理

2021-09-16 14:18:54 字數 2494 閱讀 4773

整合學習通過構建並結合多個學習器來完成學習任務。即先產生一組個體學習器,再用某種策略將它們結合起來。整合學習通過將多個學習器進行結合,常可獲得比單一學習器顯著優越的泛化效能。

根據個體學習器的生成方式,目前整合學習方法大致可分為兩大類:即個體學習器間存在強依賴關係、必須序列化生成的序列化方法,以及個體學習器間不存在強依賴關係、可同時生成的並行化方法。前者的代表是boosting,後者的代表是bagging和隨機森林。

整合學習構建的多個學習器都是個體學習器,同種型別的又被稱為基學習器,不同型別的常稱為元件學習器或直接稱為個體學習器。

1.平均法

對數值型輸出h(x)∈r,最常見的結合策略是使用平均法。

簡單平均法

加權平均法

其中wi是個體學習器hi的權重,通常要求wi>=0,σwi=1。

2.投票法

絕對多數投票法

即若某標記得票過半數,則**為該標記;否則拒絕**。

相對多數投票法

即**為得票最多的標記,若同時有多個標記獲最高票,則從中隨機選取

乙個。加權投票法

3.學習法

當訓練資料很多時,一種更為強大的結合策略是使用"學習法",即通過另乙個學習器來進行結合。stacking是學習法的典型代表。stacking先從初始資料集中訓練出初級學習器,然後「生成」乙個新資料集用於訓練次級學習器。在新資料集中,初級學習器的輸出被當做樣例輸入特徵,初始樣本的標記仍被當做樣例標記。

隨機森林是bagging的乙個擴充套件變體。rf在以決策樹為基學習器構建bagging整合的基礎上,進一步在決策樹的訓練過程中引入了隨機屬性選擇。傳統決策樹在選擇劃分屬性時是在當前節點的屬性集合(假定有d個屬性)中選擇乙個最優屬性;而在rf中,對基決策樹的每個節點,先從該結點的屬性集合中隨機選擇乙個包含k個屬性的子集合,然後再從這個子集中選擇乙個最優屬性用於劃分。這裡的引數k控制了隨機性的引入程度:若令k=d,則基決策樹的構建和傳統決策樹沒有區別。若令k=1,則是隨機選擇乙個屬性。一般情況下推薦k取logd。

1.extra trees

2.totally random trees embedding

3.isolation forest

rf的優點:

1 訓練可以高度並行化,對於大資料時代的大樣本訓練速度有優勢。個人覺得這是的最主要的優點。

2. 由於可以隨機選擇決策樹節點劃分特徵,這樣在樣本特徵維度很高的時候,仍然能高效的訓練模型。

3.在訓練後,可以給出各個特徵對於輸出的重要性

4. 由於採用了隨機取樣,訓練出的模型的方差小,泛化能力強。

5. 相對於boosting系列的adaboost和gbdt, rf實現比較簡單。

6.對部分特徵缺失不敏感。

rf缺點:

取值劃分比較多的特徵容易對rf的決策產生更大的影響,從而影響擬合的模型的效果

1.max_features

決策樹劃分時考慮的最大特徵數max_features:可以使用很多種型別的值,預設是」none」,意味著劃分時考慮所有的特徵數

2.max_depth

決策樹最大深度max_depth, 預設可以不輸入,如果不輸入的話,決策樹在建立子樹的時候不會限制子樹的深度。一般來說,資料少或者特徵少的時候可以不管這個值。如果模型樣本量多,特徵也多的情況下,推薦限制這個最大深度,具體的取值取決於資料的分布

3.min_samples_split

內部節點再劃分所需最小樣本數min_samples_split: 這個值限制了子樹繼續劃分的條件

4.min_samples_leaf

葉子節點最少樣本數min_samples_leaf: 這個值限制了葉子節點最少的樣本數

5.min_weight_fraction_leaf

這個值限制了葉子節點所有樣本權重和的最小值,如果小於這個值,則會和兄弟節點一起被剪枝

6.max_leaf_nodes

最大葉子節點數,通過限制最大葉子節點數,可以防止過擬合,預設是」none」,即不限制最大的葉子節點數

7.min_impurity_split

節點劃分最小不純度,這個值限制了決策樹的增長,如果某節點的不純度(基於基尼係數,均方差)小於這個閾值,則該節點不再生成子節點。即為葉子節點

易於處理高維特徵的場景

隨機森林演算法梳理

構建並結合多個學習器來完成學習任務,有時也被稱為多分類器系統 multi classifier system 基於委員會的學習 cjommottee based learning 根據個體學習器的生成方式分為 個體學習器間存在強依賴關係 必須序列生成的序列方法。如 boosting 個體學習器間不存...

隨機森林演算法梳理

隨機森林演算法梳理 整合學習,由多個基學習器組成,核心在於各學習器的多樣性和準確性。大致分為blending bagging boosting。bagging演算法是通過bootstrap重取樣生成了多棵決策樹,然後根據投票 分類 或求平均 回歸 來給出最終輸出值,側重於減小方差 如果xi方差為xi...

隨機森林演算法梳理

1.整合學習的概念 整合學習通過構建並結合多個學習器來完成學習任務,有時也被成為多分類器系統,基於委員會的學習。整合學習是通過將多個學習器進行結合,常可獲得比單一學習器顯著優越的泛化的效能。如何去提高整合學習的效能,最好是個體學習器應該 好而不同 即個體學習器要有一定準確性,不能太壞,也不能太好。否...