機器學習要點理解(四 隨機森林)

2021-10-03 18:18:10 字數 980 閱讀 2032

bagging思想,bootstrap aggregating,思想就是從總體樣本當中隨機取一部分樣本進行訓練,通過多次這樣的結果,進行投票獲取平均值作為結果輸出,這就極大可能的避免了不好的樣本資料,從而提高準確度。

隨機森林採用bagging思想,重複取樣,生成多棵樹。

1、資料集為n,隨機從資料集裡取樣n個(與資料集大小相同)訓練樣本,作為一棵樹訓練的資料集。

2、資料集特徵為m,隨機從m個特徵中選取m個特徵子集(m優點很多,訓練快,效果好,處理高維度特徵資料等等。

缺點是

其實,該缺失值填補過程類似於推薦系統中採用協同過濾進行評分**,先計算缺失特徵與其他特徵的相似度,再加權得到缺失值的估計,而隨機森林中計算相似度的方法(資料在決策樹中一步一步分類的路徑)乃其獨特之處。

在實際實現中,有兩種方法:

1、(na.roughfix)簡單粗暴,對於訓練集,同乙個class下的資料,如果是分類變數缺失,用眾數補上,如果是連續型變數缺失,用中位數補。

2、(rfimpute)這個方法計算量大,至於比方法一好壞?不好判斷。先用na.roughfix補上缺失值,然後構建森林並計算proximity matrix,再回頭看缺失值,如果是分類變數,則用沒有缺失的觀測例項的proximity中的權重進行投票。如果是連續型變數,則用proximity矩陣進行加權平均的方法補缺失值。然後迭代4-6次,這個補缺失值的思想和knn有些類似。

袋外資料oob(out of bag),bagging方法中bootstrap每次約有1/3的樣本不會出現在bootstrap所採集的樣本集合中,當然也就沒有參加決策樹的建立,把這1/3的資料稱為袋外資料oob(out of bag),它可以用於取代測試集誤差估計方法。

計算方法如下:

這已經經過證明是無偏估計的,所以在隨機森林演算法中不需要再進行交叉驗證或者單獨的測試集來獲取測試集誤差的無偏估計。

機器學習 隨機森林

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

機器學習 隨機森林

以下內容均為個人理解,如有錯誤,歡迎指出 如何生成隨機森林基學習器的訓練資料集 隨機 的含義 bagging整合學習的評測方法 隨機森林的引數 以下內容摘自周志華老師的 機器學習 隨機森林是bagging的乙個擴充套件變體,它在以決策樹為基學習器構建的bagging整合的基礎上,進一步在決策樹的訓練...

機器學習 隨機森林

以決策樹為基礎 隨機森林 決策樹的乙個主要缺點在於經常對訓練的資料過擬合。隨機森林是解決這個問題的一種方法。隨機森林的本質上是很多決策樹的集合,其中那個每棵樹都和其他樹略有不同。隨機森林背後砈思想史是,每棵樹的 都可能相對較好,但可能對部分書聚過擬合,如果我們構建很多樹,並且每棵樹都可以 的很好,但...