機器學習——Bagging與隨機森林算法及其變種

Bagging算法: 
  凡解:給定M個數據集,有放回的隨機抽取M個數據,假設如此抽取3組,3組數據一定是有重復的,所以先去重。去重后得到3組數據,每組數據量分別是s1,s2,s3,然后三組分別訓練組合成一個強模型。如下圖:

 

 隨機森林算法

  一般用于大規模數據,百萬級以上的。

  在Bagging算法的基礎上,如上面的解釋,在去重后得到三組數據,那么再隨機抽取三個特征屬性,選擇最佳分割屬性作為節點來創建決策樹??梢運凳?/p>

隨機森林=決策樹+Bagging
 如下圖

RF(隨機森林)的變種:

  ExtraTree算法

  凡解:和隨機森林的原理基本一樣。主要差別點如下

①隨機森林是在含有m個數據的原數據集上有放回的抽取m個數據,而ExtraTree算法是直接用原數據集訓練。

②隨機森林在選擇劃分特征點的時候會和傳統決策樹一樣,會基于信息增益、信息增益率、基尼系數、均方差等原則來選擇最優特征值;而ExtraTree會隨機的選擇一個特征值來劃分決策樹。

  TRTE算法

  不重要,了解一下即可

  官解:TRTE是一種非監督的數據轉化方式。對特征屬性重新編碼,將低維的數據集映射到高維,從而讓映射到高維的數據更好的應用于分類回歸模型。

   劃分標準為方差

  看例子吧直接:

  

 

 

  IForest

  IForest是一種異常點檢測算法,使用類似RF的方式來檢測異常點

   此算法比較坑,適應性不強。

  1.在隨機采樣的過程中,一般只需要少量數據即可;

  •2.在進行決策樹構建過程中,IForest算法會隨機選擇一個劃分特征,并對劃分特征隨機選擇一個劃分閾值;

  •3.IForest算法構建的決策樹一般深度max_depth是比較小的。

  此算法可以用,但此算法連創作者本人也無法完整的解釋原理。

RF(隨機森林)的主要優點:

●1.訓練可以并行化,對于大規模樣本的訓練具有速度的優勢;

●2.由于進行隨機選擇決策樹劃分特征列表,這樣在樣本維度比較高的時候,仍然具有比較高的訓練性能;

●3.可以給出各個特征的重要性列表;
●4.由于存在隨機抽樣,訓練出來的模型方差小,泛化能力強;
●5. RF實現簡單;
●6.對于部分特征的缺失不敏感。
RF的主要缺點:
●1.在某些噪音比較大的特征上(數據特別異常情況),RF模型容易陷入過擬合;
●2.取值比較多的劃分特征對RF的決策會產生更大的影響,從而有可能影響模型的
效果。

 隨機樹主要參數,劃線部分為主要調整的參數
posted @ 2020-01-01 14:00  明月池  閱讀(...)  評論(...編輯  收藏