決定木
「YES/NOクイズ(20の質問)」のように質問を重ねていき、最終的な答えを導き出す案内マップのようなものです。
定義 「20の質問ゲーム(YES/NOクイズ)」で正解を当てるために、段階的に質問して範囲を絞り込んでいく様子をイメージしてみてください。 決定木(デシジョンツリー、Decision Tree)とは、AIがデータを分類したり結果を予測したりするときに、このように「はい/いいえ」で答えられる基準の質問を連続して投げかけ、最終的な答えを導き出す機械学習アルゴリズム(コンピュータが規則性を見つける計算手法)です。 一番上の1つの「根(ルート)」となる質問から始まり、条件に応じて複数の「枝(ブランチ)」が伸びていき、最後の「葉(リーフ)」で最終的な結論を出す形が逆さまの木に似ていることから「決定木」と呼ばれています。
質問を繰り返して正解を絞り込む仕組み
スマホの心理テストやおすすめ映画診断を思い浮かべてみてください。「今日の気分はワクワクしている?」という質問に「はい」と答えると、次に「アクション映画が好き?」と続き、最後には自分にぴったりの映画が提案されますよね。
決定木もこれとまったく同じ仕組みで動きます。コンピュータが膨大なデータを受け取ると、まずデータを最もきれいに2つに分けられる質問を選び出します。例えば迷惑メール(スパム)を仕分けるとき、「メールの件名に『広告』という単語が含まれているか?」といった基準の質問を投げかけ、メールの山を2つに分割するようなイメージです。
こうして分けられたグループに、さらに細かい質問を続けていきます。質問を1つ通過するたびにごちゃ混ぜだったデータが性質ごとに整理され、最後の「葉」の段階で「このメールは迷惑メールである」「通常のメールである」という最終判断にたどり着きます。
質問の順番を決める秘密
では、コンピュータはどの質問を一番上に置き、どの質問を後に配置するのでしょうか? その秘密は、データの「不純度(どれくらい混ざり合っているか)」を減らす計算にあります。
赤いビー玉と青いビー玉が半分ずつ混ざった袋は、中身がごちゃ混ぜで「不純度が高い」状態です。ここで完璧な質問を1つして、赤いビー玉の袋と青いビー玉の袋にきれいに分けられたら、ごちゃ混ぜな状態は一瞬でなくなりますよね。コンピュータは、このようにデータの散らかり具合を最も減らしてくれる質問を最初の質問として選びます。
もう少し専門的に言うと、このプロセスを「情報利得(インフォメーション・ゲイン)を最大化する」と表現します。コンピュータは計算式を使って、質問したときにどれくらいデータが整理されるかを数値化し、最も効率的な順番で「質問の木」を自ら組み立てていくのです。
直感的なわかりやすさと「過学習」の落とし穴
決定木の最大のメリットは、何といっても「判断の過程が目に見える(説明可能性が高い)」ことです。複雑なニューラルネットワーク(ディープラーニング)は、なぜその結論に至ったのか中身がわかりにくく、よく「ブラックボックス」と呼ばれます。一方、決定木はどのような質問とステップを経て答えが出たのかが地図のように示されるため、人間が判断のプロセスを一目で理解できます。
しかし、質問の木を深く複雑にしすぎると大きな落とし穴にはまります。細かい特徴まですべて言い当てようと質問をどこまでもつなげていくと、手元の練習用データでは100点満点でも、新しいデータに出会うとトンチンカンな答えを出してしまう「過学習(オーバーフィッティング)」という現象が起きます。
これはまるで、問題集の数字や誤字まで丸暗記してしまったせいで、本番のテストで数字が少し変わっただけで解けなくなってしまう生徒のようなものです。そのため実際の開発現場では、不要な枝を切り落とす「枝刈り(プルーニング)」を行ったり、たくさんの決定木の判断を集約する「ランダムフォレスト」という手法を組み合わせたりして活用されています。
🤔 よくある誤解
決定木は、木の枝をできるだけ長く複雑にするほど常に予測の精度が高くなる。
枝が多すぎると手元の学習データだけに過度に適応する「過学習(オーバーフィッティング)」が起こり、未知の新しいデータに対してかえって間違いやすくなります。
🧺 日常で出会う場面
決定木は、データを最もきれいに分類できる質問を段階的に繰り返しながら答えを導き出すAIアルゴリズムです。