詳細解釋
隨機森林(Random Forest)是強大的集成學習算法,結合多棵決策樹的預測,通過Bagging和隨機特徵選擇降低過擬合,是表格數據的首選算法之一。
原理:
- Bagging集成:多棵樹並行訓練
- 自助採樣:每棵樹不同訓練集
- 隨機特徵:每個節點隨機特徵子集
- 投票/平均:整合多樹預測
特點:
- 降低過擬合:相比單棵決策樹
- 處理高維:自動特徵選擇
- 並行:高效訓練
- 穩定:預測方差小
- 無需縮放:對特徵縮放不敏感
優勢:
- 性能強:通常無需調參即好
- 不易過擬合:樹越多越穩定
- 內建驗證:OOB誤差估計
- 特徵重要性:Gini重要性
- 處理缺失:內建缺失值處理
參數:
- n_estimators:樹的數量(通常100+)
- max_depth:樹深度
- min_samples_split:分裂最小樣本
- max_features:特徵子集大小
- 通常默認即好,無需大量調參
應用:
- 分類迴歸:通用算法
- 特徵選擇:重要性排序
- 異常檢測:孤立森林
- 生產系統:穩定可靠
與梯度提升對比:
- 隨機森林:Bagging,並行,穩定
- 梯度提升:Boosting,串行,通常更強
- 各有優勢,可都嘗試
隨機森林是易用且強大的機器學習算法。
亦稱「Balanced Random Forest」。