機器學習相關知識整理系列之二:Bagging及隨機森林
1. Bagging的策略
- 從樣本集中重採樣(有放回)選出\(n\)個樣本,定義子樣本集爲\(D\);
- 基於子樣本集\(D\),全部屬性上創建分類器,(ID3,C4.5,CART,SVM等);
- 重複以上步驟\(m\)步,即得到了\(m\)個分類器;
- 最後根據這\(m\)個分類器進行投票,決定輸入樣本屬於哪一類。
2. 隨機森林
隨機森林在Bagging基礎上作了修改:算法
- 從樣本中重複自抽樣(Bootstrap)選出\(n\)個樣本,定義子樣本集爲\(D\);
- 基於樣本集\(D\),從全部屬性中隨機選擇K個屬性(特徵),選擇最佳分割屬性做爲結點創建CART決策樹;
- 這\(m\)個CART組成一個隨機森林,經過投票表決結果,決定輸入樣本屬於哪一類。
3. 隨機森林/Bagging和決策樹關係
- 可使用決策樹做爲基本分類器
- 也可使用SVM、Logistics迴歸等分類器,由這些分類器組成的"總分類器",也叫隨機森林
4. 投票機制
4.1 簡單投票機制
- 一票否決
- 少數服從多數(有效多數,加權)
閾值表決學習
4.2 投票機制舉例
- 假定有N個用戶能夠爲X個電影投票(假定投票者不能給同一電影重複投票),投票有1,2,3,4,5星共五檔。
- 根據用戶投票對電影進行排序,本質任然爲分類問題,對於某個電影,有N個決策樹進行分類(1,2,3,4,5類)
投票方案:\[WR = \frac{v}{v+m}R + \frac{m}{v+m}C\]
- \(WR\):加權得分;
- \(R\):該電影的用戶投票的平均得分
- \(C\):全部電影的平均得分
- \(v\):該電影的投票人數
\(m\):排名前250名電影的最低投票數spa
5. 樣本不均衡的經常使用處理方法
假定樣本數目A類比B類多,且嚴重不平衡:設計
- A類欠採樣
- 隨機欠採樣
- A類分紅若干子集,分別與B類進入ML模型
- 基於聚類的A類分割
- B類過採樣
- B類數據合成
- 代價敏感學習
6. 隨機森林總結
- 在數據集上表現良好
- 在對缺失數據進行估計時,隨機森林是一個十分有效的方法。就算存在大量的數據缺失,隨機森林也能較好地保持精確性;
- 隨機森林算法能解決分類與迴歸兩種類型
- 可以處理很高維度的數據,而且不用作特徵選擇
- 容易作成並行化方法
- 在訓練完後,它可以給出哪些特徵比較重要
- 隨機森林的集成思想也能夠用在其餘分類器的設計中
- 隨機森林在解決迴歸問題時沒有在分類中表現的好,由於它並不能給出一個連續型的輸出。當進行迴歸時,隨機森林不可以做出超越訓練集數據範圍的預測,這可能致使在對某些還有特定噪聲的數據進行建模時出現過分擬合。
歡迎關注本站公眾號,獲取更多信息