---
title: "隨機森林（Random Forest）"
slug: random-forest
language: zh-TW
source: https://aiterms.tw/terms/random-forest
updated_at: 2026-07-29
tags: [機器學習, 模型訓練, 統計方法, 特徵工程]
ipas_term: false
---

# 隨機森林（Random Forest）

> **你做分類題時，會不會覺得只靠一棵決策樹有點像只聽一個人的意見？**
>
> 你可以把隨機森林想成很多棵樹一起投票，單棵樹可能會看錯，但整體通常更穩。
> 它的重點是用多個弱一點的判斷器，組成一個比較不容易翻車的模型。
>
> 你可以把它想成一個把抽象概念拉回日常判斷的提示，先知道它解決什麼問題，再看技術細節。

### 容易混淆
> **隨機森林 vs 決策樹**
> 決策樹是一棵樹自己做判斷。
> 隨機森林是很多棵樹一起投票。
> 最關鍵的區別：一個單打獨鬥，一個集體決策。
>
> **隨機森林 vs 提升算法**
> 隨機森林通常是平行訓練多棵樹，再投票。
> 提升算法是前一個弱模型修正下一個弱模型的錯誤。
> 最關鍵的區別：一個平行整合，一個逐步修正。
>
> **隨機森林 vs 裝袋法**
> 裝袋法是用自助抽樣把多個模型訓練出來。
> 隨機森林是在裝袋的基礎上，再加入特徵隨機抽樣。
> 最關鍵的區別：隨機森林比一般裝袋多了特徵隨機性。

### 記住這句就好
> 單棵樹可能偏，很多棵樹一起投票就穩一點。

### 實際案例
> **信用風險判斷**
> 金融單位要判斷申請人是否可能違約，隨機森林常能比單棵樹更穩定。
> 因為它不太容易被單一特徵帶偏。
>
> **醫療分類**
> 當你要把病歷特徵分類成不同風險等級時，隨機森林常能提供不錯的基線表現。
> 對資料表格型任務來說，它常是很實用的起點。

### 算法與應用
> 隨機森林會對訓練資料做自助抽樣，讓每棵樹看到不同子集。
> 在每個分裂節點，它也只看部分特徵，這能增加樹之間的差異。
> 最後用分類投票或回歸平均得到結果，通常比單棵樹更穩。

### 中英對照與常見說法

| 說法 | 出現場合 |
| --- | --- |
| 隨機森林 | 台灣正式用語 |
| 随机森林 | 簡體寫法 |
| Random Forest | 英文原名 |
| RF | 縮寫 |

### 兩層隨機性

> 隨機森林是**很多棵決策樹的集成**，靠兩層隨機讓每棵樹長得不一樣：
>
> **第一層，資料隨機（bagging）。** 每棵樹用有放回抽樣抽出一份訓練資料，所以每棵樹看到的樣本不同。
>
> **第二層，特徵隨機。** 每次要分裂節點時，只從隨機挑出的一部分特徵裡選最好的（分類任務常見是總特徵數的平方根）。這一層是隨機森林跟一般 bagging 的關鍵差別。
>
> 沒有第二層的話，如果有一個特別強的特徵，每棵樹都會先拿它來分，所有樹長得幾乎一樣，集成就失去意義。**特徵隨機的目的就是讓樹之間去相關。**
>
> 最後分類用投票、迴歸取平均。

### 為什麼它是很好的預設選擇

| 優點 | 說明 |
| --- | --- |
| 幾乎不用調參 | 樹的數量給夠就好，其他參數用預設值通常表現就不差 |
| 不用標準化特徵 | 樹是比大小，不在意尺度 |
| 能處理混合型態 | 數值與類別特徵都能吃 |
| 對離群值穩健 | 單一極端值只影響少數幾棵樹 |
| 不容易過度擬合 | 樹越多越穩定，不會像單棵樹那樣爆掉 |
| 自帶驗證 | 袋外估計（OOB）用每棵樹沒抽到的樣本評估，不用另外切驗證集 |

> **樹的數量越多越好，只是報酬遞減。** 它不像提升法那樣加太多樹會過度擬合，加樹只是變慢。實務上幾百棵通常就飽和了。

### 跟梯度提升樹的差別，以及一個重要陷阱

> **隨機森林是平行的**：每棵樹獨立訓練，互不影響，最後投票。**梯度提升樹是串行的**：每棵樹去修正前面所有樹的殘差。
>
> 一般來說梯度提升樹（XGBoost、LightGBM）調好之後準確度更高，但對參數敏感、容易過度擬合、也比較難調。隨機森林則是「開箱就有八成分數」的選擇。
>
> <strong>特徵重要度有陷阱。</strong>內建的重要度（基於不純度下降）會**偏向高基數的特徵**：唯一值很多的欄位（例如 ID、時間戳）即使完全沒有預測力，也可能拿到很高的重要度分數。要看可信的重要度，改用排列重要度（permutation importance）或 SHAP，並且一定要在驗證集上算。

### 情境判斷
> **Q1（直覺題）：** 你要做表格型資料的分類，想要一個穩定基線，先考慮什麼？
>
> → 先考慮隨機森林，因為它通常比單棵決策樹更穩。
>
> **Q2（判斷題）：** 如果你很在意模型可解釋性，隨機森林一定比決策樹更適合嗎？
>
> → 不一定，因為隨機森林通常更難直觀解讀，若你要很清楚的規則，單棵樹反而更好。

### 常見問題
> **Q：隨機森林會不會過擬合？**
> 會有機會，但通常比單棵樹不容易過擬合。
>
> **Q：它適合影像或文字嗎？**
> 可以用，但在高維、非結構化資料上，深度學習通常更常見。
>
> **Q：樹越多越好嗎？**
> 不一定，樹太多會讓訓練和推論變慢，要看效能和成本。

### 相關術語
> - **決策樹**：先看單棵樹，才知道隨機森林是怎麼把它們集合起來的。
> - **機器學習**：隨機森林是經典的監督式學習模型。
> - **監督式學習**：它常用在有標籤的分類和回歸任務。
> - **交叉驗證**：常用來比較隨機森林和其他模型的表現。
> - **特徵工程**：表格型資料常常要先做好特徵，森林才更有用。

---

來源：https://aiterms.tw/terms/random-forest
快查頁：https://aiterms.tw/terms/random-forest
最後更新：2026/07/29
深度解說：https://aiterms.tw/learning/what-is-random-forest