Overview of Supervised Learning 近山・田浦研 M1 斎藤 大 Supervised Learningとは? 入力から出力を予測したい – – いくつかの入力⇒出力(= 訓練データ)が与えられる 新しい入力が与えられた時、出力はどうなる? 入力から出力を求めるモデルを立てて 訓練データからモデルを修正していく 例)スパムフィルタ 手書き文字認識 株価予測 Supervised Learningとは? 出力の分類 数量 Quantitative – – 性質 Qualitative – – Ex) 株価 数量を予測すること = “回帰” Ex) spam or not 性質を予測すること = “分類” (順序付性質:Low, Mid, High) 例:スパムフィルタ 訓練:メール本文中の特定単語の出現確率 george you your hp spam 0.00 2.26 1.38 0.02 email 1.27 1.27 0.44 0.90 出力:スパムかどうかの判断 If (%george < 0.6) & (%you > 1.5) then spam If (0.2×%your – 0.3×%hp) > 0 then spam 例:手書き文字認識 様々な人が書いた数字から 共通の特徴を見つける 訓練:16×16 pixel 256grayscaleのデータ +それがどの数字を表すか 出力:どの数字か? – “どの数字にも属さない”の回答もあり得る →分類ミスを減らす 発表の流れ 1. 2. Supervised Learningの概要 基礎的な手法 – – 3. 4. 5. 6. 最小二乗法 k-nearest neighbor 高次元問題 一般的な統計モデル 様々な手法 まとめ 最小二乗法 二乗誤差が最小となる直線を求める 線形モデルを想定(=強い仮定) 特徴 – – – ある程度不正確 柔軟でない 安定している 最小二乗法の数式表現 線形モデルを想定 二乗誤差:下の式を最小にする を求める 機械学習への適用 訓練データから入力⇒出力直線を求める 入力データに対し – – 回帰:直線から出力値を求める 分類:直線のどちら側に いるかで分類する 少ない訓練データでも適応 例:2次元平面で2値の分類 座標→色(Red or Green) k-nearest neighbor k個の近傍点から出力を予測する “近傍”はユークリッド距離で測定 特徴 – – – – ある程度正確 柔軟 あまり安定しない 特定のモデルを定めず k個の近傍を選ぶ k=3 k-nearest neighborの数式表現 k個の近傍点の平均 はxのk個の近傍 仮定1:出力は他の出力の平均で予測出来る 仮定2:ある点の出力は近隣の点に類似する 機械学習への適用 訓練データを入力空間に配置する 入力データに対し、そのk個の近傍点を集めて – – 数量の予測:出力を平均 性質の予測:出力を多数決 例:先と同じ例(k=15) – 最小二乗法より良さそう 最適な近傍数k 例:1-nearest neighbor – – 訓練データの誤分類無し これがいい分類? 訓練データ自体の 誤差も考える必要がある トレーニングの誤分類率 ≠実際の誤分類率 ⇒最適なkを求めるために二乗誤差が使えない 2つの手法の比較:偏りと分散 最小二乗法 – – 訓練データが少ない場合 k-nearest neighbor – – 強い偏り 低い分散 弱い偏り 高い分散 訓練データが多い場合 どちらもデータを平均している点は同じ k-nearest neighborの問題点 訓練データが十分存在する場合 →k-nearest neighborは一般に 様々な種類の問題に対し良い性能を示す 問題点 – 十分なサンプル数が無いケースでは不安定 近傍の探索 – 高次元での性能低下 – 高次元の問題 “curse of dimensionality” – あらゆる学習アルゴリズムに影響を及ぼす 「高次元では、あらゆるものが遠くに見える」 例:ユークリッド距離 次元が増えるほど、距離が増える 高次元の問題 p次元の hypercubeで 全体のrだけの 断片が欲しい hypercube全体の内10%を取得したい →10次元では1辺が最大の長さの80% 高次元の問題 k-nearest neighborで近傍が遠くなる – – 多くのエラーを含む 他の近傍点を使う手法でも同様のことが言える 低次元の場合と同等の精度を得るためには →訓練データ数もexponentialに増加 統計モデル Supervised Learningの一般モデル構築 特に数量予測(=回帰)の場合について 出力Y=入力Xをある関数に通し誤差を加える 誤差 Xに依存しない ex)測定誤差 統計モデル 訓練中 を計測し を修正 訓練完了時 – – 理想は全ての に対し として実際ありえそうなものを一通り選んでいる として適切なモデル(関数)を仮定し Supervised Learningを関数近似として扱う 関数近似 関数近似にはいくつかパラメータが存在し 一般に で表す(線形モデルでは ) Linear basis expansion は様々な関数(x, cos(x), x^2) この関数を最小化する、単純な最小化問題へ 様々な手法 最尤推定 Roughness Penalty Kernel Method Basis function 最尤推定 最小二乗法よりも広い範囲に適用できる 観測データの出現確率から関数を推定する この式を最大化するようにθを定める Roughness Penalty によりRoughness Penaltyを与える Cubic smoothing spline – – Penaltyはつかない 線形モデルしか認めない Kernel Method 高次元空間へ写像し、データを扱いやすくする カーネル関数 ガウスカーネル ユークリッド距離から類似度を求める Basis function 線形関数、多項式を組み合わせる Neural Network – ただし まとめ Supervised Learningとは – – 最小二乗法 k-nearest neighbor – 訓練データを用いて、モデルを推測する モデルの構築に様々な手法 高次元の問題 モデルの一般化 様々な手法の紹介
© Copyright 2024 ExpyDoc