SlideShare a Scribd company logo
1 of 27
Download to read offline
サポートベクトルマシン
目次
• Support Vector Machine(SVM)とは
• SVMの特徴
• マージン最大化
• ソフトマージンSVM
• カーネル法
2
Support Vector Machine (SVM)とは
• 教師あり学習で2クラス(正例,負例)の識別を行う
– 教師あり学習:
• 事前に学習データと正解(どのクラスに属するか)が与えられ,
それを基に学習を行う
• 未知のデータに対しても分類を行えるようにする
• SVMでは,特徴空間上で学習データを分離する
識別超平面を求める(線形分離)
3
正例
負例
識別超平面
SVMの特徴
• 線形モデルで識別するため学習データに特化し過ぎない
• マージン最大化を行う
– 学習データを分離できる超平面は無数にあるが,
マージンが最大となるものを選択
– 学習データから少しずれた未知データが誤分類されにくい
→汎用性の高い学習
– マージン:
• 識別面に最も近いデータ
(サポートベクトル)と識別面の距離
4
マージン
サポートベクト
ル
識別面
正例
負例
識別面
マージン最大化 – 定式化(1)
• 学習データの定義
– 数値特徴ベクトル 𝒙𝑖
– 正解情報(正例:1 or 負例:-1) 𝑦𝑖
– データの個数 𝑁 𝑖 = 1, … , 𝑁
– 特徴空間の次元数 𝑑
• 超平面
– 平面の概念を高次元に拡張したもの
– 2次元空間の平面(=直線)→1次元
3次元空間の平面→2次元
𝑑次元空間の超平面→ 𝑑 − 1 次元
5
内積
超平面の方程式
…
法線ベクトル
識別面
マージン最大化 – 定式化(2)
• 学習データ𝒙𝑖が正例のとき
負例のとき
となるようにする
• 𝒙𝑖と識別面の距離Dist 𝒙𝑖
• 識別面に最も近い(サポートベクトル)𝒙𝑖 に対して
以下のように𝒘, 𝑤0を調整
6
マージン最大化 – 定式化(3)
• Dist 𝒙𝑖 の最小値=マージンは
となる
• マージン最大化= 𝒘 最小化
• wの条件は識別面がすべての学習データを識別できること
正例・負例両方の条件がまとめて表せている
7
マージン最大化 – 定式化(4)
• 微分を用いて解析を行うため,扱いやすいように
𝒘 の代わりに 𝒘 2/2の最小化を考える
8
条件:
マージン最大化 – ラグランジュの未定乗数法
• ラグランジュの未定乗数法を用いる
• 目的関数𝑓 𝒙 を条件𝑔1 𝒙 , … , 𝑔 𝑁 𝒙 ≥ 0の下で最適化
(主問題)
– ラグランジュ関数の導入
– Lの極値を調べる問題に置き換わる
– 最終的に,Lの𝝀に関する最大化問題になる(双対問題)
– 双対問題を解くことで主問題の解を求める
9
マージン最大化 – KKT条件
• L(x,l)が極値を取るとき,以下のKarush-Kuhn-Tucker条件
(KKT条件)が成り立つ
10
相補性条件
制約
𝑓 𝒙 と𝑔𝑖 𝒙 の勾配ベクトルの向きが一致
マージン最大化 – 識別面の計算(1)
• マージン最大化問題(主問題)にラグランジュの
未定乗数法を適用
• KKT条件より,Lが極値を取るとき
11
目的関数: 条件:
:ラグランジュ乗数
マージン最大化 – 識別面の計算(2)
• 計算すると
となる
• これをLに代入
aの関数になる
12
マージン最大化 – 識別面の計算(3)
• マージン最大化問題が𝐿 𝜶 を最大化する問題に置き換わる
(双対問題)
• aに関する2次計画問題
• 最急降下法などのアルゴリズムで求まる
– 適当な初期値から始める
– 勾配方向に少しずつ移動する
– 「少し」=学習係数hとすると,更新式は
– 更新を繰り返し,更新量が一定値以下になったら終了
13
最大
マージン最大化 – 識別面の計算(4)
• サポートベクトルに対応する𝛼𝑖のみ𝛼𝑖 ≠ 0
それ以外は𝛼𝑖 = 0
– 識別面を決めるのはサポートベクトル
– 相補性条件に対応
• KKT条件の式からwが求まる
14
マージン最大化 – 識別面の計算(5)
• 𝑤0も求める
– 正例のサポートベクトル𝒙+
– 負例のサポートベクトル𝒙−
• マージンが最大になる識別面が求まった
15
ソフトマージンSVM(1)
• いつも超平面で学習データを完全に分離できるとは限らない
• 誤識別されているデータがあっても良いことにするが,
識別面から大きく離れないようにする
(完全に分離する場合:ハードマージンSVM)
16
正例
負例
識別超平面
ソフトマージンSVM(2)
• 制約を弱める
• 𝜉𝑖 ≥ 0 :スラック変数
– 𝜉𝑖 = 0のとき,正しく識別できている
– 0 ≤ 𝜉𝑖 ≤ 1のとき,データが
マージン内に入り込んでいる
– 1 ≤ 𝜉𝑖のとき, 間違って識別されている
• 𝜉𝑖が大きいほど正しい分類から外れる→小さいほうが良い
• マージン最大化(= 𝒘 2/2最小化)問題に付け加える
17
マージン
識別面
ソフトマージンSVM(3)
• 主問題
• C:制約を満たさないデータのペナルティ
– Cが大きいと影響が大きい(厳しい)
– Cが小さいと影響が小さい(緩い)
18
条件:
ソフトマージンSVM(4)
• ハードマージンSVMと同様にラグランジュの未定乗数法を
適用すると同じ式になる
→最大化(双対問題)
• 制約0 ≤ 𝐶 ≤ 𝛼𝑖が加わる
• 後はハードマージンSVMの場合と同様
→できるだけ誤分類データが識別面から離れないような
識別面が得られる(𝐶 → ∞でハードマージンSVMと一致)
19
カーネル法(1)
• 特徴空間の次元数dが大きいと,データを分離できる
識別超平面が存在する可能性が高くなる
• 特徴ベクトルを高次元空間に写像してからSVMで識別面を
求める
20
識別超平面
元の空間 高次元空間 元の空間
カーネル法(2)
• 識別に無関係な特徴をむやみに増やしても
本来の分布の性質が壊れるだけで意味は無い
• 元の空間でのデータの分布の性質が保たれる
=距離関係が保存されるような非線形写像が良い
• そのような非線形写像𝜙は?
21
カーネル法(3)
• カーネル関数𝐾 𝒙, 𝒙′ の導入
– 元の空間上の2点𝒙, 𝒙′の距離に基いて定義
• 非線形写像𝜙に対して
を仮定
– カーネル関数により元の空間での2点間の距離の情報を
高次元空間での内積として保存
• 写像後の空間での識別関数
22
カーネル法(4)
KKT条件
を代入
23
カーネル法(5)
• マージン最大化の問題は
の最大化問題になる
• 𝐿 𝜶 からも𝑔 𝜙 𝒙 からも𝜙が消えた
→Kを定めれば非線形変換を求めなくてよい
→高次元ベクトルの内積計算もしなくて良い
(カーネルトリック)
• 文書分類やバイオインフォマティックスなどに応用される
24
カーネル法(6)
• Kが正定値性という条件を満たす(ある特徴空間での
内積として解釈できる)とき𝜙が存在
• カーネル関数の例
– 多項式カーネル関数
– ガウシアンカーネル関数
25
(𝑝:自然数)
(σ:バンド幅)
まとめ
• 以下の3つについて説明した
– SVMの原理・マージン最大化
– ソフトマージンSVM
– カーネル法
• 特にカーネル法は強力な手法である
– 非線形写像を求めなくて済む
– 高次元のベクトルの内積の計算を回避できる
26
参考
荒木 雅弘:”フリーソフトではじめる機械学習入門”,
森北出版株式会社,2014年,pp. 115-127
27

More Related Content

What's hot

データ解析13 線形判別分析
データ解析13 線形判別分析データ解析13 線形判別分析
データ解析13 線形判別分析Hirotaka Hachiya
 
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算sleepy_yoshi
 
ベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づけるベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づけるitoyan110
 
PRML読み会第一章
PRML読み会第一章PRML読み会第一章
PRML読み会第一章Takushi Miki
 
機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)Kota Matsui
 
【解説】 一般逆行列
【解説】 一般逆行列【解説】 一般逆行列
【解説】 一般逆行列Kenjiro Sugimoto
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)Yoshitake Takebayashi
 
WBICによる混合正規分布の分離と抽出
WBICによる混合正規分布の分離と抽出WBICによる混合正規分布の分離と抽出
WBICによる混合正規分布の分離と抽出Yusuke TAMAI
 
異常検知と変化検知 9章 部分空間法による変化点検知
異常検知と変化検知 9章 部分空間法による変化点検知異常検知と変化検知 9章 部分空間法による変化点検知
異常検知と変化検知 9章 部分空間法による変化点検知hagino 3000
 
PRML輪読#1
PRML輪読#1PRML輪読#1
PRML輪読#1matsuolab
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説弘毅 露崎
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展Shiga University, RIKEN
 
バンディット問題について
バンディット問題についてバンディット問題について
バンディット問題についてjkomiyama
 
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布Nagayoshi Yamashita
 
統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333Issei Kurahashi
 
比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!takehikoihayashi
 
ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門Miyoshi Yuya
 
Fisher線形判別分析とFisher Weight Maps
Fisher線形判別分析とFisher Weight MapsFisher線形判別分析とFisher Weight Maps
Fisher線形判別分析とFisher Weight MapsTakao Yamanaka
 

What's hot (20)

データ解析13 線形判別分析
データ解析13 線形判別分析データ解析13 線形判別分析
データ解析13 線形判別分析
 
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算
 
ベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づけるベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づける
 
2 3.GLMの基礎
2 3.GLMの基礎2 3.GLMの基礎
2 3.GLMの基礎
 
PRML読み会第一章
PRML読み会第一章PRML読み会第一章
PRML読み会第一章
 
階層ベイズとWAIC
階層ベイズとWAIC階層ベイズとWAIC
階層ベイズとWAIC
 
機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)
 
【解説】 一般逆行列
【解説】 一般逆行列【解説】 一般逆行列
【解説】 一般逆行列
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
 
WBICによる混合正規分布の分離と抽出
WBICによる混合正規分布の分離と抽出WBICによる混合正規分布の分離と抽出
WBICによる混合正規分布の分離と抽出
 
異常検知と変化検知 9章 部分空間法による変化点検知
異常検知と変化検知 9章 部分空間法による変化点検知異常検知と変化検知 9章 部分空間法による変化点検知
異常検知と変化検知 9章 部分空間法による変化点検知
 
PRML輪読#1
PRML輪読#1PRML輪読#1
PRML輪読#1
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
 
バンディット問題について
バンディット問題についてバンディット問題について
バンディット問題について
 
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布
 
統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333統計的因果推論 勉強用 isseing333
統計的因果推論 勉強用 isseing333
 
比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!
 
ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門
 
Fisher線形判別分析とFisher Weight Maps
Fisher線形判別分析とFisher Weight MapsFisher線形判別分析とFisher Weight Maps
Fisher線形判別分析とFisher Weight Maps
 

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