概要
- 機械学習 はデータからパターンを自動的に発見し、予測を行う技術
- 分類問題 として、New YorkとSan Franciscoの住宅を識別するモデル作成
- 特徴量 (例:標高、平米単価)を用いて境界線を特定
- 決定木 によるif-then分岐でパターンを抽出
- 過学習 とその検出方法についても解説
機械学習の基本
- 機械学習 は、コンピュータが 統計的手法 を用いてデータ内のパターンを自動的に発見
- データに基づく 高精度な予測 の実現
- 今回は住宅データを使い、 New York と San Francisco の住宅分類モデルを作成
- 分類問題 として、データポイントをカテゴリに分けるタスク
- 例えば、 San Francisco は丘陵地帯が多く、 標高 が識別の有力な特徴量
特徴量による識別
- 標高240フィート以上なら San Francisco と分類する直感
- 追加の特徴量(例: 平米単価)で識別精度向上
- New York の住宅は低標高でも平米単価が高い傾向
- 標高と平米単価を 散布図 で可視化し、識別境界を探る
- データセット内の 次元 は特徴量、予測子、変数とも呼ばれる
境界線と分類
- 標高・平米単価の 境界線 を散布図上で視覚化
- 数学的にデータ内の境界を特定することが 統計的学習 の本質
- データセットには7つの特徴量が含まれ、 散布図行列 で関係性を可視化
- 明確な境界線が見えにくい場合も多い
決定木によるパターン抽出
- 決定木 は特徴量ごとにif-then分岐を行い、パターンを抽出
- 例:標高がある値を超えたら San Francisco と分類
- このif-then分岐は フォーク(fork) と呼ばれ、分割値(split point)でデータを2つに分岐
- 分割値は決定木における 境界線 の役割
分割のトレードオフ
- 分割値の選択には トレードオフ が存在
- 初期分割(例:標高240フィート)は 誤分類 (false negatives, false positives)を生む
- 最適な分割では各分岐の結果が できるだけ均質 になるよう計算
- 1つの特徴量だけでは完全な分類は困難
再帰と木の成長
- 決定木は 再帰的 に分割を繰り返し、各サブセットで最適分割を探索
- 低標高の住宅には平米単価、高標高には価格など、 分岐ごとに最適特徴量 が異なる
- フォークを追加することで 予測精度 が向上
- 木の深さを増やすことで最終的に100%の精度も可能
- 各最終分岐は リーフノード と呼ばれ、多数派クラスで分類
予測とモデル評価
- 訓練データ を用いて決定木を成長させ、各住宅を分類
- 完全に一致するまで木を伸ばせば、訓練データ上の精度は100%
- しかし、重要なのは 未知データ (テストデータ)での性能
- テストデータで性能が落ちる場合、 過学習(overfitting) が発生
- 過学習は、訓練データの細部まで学習し、不要なパターンまでモデル化してしまう現象
機械学習のまとめ
- 機械学習は 統計的学習 とコンピュータの力でデータの境界を発見
- 決定木 はif-then分岐でパターンを抽出する予測手法の一つ
- 過学習は、意味のない区別まで境界線を引いてしまうこと
- モデルの過学習の有無は テストデータ で評価
次回予告と補足情報
- 次回は 過学習 と機械学習の本質的なトレードオフ(バイアス・バリアンストレードオフ)を解説予定
- 機械学習の用語や手法は 複数分野 で発展
- 最適分割の計算方法として gini index や cross entropy を参照
- 決定木アルゴリズム はトップダウン型の貪欲法(greedy)でサブセットの均質化を目指す
- お問い合わせや感想は @r2d3us (Twitter)またはメールで受付