spark 機器學習 隨機森林 原理 一

2022-09-02 17:30:07 字數 2123 閱讀 4913

1.什麼是隨機森林

顧名思義,是用隨機的方式建立乙個森林,森林裡面有很多的決策樹組成,隨機森林的每一棵決 策樹之間是沒有關聯的。在得到森林之後,當有乙個新的輸入樣本進入的時候,就讓森林中的每一棵決策樹分別進行一下判斷,看看這個樣本應該屬於哪一類(對於分類演算法),然後看看哪一 類被選擇最多,就**這個樣本為那一類。

我們可以這樣比喻隨機森林演算法:每一棵決策樹就是乙個精通於某乙個窄領域的專家(因為我們 從m個特徵中選擇m個讓每一棵決策樹進行行學習),這樣在隨機森林中就有了了很多個精通不不同領 域的專家,對乙個新的問題(新的輸入資料),可以用不不同的角度去看待它,最終由各個專家, 投票得到結果

2.bootstraping(隨機且有放回地抽取)

leo breiman於2023年提出的bagging(又稱bootstrap aggregation,引導聚集)是最基本的整合技術之一。bagging基於統計學中的bootstraping(自助法),該方法使得評估許多複雜模型的統計資料更可行。

2.1bootstrap方法的流程如下:假設有尺寸為n的樣本x。我們可以從該樣本中有放回地隨機均勻抽取n個樣本,以建立乙個新樣本。換句話說,我們從尺寸為n的原樣本中隨機選擇乙個元素,並重複此過程n次。選中所有元素的可能性是一樣的,因此每個元素被抽中的概率均為1/n。

2.2假設我們從乙個袋子中抽球,每次抽乙個。在每一步中,將選中的球放回袋子,這樣下一次抽取是等概率的,即,從同樣數量的n個球中抽取。注意,因為我們把球放回了,新樣本中可能有重複的球。讓我們把這個新樣本稱為x1。

重複這一過程m次,我們建立m個bootstrap樣本x1,……,xm。最後,我們有了足夠數量的樣本,可以計算原始分布的多種統計資料。

理解了bootstrap概念之後,我們來介紹bagging。

假設我們有乙個訓練集x。我們使用bootstrap生成樣本x1, …, xm。現在,我們在每個bootstrap樣本上分別訓練分類器ai(x)。最終分類器將對所有這些單獨的分類器的輸出取均值。在分類情形下,該技術對應投票(voting):

4.袋外誤差(oobe)

我們知道,在構建每棵樹時,我們對訓練集使用了不同的bootstrap sample(隨機且有放回地抽取)。所以對於每棵樹而言(假設對於第k棵樹),大約有1/3的訓練例項沒有參與第k棵樹的生成,它們稱為第k棵樹的oob樣本。

而這樣的取樣特點就允許我們進行oob估計,它的計算方式如下:

1對每個樣本,計算它作為oob樣本的樹對它的分類情況(約1/3的樹);

2然後以簡單多數投票作為該樣本的分類結果;

3最後用誤分個數佔樣本總數的比率作為隨機森林的oob誤分率。

示意圖上方為原始資料集。我們將其分為訓練集(左)和測試集(右)。在測試集上,我們繪製一副網格,完美地實施了分類。現在,我們應用同一副網格於測試集,以估計分類的正確率。我們可以看到,分類器在4個未曾在訓練中使用的資料點上給出了錯誤的答案。而測試集中共有15個資料點,這15個資料點未在訓練中使用。因此,我們的分類器的精確度為11/15 * 100% = 73.33%.

總結一下,每個基礎演算法在約63%的原始樣本上訓練。該演算法可以在剩下的約37%的樣本上驗證。袋外估計不過是基礎演算法在訓練過程中留置出來的約37%的輸入上的平均估計。

5.隨機森林流程

5.1設樣本數等於n,特徵維度數等於d。

5.2選擇整合中單個模型的數目m。

5.3對於每個模型m,選擇特徵數dm < d。所有模型使用相同的dm值。

5.4對每個模型m,通過在整個d特徵集合上隨機選擇dm個特徵建立乙個訓練集。

5.5訓練每個模型。

5.6通過組合m中的所有模型的結果,應用所得整合模型於新輸入。

隨機森林演算法原理 機器學習演算法 隨機森林

隨機森林是一種通用的機器學習方法,能夠處理回歸和分類問題。它還負責資料降維 缺失值處理 離群值處理以及資料分析的其他步驟。它是一種整合學習方法,將一組一般的模型組合成乙個強大的模型 我們通過適用隨機的方式從資料中抽取樣本和特徵值,訓練多個不同的決策樹,形成森林。為了根據屬性對新物件進行分類,每個數都...

機器學習 隨機森林原理及應用

隨機森林是一種整合學習的方法,它的最終結果取決於多課決策樹的投票結果。對於分類問題,直觀來講就是對乙個資料集合構造很多棵決策樹,然後對於新樣本每一棵決策樹都會輸出乙個結果,最後選擇多棵決策樹中輸出類別最多的結果作為最終的輸出結果。這也就是隨機森林中森林的含義。這也是隨機森林最重要的一點,隨機森林的隨...

機器學習 隨機森林

opencv包含隨機森林 random forest 類,隨機森林可以通過收集很多樹的子節點對各個類別的投票,然後選擇獲得最多投票的類別作為判斷結果。通過計算 森林 的所有子節點上的值的平均值來解決回歸問題。隨機森林包含隨機選擇的一些決策樹。隨機森林建立時的基本子系統也是決策樹,在建立決策樹時會一直...