AI・機械学習の基本概念

決定木・ランダムフォレスト けっていき・らんだむふぉれすと

決定木ランダムフォレストアンサンブル学習特徴重要度解釈可能性勾配ブースティング
決定木・ランダムフォレストについて教えて

簡単に言うとこんな感じ!

決定木は「フローチャートで答えを出すAI」、ランダムフォレストは「そのフローチャートを何百本も作って多数決する」イメージだよ!「年収は?→ローンの審査は?→購入確率は?」みたいに分岐を繰り返して答えを出すのが決定木。でも1本だと偏りがちなので、ランダムにデータ・条件を変えた木をたくさん作って合議で決めるのがランダムフォレストなんだ!


決定木・ランダムフォレストとは

決定木(Decision Tree)は、データを特徴量の条件(例:「年齢 ≥ 30?」「購入履歴あり?」)で繰り返し分割し、木構造で分類・予測を行うアルゴリズムです。フローチャートに似た直感的な構造を持ち、結果の解釈がしやすいのが最大の特徴です。

しかし1本の決定木は過学習しやすく、データが少し変わると大きく結果が変わる「不安定さ」があります。この問題を解決するのがランダムフォレスト(Random Forest)です。ランダムフォレストは「①データをランダムにサンプリング」「②特徴量のランダムなサブセットを使う」という2段階のランダム化で多数の異なる決定木を作り、多数決(分類)または平均(回帰)で最終予測を出します。

この手法はアンサンブル学習の一種で、多様な弱いモデルを組み合わせることで単体より強力なモデルを作ります。テーブルデータ(構造化データ)では、ディープラーニングにも引けを取らない精度を出すことが多く、業務系AIでは非常によく使われます。


決定木とランダムフォレストの比較

項目決定木ランダムフォレスト
解釈しやすさ非常に高い(図で説明可能)中程度(特徴重要度で確認)
精度中程度(過学習しやすい)高い(アンサンブルで安定)
速度速いやや遅い(木の数×決定木)
過学習への強さ弱い強い
特徴重要度の出力可(より信頼性が高い)
欠損値への対応アルゴリズム次第比較的ロバスト

アンサンブル学習の種類

手法仕組み代表例
バギング(Bagging)データのサンプリングを変えて複数モデルを並列学習し多数決ランダムフォレスト
ブースティング前のモデルの誤りを次のモデルが重点的に学ぶ直列学習XGBoostLightGBMCatBoost
スタッキング複数モデルの予測結果をメタモデルで統合Kaggleでよく使われる手法

歴史と背景

  • 1963年:AIDアルゴリズムとして決定木の原型が登場
  • 1984年:Breiman らがCART(Classification And Regression Trees)を発表。決定木の数学的枠組みを確立
  • 1986年:QuinlanがID3(情報利得ベースの決定木)を発表。後にC4.5・C5.0に発展
  • 1995年:Ho が最初のランダムフォレストの原型(ランダム決定木の組み合わせ)を提案
  • 2001年:Breiman がRandom Forestを正式に発表。Bagging+特徴量のランダムサブセットという現在の形を確立
  • 2014年XGBoost(Chen & Guestrin)が発表。勾配ブースティング決定木の実装として高精度・高速でKaggleで圧倒的人気に
  • 2016〜17年:LightGBM(Microsoft)・CatBoost(Yandex)が登場し、さらなる高速化・精度改善が実現
  • 現在:テーブルデータのMLコンペや業務システムでは、XGBoost・LightGBMが最も使われるアルゴリズムのひとつ

決定木の構造とランダムフォレスト

決定木の構造とランダムフォレストの多数決 決定木(1本) 年齢 ≥ 35? Yes No 購入歴あり? 収入 ≥ 500? Yes No Yes No 購入◎ 購入△ 購入◎ 購入✕ ルートノード → 内部ノード → 葉ノード(予測結果) 解釈しやすいが過学習しやすい ランダムフォレスト(N本の多数決) 木1 木2 木3 多数決 → 購入◎ ◎2票 vs ✕1票 特徴重要度(Feature Importance) 年齢: 0.42  収入: 0.31 購入歴: 0.27 「どの特徴が判断に効いたか」が分かる

関連する規格・RFC

規格・RFC番号内容
ISO/IEC 22989:2022AI概念・用語(機械学習アルゴリズムの定義を含む)
ISO/IEC 23053機械学習を使ったAIシステムのフレームワーク

関連用語