第 7 章 疎な解を持つカーネルマシン

28
第7第 第第第第第第第第第第第第第 修修 修修修修

Upload: hila

Post on 03-Feb-2016

131 views

Category:

Documents


1 download

DESCRIPTION

第 7 章 疎な解を持つカーネルマシン. 修士2年 山川佳洋. 本章の概要. SVM (Support vector machine) -識別関数の一種 ( 出力の事後確率は不明 ) -モデルパラメータの局所解が大域解になる RVM (Random vector machine) -ベイズ理論に基づき事後確率の推定が可能 - SVM よりさらに疎なモデルが得られる. SVM の種類. 線形 SVM -線形分離可能 -線形分離不可能 非線形 SVM. 非線形 SVM 例. 訓練データ点が 特徴空間     において 線形分離可能 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第 7 章 疎な解を持つカーネルマシン

第 7章 疎な解を持つカーネルマシン

修士2年山川佳洋

Page 2: 第 7 章 疎な解を持つカーネルマシン

本章の概要

SVM (Support vector machine)

-識別関数の一種 ( 出力の事後確率は不明 )-モデルパラメータの局所解が大域解になる RVM (Random vector machine)

-ベイズ理論に基づき事後確率の推定が可能- SVM よりさらに疎なモデルが得られる

Page 3: 第 7 章 疎な解を持つカーネルマシン

SVM の種類

線形 SVM-線形分離可能-線形分離不可能 非線形 SVM

Page 4: 第 7 章 疎な解を持つカーネルマシン

非線形 SVM 例

訓練データ点が特徴空間    において線形分離可能得られる SVM は入力空間  において訓練データを完全に分離する ( 入力空間においては分離境界は非線形にもなり得る )

xx

x

x

Page 5: 第 7 章 疎な解を持つカーネルマシン

クラス判別と SVM

1.7by xwx T

2値分類 ( クラス分類 ) 問題を解く x :特徴空間変換関数

b :バイアスパラメータ

訓練データ Nxx ,...,1

目標値 1,1,...,1 nN ttt

x

xy未知のデータ点   を

の符号に応じて分類

Page 6: 第 7 章 疎な解を持つカーネルマシン

最大マージン分類器

線形分離可能な場合

パラメータ が存在b,w

0.1

0.1

nnn

nnn

ytsxt

ytsxt

x

x

0nn yt xまとめて

一般的には解は多数存在する

汎化誤差がもっとも小さくなるような解を求める

マージン (margin) を最大化する

Page 7: 第 7 章 疎な解を持つカーネルマシン

マージン最大化定式化

2.7w

xw

w

x nTn btyt nn

3.7min1

maxarg,

bt nnb

xww

T

w

4.71bt nn xwT 5.7.,...,1,1 Nnbt nn xwT

超平面 0xy から点  までの距離はx w

xy

線形分離可能の仮定から 0xytn

分解境界から点  までの距離はnx

マージンを最大化する最適化問題

境界に最も近い点について

全ての点について

Page 8: 第 7 章 疎な解を持つカーネルマシン

マージン最大化問題

6.72

1minarg

2

,

ww b

7.712

1,,

1

2

N

n

nnn btabL xwwaw T

8.71

N

n

nnnta xw 9.701

N

n

nnta

マージン最大化問題は以下の問題に帰着される

二次計画法の一例→  線形不等式系で与えられる制約条件の下で   二次関数を最小化する問題

制約付き最適化問題を解くため,ラグランジュ乗数を導入する

0,...,1 nT

N aaaa

b,w に関する停留条件

Page 9: 第 7 章 疎な解を持つカーネルマシン

マージン最大化問題の双対表現

10.7.,2

1~

1 11

N

n

N

m

mnmnmn

N

n

n kttaaaL xxa

11.7,,...,1,0 Nnan

12.7.01

N

n

nnta

(7.6) の双対表現

制約条件

aに関して最大化

この問題は再び二次計画法になっている ( 最適化変数は   )a

双対表現主問題 (Primary   problem)M変数, N 制約式

双対問題 (Dual   problem)N 変数,M制約式

mTnmnk xxxx ,

以下のカーネル関数を用いた

Page 10: 第 7 章 疎な解を持つカーネルマシン

カーネルトリック

x

mTnmnk xxxx ,

カーネル関数

カーネル関数が定義されていれば    の具体的な形を知る必要はない

例 )

2

2

2exp,

1,

mn

mn

pm

tnmn

k

k

xxxx

xxxx

10.7.,2

1~

1 11

N

n

N

m

mnmnmn

N

n

n kttaaaL xxa

t

mtnm

tnmn

t

xxxxxxxxxxxx

k

xx

32

31

2212

2121

22

2121

3

21

,,3,3,6,3,3,3,3,1

1,

,

x

xxxxxx

x

Page 11: 第 7 章 疎な解を持つカーネルマシン

サポートベクトル

13.7,1

N

n

nnn bktay xxx

14.70na

15.701nn yt x

16.701 nnn yta x

学習したモデルで新しいデータ点を分類するには

このときKKT条件は

10 nnn ytora x

0na がデータ点の予測に影響 サポートベクトル

一度モデルを学習してしまえばサポートベクトル以外の訓練データは不要

Page 12: 第 7 章 疎な解を持つカーネルマシン

バイアスパラメータの算出

17.71,

Sm

mnmmn bktat xx

18.7.1

,

Sn Sm

mnmmnS

ktatN

b xx

二次計画問題を解き  が求まるとバイアスパラメータ  を求めることができるa b

S:サポートベクトルの集合

SN:サポートベクトルの総数

Page 13: 第 7 章 疎な解を持つカーネルマシン

線形分離不可能な場合への拡張ここまでの仮定

訓練データ点が特徴空間    において線形分離可能得られる SVM は入力空間  において訓練データを完全に分離する ( 入力空間においては分離境界は非線形にもなり得る )

xx

一部の訓練データの誤分類を許すように修正

訓練データを完全に分離する解が必ずしも汎化能力に優れるとは限らない

誤って分類したデータにはマージンの境界からの距離に比例したペナルティを与える

スラック変数 Nnn ,...,10

データが正しく分類 0n nnn yt xそれ以外

Page 14: 第 7 章 疎な解を持つカーネルマシン

ペナルティ項を加えた定式化

21.7.2

1 2

1

w

N

n

nC

20.7.,...,1,1 Nnyt nnn x

識別関数 (7.5) を修正

Nnn ,...,10

ハードマージンからソフトマージンへの緩和

目的はペナルティを与えつつもマージンを最大化するよって次式を最小化する

C:ペナルティとマージンの大きさの トレードオフを制御するパラメータ

n:誤分類されたデータの上限

Page 15: 第 7 章 疎な解を持つカーネルマシン

最小化問題のラグランジュ関数

23.70na 24.701 nnn yt x

25.701 nnnn yta x

26.70n 27.70n 28.70nn

N

n

N

n

N

n

nnnnnnn ytaC

bL

1 1 1

222.71

2

1

,,,,

xw

aw

KKT 条件

ラグランジュ関数

Page 16: 第 7 章 疎な解を持つカーネルマシン

最小化問題の双対表現

29.701

N

n

nnntaL

xww

30.7001

N

n

nntab

L

31.70 nn CaL

32.7.,2

1~

1 11

N

n

N

m

mnmnmn

N

n

n kttaaaL xxa

についての停留条件 nb ,,w

双対形のラグランジュ関数 33.70 Can

34.701

N

n

nnta

制約条件

Page 17: 第 7 章 疎な解を持つカーネルマシン

サポートベクトル

35.71 nnn yt x

サポートベクトルについては 0na

さらに 31.70 nn Ca 28.700 nn

Can 0 のサポートベクトルでは 10 nnn yt x

36.71,

Sm

mnmmn bktat xx

Mn Sm

mnmmnM

ktatN

b 37.7.1

,xx

先ほどと同様に

Page 18: 第 7 章 疎な解を持つカーネルマシン

SVM を解くアルゴリズム

分類予測時と異なり,パラメータを学習する段階ではサポートベクトルでなく全ての訓練データの情報が必要

実用上, SVM の二次計画法を効率的に解くアルゴリズムが必要

チャンギングを利用 保護共役勾配法 (Burges, 1982) 分解法 (Osuna et al., 1996) 逐次最小問題最適化法 (SMO ; sequential minimal optimizati

on)(Platt,1999) 32.7.,

2

1~

1 11

N

n

N

m

mnmnmn

N

n

n kttaaaL xxa

Page 19: 第 7 章 疎な解を持つカーネルマシン

SMO について

計算効率 ( 計算時間の飛躍的減少 ) のため,最もよく使われる SVM の最適化の手法

たった2つのラグランジュ乗数を含む部分問題を逐次解いていくことで最終的な解を得る

2変数の選び方にはいくつかヒューリスティックが存在する

計算時間 ( データ数の1~2乗 )( 一般的にデータの3乗 )

Page 20: 第 7 章 疎な解を持つカーネルマシン

SMO の定式

.

~,

2

1,

~

21

212121

54

322

1

1 1 1

,21

Constii

iiiniii

N

n

N

n

M

m

mnmnmnnii

Lafaf

aafafafaa

kttaaaaaL

xx

N

iiii

iiii

N

n

nn Consttaaata

21 ,1

21

1

0

制約条件

目的関数

2 変数の 2 次関数 1 変数の 2 次関数

すべての  が KTT 条件を満たせば最適解となり終了ia

Page 21: 第 7 章 疎な解を持つカーネルマシン

SMO続き

部分問題で取り上げる 2 変数の選び方

1.  を探索していき, KTT 条件を満たしていない を選択する.この時点で全ての が KTT 条件を満たす場合は,その時点で最適解となり,学習は終了となる.

2. ⅰ)  を選択する際に,まず     を満たし,かつ   が                                        最大になる を選択する.ⅱ )      を満たす がない場合には,   または   になる を選択する.ⅲ )ⅰ) ,ⅱ ) がない場合,ランダムに を選択する.

3. 選択された   で目的関数を解き,最適解が得られたら再び   を選択する.

1iaa

2ia Cai 20

02 iaCai 2

12 ii aa

21 , ii aa

1ia

2ia

Cai 20 2ia

2ia

2ia

21 , ii aa

Page 22: 第 7 章 疎な解を持つカーネルマシン

SVM にまつわるその他のトピック

ロジスティック回帰との関係 多クラス SVM-1対他 (one-versus-the-rest)方式-1対1 (one-versus-one)方式 回帰のための SVM

Page 23: 第 7 章 疎な解を持つカーネルマシン

SVM の問題点

多クラス識別が難しい 2次計画法を解くための計算量 カーネルの選択-カーネルの最適型-カーネルの持つパラメータの最適値-ペナルティとマージンの制御パラメータ→実験で求める

Page 24: 第 7 章 疎な解を持つカーネルマシン

何に使えるか

BCALs の移動-滞在判定

Page 25: 第 7 章 疎な解を持つカーネルマシン

ラグランジュ乗数 その1 複数の変数に1つ以上の制約条件が課せられたときに,

関数の停留点を求めるために用いられる.

例1) 0,..,max 2121 xxgtsxxf

0xg

xf

Ax

xg 3.00 Egf

ラグランジュ関数

4., EgfL xxx

,xL ,xの に対する停留点を求める

0,0

LL

x

Page 26: 第 7 章 疎な解を持つカーネルマシン

例2) 0,..,max 2121 xxgtsxxf

ⅰ) 停留点が 0xg

0xgⅱ) 停留点が

制約が無効 停留条件 0 xf

解が制約面        上に存在 0xg 以前の停留条件に等しい

ラグランジュ乗数 その2

0 xx gf が存在してさらに

0の停留条件に等しい

いずれにしろ 0xg

Page 27: 第 7 章 疎な解を持つカーネルマシン

ラグランジュ乗数 その3

例2) 0,..,max 2121 xxgtsxxf

以下の条件でラグランジュ関数 (E.4) の停留点を求める

0

0

0

x

x

g

g

これを Karush-Kuhn-Tucker 条件 (KKT 条件 ) という

Page 28: 第 7 章 疎な解を持つカーネルマシン

何となく気になったこと