Upgrade to Pro — share decks privately, control downloads, hide ads and more …

サポートベクトルマシン(SVM)の勉強

Avatar for Kazuki Adachi Kazuki Adachi
March 15, 2022
31

 サポートベクトルマシン(SVM)の勉強

Avatar for Kazuki Adachi

Kazuki Adachi

March 15, 2022
Tweet

Transcript

  1. Support Vector Machine (SVM)とは • 教師あり学習で2クラス(正例,負例)の識別を行う – 教師あり学習: • 事前に学習データと正解(どのクラスに属するか)が与えられ,

    それを基に学習を行う • 未知のデータに対しても分類を行えるようにする • SVMでは,特徴空間上で学習データを分離する 識別超平面を求める(線形分離) 3 正例 負例 識別超平面
  2. マージン最大化 – 定式化(1) • 学習データの定義 – 数値特徴ベクトル 𝒙𝑖 – 正解情報(正例:1

    or 負例:-1) 𝑦𝑖 – データの個数 𝑁 𝑖 = 1, … , 𝑁 – 特徴空間の次元数 𝑑 • 超平面 – 平面の概念を高次元に拡張したもの – 2次元空間の平面(=直線)→1次元 3次元空間の平面→2次元 𝑑次元空間の超平面→ 𝑑 − 1 次元 5 内積 超平面の方程式 … 法線ベクトル 識別面
  3. マージン最大化 – 定式化(2) • 学習データ𝒙𝑖 が正例のとき 負例のとき となるようにする • 𝒙𝑖

    と識別面の距離Dist 𝒙𝑖 • 識別面に最も近い(サポートベクトル)𝒙𝑖 に対して 以下のように𝒘, 𝑤0 を調整 6
  4. マージン最大化 – 定式化(3) • Dist 𝒙𝑖 の最小値=マージンは となる • マージン最大化=

    𝒘 最小化 • wの条件は識別面がすべての学習データを識別できること 正例・負例両方の条件がまとめて表せている 7
  5. マージン最大化 – ラグランジュの未定乗数法 • ラグランジュの未定乗数法を用いる • 目的関数𝑓 𝒙 を条件𝑔1 𝒙

    , … , 𝑔𝑁 𝒙 ≥ 0の下で最適化 (主問題) – ラグランジュ関数の導入 – Lの極値を調べる問題に置き換わる – 最終的に,Lの𝝀に関する最大化問題になる(双対問題) – 双対問題を解くことで主問題の解を求める 9
  6. マージン最大化 – 識別面の計算(3) • マージン最大化問題が𝐿 𝜶 を最大化する問題に置き換わる (双対問題) • aに関する2次計画問題

    • 最急降下法などのアルゴリズムで求まる – 適当な初期値から始める – 勾配方向に少しずつ移動する – 「少し」=学習係数hとすると,更新式は – 更新を繰り返し,更新量が一定値以下になったら終了 13 最大
  7. マージン最大化 – 識別面の計算(4) • サポートベクトルに対応する𝛼𝑖 のみ𝛼𝑖 ≠ 0 それ以外は𝛼𝑖 =

    0 – 識別面を決めるのはサポートベクトル – 相補性条件に対応 • KKT条件の式からwが求まる 14
  8. ソフトマージンSVM(2) • 制約を弱める • 𝜉𝑖 ≥ 0 :スラック変数 – 𝜉𝑖

    = 0のとき,正しく識別できている – 0 ≤ 𝜉𝑖 ≤ 1のとき,データが マージン内に入り込んでいる – 1 ≤ 𝜉𝑖 のとき, 間違って識別されている • 𝜉𝑖 が大きいほど正しい分類から外れる→小さいほうが良い • マージン最大化(= 𝒘 2/2最小化)問題に付け加える 17 マージン 識別面
  9. ソフトマージンSVM(4) • ハードマージンSVMと同様にラグランジュの未定乗数法を 適用すると同じ式になる →最大化(双対問題) • 制約0 ≤ 𝐶 ≤

    𝛼𝑖 が加わる • 後はハードマージンSVMの場合と同様 →できるだけ誤分類データが識別面から離れないような 識別面が得られる(𝐶 → ∞でハードマージンSVMと一致) 19
  10. カーネル法(3) • カーネル関数𝐾 𝒙, 𝒙′ の導入 – 元の空間上の2点𝒙, 𝒙′の距離に基いて定義 •

    非線形写像𝜙に対して を仮定 – カーネル関数により元の空間での2点間の距離の情報を 高次元空間での内積として保存 • 写像後の空間での識別関数 22
  11. カーネル法(5) • マージン最大化の問題は の最大化問題になる • 𝐿 𝜶 からも𝑔 𝜙 𝒙

    からも𝜙が消えた →Kを定めれば非線形変換を求めなくてよい →高次元ベクトルの内積計算もしなくて良い (カーネルトリック) • 文書分類やバイオインフォマティックスなどに応用される 24
  12. まとめ • 以下の3つについて説明した – SVMの原理・マージン最大化 – ソフトマージンSVM – カーネル法 •

    特にカーネル法は強力な手法である – 非線形写像を求めなくて済む – 高次元のベクトルの内積の計算を回避できる 26