ランダムフォレスト(Random Forest)と決定木(Decision Tree)は、どちらも「木構造」を用いる代表的な機械学習アルゴリズムです。
しかし、目的・安定性・精度・解釈性において明確な違いがあります。
本稿では、誤解が起きやすい点を避けつつ、理論と実務の両面から正確に整理します。
目次
基本的な位置づけ
決定木とは
決定木は、データを条件分岐によって段階的に分割し、最終的な予測を行うモデルです。
- 「もし A なら B、そうでなければ C」という
人間の意思決定に近いロジック - 1本の木で完結する 単体モデル
ランダムフォレストとは
ランダムフォレストは、多数の決定木を組み合わせたアンサンブル学習手法です。
- 複数の決定木を独立に学習
- 分類では多数決、回帰では平均で最終判断
- 決定木の「不安定さ」を抑えることが主目的
ランダムフォレストは、決定木を改良・強化したモデルと考えると理解しやすいです。
学習の仕組みの違い
決定木
- 全データを使って1本の木を構築
- 各分岐で、ジニ不純度やエントロピーなどを基準に最適な分割を選択
- データの変化に非常に敏感
ランダムフォレスト
ランダムフォレストは、以下の2つの「ランダム性」を導入します。
データのランダム抽出(ブートストラップ)
- 元データから重複ありでサンプリング
- 木ごとに異なる学習データを使用
特徴量のランダム選択
- 各分岐で、使用する特徴量を一部に制限
- 特定の強い特徴量への依存を防ぐ
これにより、木同士の相関を下げ、平均化効果を最大化します。
精度と安定性の違い
| 観点 | 決定木 | ランダムフォレスト |
|---|---|---|
| 精度 | 中程度 | 高い傾向 |
| 安定性 | 低い | 高い |
| 分散 | 大きい | 小さい |
なぜランダムフォレストは安定するのか
- 決定木は「当たり外れ」が大きいモデル
- 複数の木を平均化することで、
偶然の誤りが相殺される
これは統計的には「分散削減効果」と呼ばれます。
過学習のしやすさ
決定木
- 深く成長させると容易に過学習
- ノイズや外れ値をそのまま学習してしまう
- 剪定や深さ制限が必須
ランダムフォレスト
- 単体の木は過学習気味でも問題ない
- 全体としては汎化性能が高くなりやすい
- ただし過学習が完全に起きないわけではない
以下の条件では注意が必要です。
- 特徴量のほとんどがノイズ
- クラス不均衡が強い
- 時系列でデータリークがある
- ハイパーパラメータ設定が不適切
正確には「決定木より過学習しにくい傾向がある」という表現が適切です。
前処理とデータ型の扱い
スケーリング
- 決定木・ランダムフォレストともに
標準化・正規化は原則不要
カテゴリ変数
ここは誤解されやすい重要ポイントです。
- 木系モデルは理論的にはカテゴリ変数と相性が良い
- ただし実際の扱いは実装(ライブラリ)依存
- 多くの一般的な実装では、One-hot エンコーディングなどが必要
「前処理が完全に不要」という言い切りは正確ではありません。
解釈性と説明可能性
| 観点 | 決定木 | ランダムフォレスト |
|---|---|---|
| ルールの可視化 | 可能 | 不可 |
| 人への説明 | 容易 | 困難 |
| 特徴量重要度 | 限定的 | 取得可能 |
決定木の解釈性
- 浅い木であれば非常に説明しやすい
- ただし深くなると人間の理解は困難
ランダムフォレストの解釈性
- モデル全体の判断ロジックはブラックボックス寄り
- 特徴量重要度は算出可能
ただし 不純度ベースの重要度には偏りがある
実務では、
- 置換重要度(Permutation Importance)
- SHAP など
を併用するケースが多くなります。
計算コストと実装面
| 観点 | 決定木 | ランダムフォレスト |
|---|---|---|
| 学習時間 | 短い | 長い |
| メモリ使用 | 少 | 多 |
| 並列化 | 限定的 | しやすい |
ランダムフォレストは、
- 各木が独立して学習できるため
並列処理と相性が良い
一方で、データが極端に大きい場合は計算負荷が問題になることもあります。
回帰における「外挿」の注意点
ランダムフォレスト(および決定木)回帰では、
- 学習データの範囲外へ
滑らかに値を伸ばす外挿が苦手
これは、
- 分割された領域内の平均値を予測する
という構造的な性質によるものです。
※ 主に回帰での話であり、分類では同じ意味での「外挿」は当てはまりません。
実務での使い分け指針
決定木が向くケース
- ルールを明示的に説明する必要がある
- 審査・業務フロー・教育用途
- データ量が少ない
- モデルの可視性が最優先
ランダムフォレストが向くケース
- 精度と安定性を重視
- ノイズを含む実データ
- ベースラインモデルとしての利用
- 特徴量が多い問題
実務では「まずランダムフォレストで精度の目安を出し、説明が必要なら単純化した決定木を検討する」という使い方が非常に一般的です。
まとめ
- 決定木は
シンプル・解釈性が高いが不安定 - ランダムフォレストは
決定木の不安定さを平均化で抑えた高性能モデル - どちらも万能ではなく、
データの性質・目的・説明責任によって使い分ける必要がある
以上、ランダムフォレストと決定木の違いについてでした。
最後までお読みいただき、ありがとうございました。
