SlideShare a Scribd company logo
1 of 21
Download to read offline
SVMってなに? 
@smzkng 
2014/09/09
SVM(Support Vector Machine)とはなにか 
• 2クラスの分類を行うための機械学習の手法 
• マージン最大化 
→ 未学習データに対する高い汎化性能 
• カーネルトリック 
→ 非線形の問題にも対応
2クラス分類 
• 2クラスを分類する識別面 
• 識別面は無数に存在 
• どの識別面が良いか? 
• 良い識別面とは? 
• 未知のデータに対する識別 
誤差が最小 
マージン最大化
マージン最大化 
学習データの中で最も他クラス 
と近い位置にいるもの(サポー 
トベクタ)を基準として、その 
ユークリッド距離が最大になる 
ように識別面を決める 
サポートベクタ 
マージン最大化
マージン最大化 
• クラスAとクラスBを分離する 
ような線形識別関数を考える 
! 
f(xi) = !0xi + b 
• サンプルは と     
の信号に分類 
f(xi) = 0 
f(xi) = 1 
y f(xi) = 1 i = 1 yi = 1 
yi = 
( 
1 (f(xi) ! 0) 
−1 (f(xi)  0)
マージン最大化 
• サポートベクターから識別面に下 
ろした垂線の距離 
! 
• これを最大化する 
• この時、以下の制約条件を設ける 
f(xi) = 0 
f(xi) = 1 
f(xi) = 1 
d = |!0xi + b| 
k!k 
= 
1 
k!k 
1 
k!k 
1 
k!k 
1 
k!k 
yi(!0xi + b)  1
マージン最大化 
ここまでのまとめ 
マージン の最大化のために 
制約条件: のもとで 
目的関数:   を最小化する 
! 
! 
1 
k!k 
yi(!0xi + b)  1 
1/k!k 
k!k2 
2 
制約のもとでの最適化問題→ラグランジュ未定乗数法 
ををに変換しているのは計算上の都合 
k!k k!k2/2
マージン最大化 
次のようなラグランジュ関数を定義する 
L(!, b, ) = 
1 
2k!k2 − 
Xn 
iyi((!0xi + b) − 1) 
! 
上の式を と について偏微分すると以下の結果を得る 
! 
1 
k!k 
i 
Xn 
i 
iyi = 0 
! = 
Xn 
! 
i 
この結果をラグランジュ関数に代入すると以下の式が導かれる 
iyixi 
!  
L() = 
Xn 
i 
i  
1 
2 
Xn 
i,j 
ijyiyjxi0xj
マージン最大化 
 を最大化する問題へ 
! 
制約条件は以下 
! 
! 
! 
1 
k!k 
 
L() = 
Xn 
i 
i  
1 
2 
Xn 
i,j 
ijyiyjxi0xj 
i  0, 
Xn 
i 
iyi = 0 
最適な ! と b 
を求める問題が、 
最適な  
を求める問題に帰着
マージン最大化 
さっきの最適化問題を解いて、最適な を求めた後に最適なパラメー 
タを求める。 
! 
! 
ただし、 
! 
1 
k!k 
⇤ 
!⇤ = 
Xn 
i 
⇤i 
yixi 
b⇤ = !⇤0xs  ys 
xs 
ys 
:任意のサポートベクター 
:対応する教師信号 
! 
ここまでが、クラスが完全に線形分離可能で、マージン最大化を完 
全に満たすような場合のみに適用可能なハードマージンSVM
ソフトマージンSVM 
サンプルを綺麗に分離出来ない場合がある 
? 
? 
?
ソフトマージンSVM 
制約条件を緩めて対応する 
• マージンが最大でなくても許容 
• 分離に失敗するケースがあっても許容
ソフトマージンSVM 
1 
2k!k2 + C 
Xn 
目的関数: ⇠i 
i 
制約条件: yi(!0xi + b) ! 1 − ⇠i, ⇠i ! 0 
上の目的関数と2つの制約条件のもと、ハードマージンSVMのときと 
同様にラグランジュ未定乗数法で解く。最終的にハードマージンSVM 
のときと同じ式を導くことができる。 
L() = 
Xn 
i 
i  
1 
2 
Xn 
i,j 
ijyiyjxi0xj 
違いは制約条件 
0  i  C, 
Xn 
i 
iyi = 0 
間違った領域に入っている 
データに対するペナルティ
ソフトマージンSVM 
• スラック変数とペナルティ 
• 制約条件の緩み具合を、スラック変数 ⇠ 
として表現 
• 制約条件の厳しさを、ペナルティ C 
で表現 
• C 
が小さい 
→制約条件を緩めても良い= ⇠i 
の値は大きくなる 
• C 
が大きい 
→制約条件を厳しくする= ⇠の値は小さくなる 
i
ソフトマージンSVM 
ソフトマージンSVMでは線形分 
離不可能な場合でも柔軟に対応 
できるが、必ずしも良い分類器 
になるとは限らない 
→ 識別面自体は線形なため
非線形SVM 
非線形写像で高次空間へ移してから線形判別を行う 
(x) 
(x) 
(x) 
1(x) 
1(x) 
1(x) 
x 
x 
x
非線形SVM 
• 目的関数 
• 写像先の空間では線形判別を行うため、マージン最大化の考え 
方はハードマージンSVMと同じ 
• 制約条件も目的関数も、写像先の (x) 
に変えるだけ 
• 最終的に 
L(!) = 
Xl 
i 
!i  
1 
2 
Xl 
i,j 
!i!jyiyji(x)j(x) 
ここだけ変わる
非線形SVM 
• さっきの目的関数からわかるように、式には写像空間での ( )の内積 
が含まれるため、計算コストが高い。 
• この内積を のみから計算できたら・・・ 
x (x) 
x 
• 内積計算を別の関数(カーネル関数)に置き換えることで高次元ベクト 
ル演算を避けられる。→ カーネルトリック 
• このような性質を持つカーネル関数がいくつか存在する。 
• 線形カーネル、多項式カーネル、RBFカーネル、シグモイドカーネル
さまざまなカーネル 
• 線形カーネル 
• 多項式カーネル 
• RBFカーネル 
• シグモイドカーネル 
K(xi0xj) = xi0xj 
K(xi0xj) = (!xi0xj + )d 
K(xi0xj) = exp(−kxi − xjk2) 
K(xi0xj) = tanh(!(xi0xj)  )
まとめ 
• SVMの概要 
• マージン最大化の概念 
• 線形SVM 
• ソフトマージンSVM 
• スラック変数とペナルティ 
• 非線形SVM 
• カーネルトリック 
• さまざまなカーネルの紹介
おわり

More Related Content

What's hot

KDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
KDD2014勉強会: Large-Scale High-Precision Topic Modeling on TwitterKDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
KDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twittersleepy_yoshi
 
StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9考司 小杉
 
One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知Yuto Mori
 
第七回統計学勉強会@東大駒場
第七回統計学勉強会@東大駒場第七回統計学勉強会@東大駒場
第七回統計学勉強会@東大駒場Daisuke Yoneoka
 
PRML輪読#5
PRML輪読#5PRML輪読#5
PRML輪読#5matsuolab
 
PRML輪読#7
PRML輪読#7PRML輪読#7
PRML輪読#7matsuolab
 

What's hot (6)

KDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
KDD2014勉強会: Large-Scale High-Precision Topic Modeling on TwitterKDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
KDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
 
StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9
 
One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知
 
第七回統計学勉強会@東大駒場
第七回統計学勉強会@東大駒場第七回統計学勉強会@東大駒場
第七回統計学勉強会@東大駒場
 
PRML輪読#5
PRML輪読#5PRML輪読#5
PRML輪読#5
 
PRML輪読#7
PRML輪読#7PRML輪読#7
PRML輪読#7
 

Viewers also liked

機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話Ryota Kamoshida
 
パターン認識にとっかかる
パターン認識にとっかかるパターン認識にとっかかる
パターン認識にとっかかるJun Saeki
 
今さら聞けないカーネル法とサポートベクターマシン
今さら聞けないカーネル法とサポートベクターマシン今さら聞けないカーネル法とサポートベクターマシン
今さら聞けないカーネル法とサポートベクターマシンShinya Shimizu
 
30分でわかる『R』によるデータ分析|データアーティスト
30分でわかる『R』によるデータ分析|データアーティスト30分でわかる『R』によるデータ分析|データアーティスト
30分でわかる『R』によるデータ分析|データアーティストSatoru Yamamoto
 
パターン認識と機械学習入門
パターン認識と機械学習入門パターン認識と機械学習入門
パターン認識と機械学習入門Momoko Hayamizu
 
Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」Takeshi Mikami
 
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)narumikanno0918
 
トピックモデルを用いた 潜在ファッション嗜好の推定
トピックモデルを用いた 潜在ファッション嗜好の推定トピックモデルを用いた 潜在ファッション嗜好の推定
トピックモデルを用いた 潜在ファッション嗜好の推定Takashi Kaneda
 
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-Naoki Yanai
 
Simple perceptron by TJO
Simple perceptron by TJOSimple perceptron by TJO
Simple perceptron by TJOTakashi J OZAKI
 
パターン認識 第10章 決定木
パターン認識 第10章 決定木 パターン認識 第10章 決定木
パターン認識 第10章 決定木 Miyoshi Yuya
 
バンディットアルゴリズム入門と実践
バンディットアルゴリズム入門と実践バンディットアルゴリズム入門と実践
バンディットアルゴリズム入門と実践智之 村上
 
今日から使える! みんなのクラスタリング超入門
今日から使える! みんなのクラスタリング超入門今日から使える! みんなのクラスタリング超入門
今日から使える! みんなのクラスタリング超入門toilet_lunch
 
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tatsuya Tojima
 
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京Koichi Hamada
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレストTeppei Baba
 
ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33horihorio
 
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual TalksYuya Unno
 

Viewers also liked (20)

機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話
 
パターン認識にとっかかる
パターン認識にとっかかるパターン認識にとっかかる
パターン認識にとっかかる
 
今さら聞けないカーネル法とサポートベクターマシン
今さら聞けないカーネル法とサポートベクターマシン今さら聞けないカーネル法とサポートベクターマシン
今さら聞けないカーネル法とサポートベクターマシン
 
30分でわかる『R』によるデータ分析|データアーティスト
30分でわかる『R』によるデータ分析|データアーティスト30分でわかる『R』によるデータ分析|データアーティスト
30分でわかる『R』によるデータ分析|データアーティスト
 
パターン認識と機械学習入門
パターン認識と機械学習入門パターン認識と機械学習入門
パターン認識と機械学習入門
 
Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」
 
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
 
トピックモデルを用いた 潜在ファッション嗜好の推定
トピックモデルを用いた 潜在ファッション嗜好の推定トピックモデルを用いた 潜在ファッション嗜好の推定
トピックモデルを用いた 潜在ファッション嗜好の推定
 
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
 
Simple perceptron by TJO
Simple perceptron by TJOSimple perceptron by TJO
Simple perceptron by TJO
 
パターン認識 第10章 決定木
パターン認識 第10章 決定木 パターン認識 第10章 決定木
パターン認識 第10章 決定木
 
バンディットアルゴリズム入門と実践
バンディットアルゴリズム入門と実践バンディットアルゴリズム入門と実践
バンディットアルゴリズム入門と実践
 
今日から使える! みんなのクラスタリング超入門
今日から使える! みんなのクラスタリング超入門今日から使える! みんなのクラスタリング超入門
今日から使える! みんなのクラスタリング超入門
 
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
 
決定木学習
決定木学習決定木学習
決定木学習
 
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
 
ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33
 
一般向けのDeep Learning
一般向けのDeep Learning一般向けのDeep Learning
一般向けのDeep Learning
 
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks
 

SVMってなに?