icml2013読み会 local deep kernel learning for efficient non-linear svm prediction

24
Local Deep Kernel Learning for Efficient Non-linear SVM Prediction 読み人: 得居 誠也 @beam2d (Preferred Infrastructure) 2013-07-09 ICML’13読み会 Cijo Jose*, Prasoon Goyal*, Parv Aggrwal*, Manik Varma** * Indian Institute of Technology Dehli ** Microsoft Research India

Upload: seiya-tokui

Post on 21-Jun-2015

5.782 views

Category:

Technology


2 download

DESCRIPTION

2013/7/9に東大で行われたICML2013読み会の発表資料です。

TRANSCRIPT

Page 1: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Deep Kernel Learningfor Efficient Non-linear SVM Prediction

読み人: 得居 誠也 @beam2d(Preferred Infrastructure)

2013-07-09

ICML’13読み会

Cijo Jose*, Prasoon Goyal*, Parv Aggrwal*, Manik Varma*** Indian Institute of Technology Dehli** Microsoft Research India

Page 2: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

目的: 予測がそこそこ速い非線形分類器

線形分類器 欲しい! カーネルSVM

分類速度 速い そこそこ速い 遅い

低次元で複雑な分類 不可能 そこそこ

できる可能

(カーネルによる)

•線形分類器より速く!という話ではない• anytimeとかではない

Page 3: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

既存手法

局所的な分類器: 既存研究あり• Locally Linear SVM [Ladicky+, ICML’11]•複数の線形分類器を, 場所ごとに異なる重み付けで足し合わせる•重み付けはLocal Coordinate Codingなど(unsupervised)

非線形SVMの分類を速くする話は他にもいろいろ•サポートベクトルを少なくする•ランダム埋め込み

Page 4: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Locally Linear SVM [Ladicky+, ICML’11]

min

W

2

kW k2+ 1

|S|X

k2S

⇠k

s.t. 8k 2 S, ⇠k � max(0, 1� yk�(xk)tWxk).

Page 5: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

LDKLのアプローチ局所線形な分類器+二分木による空間分割

•局所線形な分類器, 目的関数はSVMと同じ•各点でどの分類器を使うかは二分木を探索して得る•空間分割も一緒に学習する(LLSVMでは事前に教師なし学習だった)•主空間で最適化•最適化はSGD

•特徴写像が高速なカーネルを一緒に学習するSVM, と思うこともできる

Page 6: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

LDKLのカーネル=局所カーネル×大域カーネル

K(xi,xj) = KL(xi,xj)KG(xi,xj)

Local Kernel(特徴写像 )�L

Global Kernel(特徴写像 )�G

• の特徴写像は    (クロネッカー積)•今回は      とする(線形カーネル)- 特徴写像を陽に書ければなんでも良い- e.g.)

K �L ⌦ �G

�G(x) = x

�G(x) = x⌦ x

Page 7: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

Page 8: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x sign(✓t

1x)

Page 9: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x sign(✓t

1x)

Page 10: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x sign(✓t

2x)

Page 11: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x sign(✓t

2x)

Page 12: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x sign(✓t

5x)

Page 13: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x sign(✓t

5x)

Page 14: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

分岐パラメータとの内積の正負で左右に下っていく

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x

Page 15: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

Local Kernel: 木構造の特徴写像

+ -

+ +

+ + + +

- -

- - - -

通過した頂点ごとに重みの係数  を計算する

✓1

✓2 ✓3

✓4 ✓5 ✓6 ✓7

入力x ✓0

1

✓02 ✓0

3

✓04 ✓0

5 ✓06 ✓0

7

✓08 ✓0

9 ✓010 ✓0

11 ✓012 ✓0

13 ✓014 ✓0

15

�Lk(x) = tanh(�✓0tkx)Ik(x)

ノードkを通過したら1

�Lk

Page 16: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

LDKLの目的関数パラメータの種類ごとに正則化するSVM

minW,⇥,⇥0

P (W,⇥,⇥0) =

�W

2Tr(W tW ) +

�⇥

2Tr(⇥t⇥) +

�⇥0

2Tr(⇥0t⇥0)

+NX

i=1

L(yi,�tL(xi)W

txi).

•損失関数はヒンジ損失•大文字のパラメータは, 小文字のパラメータを並べた行列

L(y, y) = max(0, 1� yy)

Page 17: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

LDKLの最適化は主空間でのSGD

rwkP (xi) = �Wwk � �iyi�Lk(xi)xi,

r✓kP (xi) = �⇥✓k � �iyiX

l

tanh(�✓0tl xi)r✓kIl(xi)w

tlxi

r✓0kP (xi) = �⇥0

0k � �iyi�(1� tanh2(�✓0t

kxi))Ik(xi)wtkxixi.

• =   のマージンが1未満なら1, そうでなければ0•下線部以外は簡単に計算できる�i xi

勾配は次式

Page 18: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

空間分割の最適化sign関数を緩和

Ik(x) =Y

l2Ancestors(k)

1

2(sign(✓t

lx) + (�1)C(l)).

  を陽に書き下すとIk 右に行くか左に行くか (1 or 0)

signの部分を最適化できるように緩和:

Ik(x) =Y

l2Ancestors(k)

1

2(tanh(sI✓

tlx) + (�1)C(l)).

r✓lIk(x) = Ik(x)(tanh(sI✓tlx) + (�1)C(l))�l2Ancestors(k)

sIx.

Page 19: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

緩和パラメータを変えながら最適化(焼きなまし?)

Ik(x) =Y

l2Ancestors(k)

1

2(tanh(sI✓

tlx) + (�1)C(l)).

• が小さいと  の値は 0 から遠くなる- 木の全体を探索しないといけない- 最初はそうしないと空間分割を最適化できない•そこで最適化が進むにつれ  を大きくしていく

sI Ik

sI

Page 20: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

実験

Page 21: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

実験

Page 22: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

実験

Page 23: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

まとめ

• LDKLは, 分類がそこそこ速い非線形分類器• LLSVMに似ている- LDKLでは重み付けも一緒に最適化- 二分木を使ったモデルで, ノード数Mに対して分類速度がO(log M)

•主空間のSGD, オンラインで動く•精度はRBF-SVMよりちょい悪い•同じ分類速度では他の高速化手法よりも高い精度

Page 24: ICML2013読み会 Local Deep Kernel Learning for Efficient Non-linear SVM Prediction

その他

• Fastfood [Le+, ICML’13]とは(当然)比較なし- 乱択埋め込みによるカーネル近似の新しいやつ- アダマール行列をうまく使う