Ch.06
決定木(Decision Tree):二十の質問で答えを探す
決定木は「二十の質問」ゲームと同じ仕組みで動くモデルです。データに質問(条件)を投げ、はい/いいえで枝をたどり、葉(リーフ)で予測を得ます。解釈がしやすく、ランダムフォレストなどのアンサンブルの基盤になります。
チャプター別 機械学習図
チャプターを選ぶと、下の図がそのチャプターの内容に切り替わります。機械学習の流れを一覧で確認できます。
ルートから質問に「はい/いいえ」で枝をたどると、リーフで予測が得られます。
決定木:二十の質問で答えを探す
基本構造 — 逆さの木を想像してください。一番上にルートノード(最初の質問)があります。そこから条件(例:特徴 ?)に「はい」「いいえ」で内部ノードへ。これ以上分割できないリーフノードで予測(クラスまたは値)を出力します。
二十の質問と同じ — 動物を当てるように「足は4本?」→「草食?」→「虎!」と、質問で答えの範囲を狭めます。決定木も同様にデータを二つに分けながら進みます。
良い質問:不純度の低減 — 不純度はノード内のクラスの混ざり具合です。分割でノードをより「純」にすることが目標です。ジニ とエントロピー 。一クラス100%なら両方0、半々なら不純度は高くなります。
情報利得 — 分割前の不純度から分割後の(重み付き)不純度を引いた値が情報利得です。その質問でデータがどれだけ「きれい」になったかを表し、木は情報利得が最大の質問を選びます。
リーフでの予測 — 分類ではそのリーフにいるサンプルの多数クラス、回帰では平均値を出力。新しいデータは経路をたどるだけで予測が得られます。
剪定(Pruning) — 深すぎる木は過学習します。剪定で枝を切り、汎化性能を高めます。剪定された木がランダムフォレストなどの基盤になります。
説明可能なAI — ブラックボックスではなく、どの質問の経路で結論に至ったかが分かります(例:年収・延滞で融資可否)。金融・医療で重視されます。
非線形な境界 — 線形モデルは一直線で切りますが、木は階段状に領域を分割し、複雑なパターンも表現できます。
アンサンブルの基盤 — 1本の木は不安定でも、数百本のランダムフォレストにすると強く安定します。Ch07の土台です。
与信・融資 — 「年収≥5000万?」「1年以内延滞?」などの枝をたどり、可否を判定。
医療診断支援 — 血圧・コレステロール等から医学的な二十の質問でリスクを予測。
マーケ(離脱・購買) — 「会員6ヶ月以上?」「直近ログイン≤3回?」でリスク顧客を特定。
決定木の解法 —
(1) 経路:ルートから 0=左(いいえ)、1=右(はい)。リーフの予測が答え。
(2) ジニ: を求め 、 を四捨五入。
(3) エントロピー:、 を四捨五入。
(4) リーフ多数決:クラス0が 、1が なら で0、そうでなければ1。下の問題を解くための説明表を参照。