隨機森林(Random Forest)演算法原理1

2021-09-13 12:45:25 字數 1959 閱讀 3349

整合學習(ensemble)思想是為了解決單個模型或者某一組引數的模型所固有的缺陷,從而整合起更多的模型,取長補短,避免侷限性。隨機森林就是整合學習思想下的產物,將許多棵決策樹整合成森林,並合起來用來**最終結果。

首先,介紹自助法(bootstrap),這個奇怪的名字**於文學作品 the adventures of baron munchausen(吹牛大王歷險記),這個作品中的乙個角色用提著自己鞋帶的方法把自己從湖底下提了上來。因此採用意譯的方式,叫做自助法。自助法顧名思義,是這樣一種方法:即從樣本自身中再生成很多可用的同等規模的新樣本,從自己中產生和自己類似的,所以叫做自助,即不借助其他樣本資料。自助法的具體含義如下:

如果我們有個大小為n的樣本,我們希望從中得到m個大小為n的樣本用來訓練。那麼我們可以這樣做:首先,在n個樣本裡隨機抽出乙個樣本x1,然後記下來,放回去,再抽出乙個x2,… ,這樣重複n次,即可得到n的新樣本,這個新樣本裡可能有重複的。重複m次,就得到了m個這樣的樣本。實際上就是乙個有放回的隨機抽樣問題。每乙個樣本在每一次抽的時候有同樣的概率(1/n)被抽中。

這個方法在樣本比較小的時候很有用,比如我們的樣本很小,但是我們希望留出一部分用來做驗證,那如果傳統方法做train-validation的分割的話,樣本就更小了,bias會更大,這是不希望的。而自助法不會降低訓練樣本的規模,又能留出驗證集(因為訓練集有重複的,但是這種重複又是隨機的),因此有一定的優勢。

至於自助法能留出多少驗證,或者說,m個樣本的每個新樣本裡比原來的樣本少了多少?可以這樣計算:每抽一次,任何乙個樣本沒抽中的概率為 (1-1/n),一共抽了n次,所以任何乙個樣本沒進入新樣本的概率為(1-1/n)^n。那麼從統計意義上來說,就意味著大概有(1-1/n)^n這麼大比例的樣本作為驗證集。當n→inf時,這個值大概是1/e,36.8%。以這些為驗證集的方式叫做包外估計(out of bag estimate)

bagging的名稱**於 (b**ootstrap **agg**regat**ing),意思是自助抽樣整合,這種方法將訓練集分成m個新的訓練集,然後在每個新訓練集上構建乙個模型,各自不相干,最後**時我們將這個m個模型的結果進行整合,得到最終結果。整合方式就是:分類問題用majority voting,回歸用均值。

bagging和boosting是整合學習兩大陣營,之後在總結兩者的異同。

決策樹是用樹的結構來構建分類模型,每個節點代表著乙個屬性,根據這個屬性的劃分,進入這個節點的兒子節點,直至葉子節點,每個葉子節點都表徵著一定的類別,從而達到分類的目的。

常用的決策樹有id4,c4.5,cart等。在生成樹的過程中,需要選擇用那個特徵進行剖分,一般來說,選取的原則是,分開後能盡可能地提公升純度,可以用資訊增益,增益率,以及基尼係數等指標來衡量。如果是一棵樹的話,為了避免過擬合,還要進行剪枝(prunning),取消那些可能會導致驗證集誤差上公升的節點。

隨機森林實際上是一種特殊的bagging方法,它將決策樹用作bagging中的模型。首先,用bootstrap方法生成m個訓練集,然後,對於每個訓練集,構造一顆決策樹,在節點找特徵進行**的時候,並不是對所有特徵找到能使得指標(如資訊增益)最大的,而是在特徵中隨機抽取一部分特徵,在抽到的特徵中間找到最優解,應用於節點,進行**。隨機森林的方法由於有了bagging,也就是整合的思想在,實際上相當於對於樣本和特徵都進行了取樣(如果把訓練資料看成矩陣,就像實際中常見的那樣,那麼就是乙個行和列都進行取樣的過程),所以可以避免過擬合。

prediction階段的方法就是bagging的策略,分類投票,回歸均值。

隨機森林隨機 三

2018年7月22日 陣雨 感冒發燒喉嚨疼,只因為一杯正常冰的奶蓋!以後得少喝加冰的東西了.前面說的是整合學習的兩種形式,這跟隨機森林有啥關係呢?隨機森林是bagging的乙個擴充套件變體.簡單的來說,當bagging演算法中的base learner為決策樹並在訓練決策樹的過程中加入隨機屬性選擇,...

隨機森林演算法

random forest是加州大學伯克利分校的breiman leo和adele cutler於2001年發表的 中提到的新的機器學習演算法,可以用來做分類,聚類,回歸,和生存分析,這裡只簡單介紹該演算法在分類上的應用。random forest 隨機森林 演算法是通過訓練多個決策樹,生成模型,然...

理解隨機森林

理解隨機森林 隨機森林利用隨機的方式將許多決策樹組合成乙個森林,每個決策樹在分類的時候投票決定測試樣本的最終類別。下面我們再詳細說一下隨機森林是如何構建的。隨機森林主要包括4個部分 隨機選擇樣本 隨機選擇特徵 構建決策樹 隨機森林投票分類。給定乙個訓練樣本集,數量為n,我們使用有放回取樣到n個樣本,...