1. 程式人生 > >十大經典預測算法七---隨機森林

十大經典預測算法七---隨機森林

分享圖片 構造 十大 就是 決策 inf bubuko str 集中

算法概述

  隨機森林,顧名思義就是由很多決策樹融合在一起的算法,它屬於Bagging框架的一種算法。

  隨機森林的“森林”,它的弱模型是由決策樹算法訓練的(CART算法),CART算法即能做回歸也能做分類,“隨機”是指構造的模型有一定的隨機性。

技術分享圖片

技術分享圖片

  每一顆決策樹模型的訓練是通過自助采樣法(Boostrap抽樣)抽出來的,所以每一個子模型的訓練樣本並不是完全相同的,每一個子模型都存在一些樣本不在該模型的訓練集中,那些沒有被該子模型抽中的樣本可作為這個子模型的測試集。

  每一顆決策樹模型在構建的時候並沒有使用所有的特征變量,而是隨機的從所有特征中抽取一個子集來訓練模型,這樣保證了子模型不但訓練樣本不完全一樣,連特征變量也不完全一樣,這樣就很好的保證了多個子模型的隨機性。

  所以隨機森林算法的隨機性主要體現在以下兩個方面:

  1、子模型的訓練樣本是隨機抽取的

  2、子模型的特征變量也是隨機抽取的

  隨機性的引入使得隨機森林模型不容易陷入過擬合,具有很好的抗噪能力。而且隨機性保證了各子模型間的多樣性,子模型間差異越大,模型融合起來的效果會越好,如下圖所示:

技術分享圖片

十大經典預測算法七---隨機森林