1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待...

29
1. カーネル法への招待 正定値カーネルによるデータ解析 - カーネル法の基礎と展開 - 福水健次 統計数理研究所/総合研究大学院大学 1 統計数理研究所 公開講座 2011113,14

Upload: others

Post on 28-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

1. カーネル法への招待

正定値カーネルによるデータ解析- カーネル法の基礎と展開 -

福水健次統計数理研究所/総合研究大学院大学

1

統計数理研究所 公開講座2011年1月13,14日

Page 2: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

概要

• カーネル法の基本

– 線形データ解析と非線形データ解析

– カーネル法の原理

• カーネル法の2つの例

– カーネル主成分分析: PCAの非線形拡張

– リッジ回帰とそのカーネル化

2

Page 3: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

概要

• カーネル法の基本

– 線形データ解析と非線形データ解析

– カーネル法の原理

• カーネル法の2つの例

– カーネル主成分分析: PCAの非線形拡張

– リッジ回帰とそのカーネル化

3

Page 4: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

データ解析とは?Analysis of data is a process of inspecting, cleaning,

transforming, and modeling data with the goal of highlighting useful information, suggesting conclusions, and supporting decision making. – Wikipedia

4

Page 5: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

線形データ解析

– データは数値の「テーブル」として与えられることが多い.行列表現

– データ解析には線形代数が主な数学的道具

• 相関 Correlation,• 線形回帰 Linear regression analysis,• 主成分分析 Principal component analysis,• 正準相関分析 Canonical correlation analysis, etc.

5

=

)()(1

)2()2(1

)1()1(1

Nm

N

m

m

XX

XXXX

X m dimensional, N data

Page 6: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

• Example 1: Principal component analysis (PCA)

X(1) , ..., X(N) : m-次元のデータ

PCA: 分散が最大になるようにd-次元の部分空間へ射影する

6

Page 7: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

– 第1主軸 =

– General solution:u1, ..., uN: VXX の固有ベクトル(固有値の降順)• 第p主軸 = up

• X(i)の第p 主成分 = upTX(i)

– 「PCA 固有値分解 (線形代数)」

7

][Varargmax 1|||| XaTa =

∑ ∑=

=

−=

N

i

N

jjiTT X

NXa

NXa

1

2

1)()( 11][Var .aVa XX

T=

∑ ∑∑=

==

−=

N

i

TN

jjiN

jji X

NXX

NX

N 11

)()(1

)()( 111XXV

(標本)共分散行列

Page 8: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

• Example 2: Linear classification– 2値識別

線形識別関数による方法:

so that

– Example: Fisher線形判別分析,(線形)サポートベクターマシン, etc.

8

=

)()(1

)2()2(1

)1()1(1

Nm

N

m

m

XX

XXXX

X

Input data

N

NY

YY

Y 1

)(

)2(

)1(

±∈

=

Class label

( )bxaxh T += sgn)()()( )( ii YXh = for all (or most) i.

Page 9: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

線形で十分か?

9

-6 -4 -2 0 2 4 6-6

-4

-2

0

2

4

6

x1

x2

Unclear? Watch the following movie! http://jp.youtube.com/watch?v=3liCbRZPrZA

linearly inseparable

0

5

10

15

20 0

5

10

15

20

-15

-10

-5

0

5

10

15

z1

z3

z2

transform

)2,,(),,( 2122

21321 xxxxzzz =

linearly separable

Page 10: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

• Another example: correlation

10

][][],[YVarXVar

YXCovXY =ρ ( )( )[ ]

( )[ ] ( )[ ]22 ][][][][YEYEXEXE

YEYXEXE−−

−−=

-3 -2 -1 0 1 2 3-3

-2

-1

0

1

2

3

X

Y

ρ = 0.94

Page 11: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

11

-1.5 -1 -0.5 0 0.5 1 1.5-0.5

0

0.5

1

1.5

2

2.5

X

Y ρ( X, Y ) = 0.17

(X, Y)

0 0.5 1 1.5 2 2.5-0.5

0

0.5

1

1.5

2

2.5

ρ( X2,Y )= 0.96

transform (X2, Y)

データの非線形変換によって高次モーメントを抽出するアプローチが有効そうである.

Page 12: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

データの非線形変換

Analysis of data is a process of inspecting, cleaning, transforming, and modeling data with the goal of highlighting useful information, suggesting conclusions, and supporting decision making.

Wikipedia.

カーネル法 = データの非線形性あるいは高次の情報を扱うための非線形変換の系統的方法論.

12

Page 13: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

概要

• カーネル法の基本

– 線形データ解析と非線形データ解析

– カーネル法の原理

• カーネル法の2つの例

– カーネル主成分分析: PCAの非線形拡張

– リッジ回帰とそのカーネル化

13

Page 14: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

カーネル法の概観

– どのような変換(特徴写像)がよいか?• 元のデータのさまざまな非線形性が抽出できる.• 特徴空間で,内積が計算しやすい.

多くの線形データ解析手法は,内積計算に拠っている.

14

特徴空間

xiΦ Hk

Ω xj

,ixφ

jxφ

データの空間

特徴写像

特徴空間で線形のデータ解析を行う!e.g. SVM

Page 15: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

• 計算論的な問題

– もちろん高次項を並べてもよいが,,,

(X, Y, Z) (X, Y, Z, X2, Y2, Z2, XY, YZ, ZX, …)

– 元のデータが高次元だと計算量爆発!

e.g. 元のデータが100 次元のとき,3次まで取ると,特徴ベクトルの次元は

100C1 + 100C2 + 100C3 = 166750.

– 現在の計算機を持ってしても,行列演算は困難.より効率的な方法 カーネル法.

15

Page 16: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

正定値カーネルによる内積計算

– 特徴写像:

– 特徴写像をうまく選択すると,特徴空間での内積が正定値カーネル k(x, y) により与えられる

– 多くの線形データ解析手法では,内積の値のみが必要で, 特徴ベクトル Φ(X) の形は知らなくてもよい.(e.g. PCA.後述)

16

),()(),( jiji XXkXX =ΦΦ

H→ΩΦ :

kernel trick.

Page 17: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

概要

• カーネル法の基本

– 線形データ解析と非線形データ解析

– カーネル法の原理

• カーネル法の2つの例

– カーネル主成分分析: PCAの非線形拡張

– リッジ回帰とそのカーネル化

17

Page 18: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

PCA から Kernel PCAへ

– PCA: 線形の次元削減法.– Kernel PCA: 非線形な次元削減法 (Schölkopf et al. 1998).

– Review of PCA

• PCAの計算

– 方向ベクトルa とデータの内積

– 目的関数の最適化(固有値問題に還元される)

18

∑ ∑=

=

−=

N

i

N

jjiTT X

NXa

NXa

1

2

1)()( 11][Var:max 1|||| =a

Page 19: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

– 特徴空間でのPCA• 特徴ベクトル:

• 仮定:

– 特徴空間 H は内積 を持ち,特徴ベクトルの内積が

• 目的関数:

19

∑=

Φ=ΦN

i

iXfN

Xf1

2)( )(~,1])(,[Var:max 1|||| =f

),()(),( jiji XXkXX =ΦΦ

により計算可能

)(,),(,, )()1()()1( NN XXXX ΦΦ→

f: 特徴空間 H 内での方向ベクトル

∑ =Φ−Φ=Φ

N

jjii X

NXX

1)()()( )(1)()(~

ただし

(kernel trick)

,

Page 20: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

– 解は次の形で十分

∵) 空間 H を特徴ベクトル の張る部分空間 H0 と,その直交補空間 H0

⊥に直交分解:

方向ベクトル f を

と表わすと,目的関数は

h = 0の時が最適.

20

∑=

Φ=N

i

ii Xcf

1

)( )(~

∑=

=+Φ

N

i

ihg Xg

N 1

2)(1||||||||

)(~,1max 22

,hgf +=

)(~),...,(~ )()1( NXX ΦΦ

.00⊥⊕= HHH

),( 00⊥∈∈ HhHg

=Φ∑=

=

N

i

if Xf

N 1

2)(1||||

)(~,1max 2

Page 21: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

– 内積計算:

• ノルム2

• 分散

– 目的関数

21

cKcf T ~|||| 2=

∑ =−=

N

bbiji

ij XXkN

XXkK1

)()()()( ),(1),(~

∑∑ ==+−

N

babaN

aja XXk

NXXk

N 1,)()(

21)()( ),(1),(1

中心化グラム行列(centered Gram matrix)

cKcXXcXf Ti

ij

jji

i 22

)()(2)( ~)(~,)(~)(~, =ΦΦ=Φ ∑ ∑∑

cKcT 2~max subject to* 1~ =cKcT

Kernel PCA:

∑=Φ=

N

ii

i Xcf1

)( )(~

*) “subject to” は,最適化問題で制約条件を書くときの慣用句.

Page 22: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

– Kernel PCA も固有値問題に還元される

– Kernel PCA アルゴリズム

• 行列 の計算

• の固有値分解

• 第p主軸

• X(i)の第p主成分

22

K~

∑==

N

iTiii uuK

1

~ λ

021 ≥≥≥≥ Nλλλ eigenvalues

unit eigenvectorsNuuu ,,, 21

K~

)()( )(~, iTpp

ip XuXf λ=Φ=

pp

pN

iii

pp ucXcf

λ1,)(~

1)( =Φ=∑ =

Page 23: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

– 内積計算のチェック: for •

23

cKcf T ~|||| 2=

cKcXf Ti

i 22)( ~)(~, =Φ∑

∑∑ ∑ ΦΦ=ΦΦ=ji

jijii j

jj

ii XXccXcXcf

.)()()()(2 )(~),(~)(~),(~

)(~),(~:~ )()( jiij XXK ΦΦ= を展開せよ.

∑=

Φ=N

i

ii Xcf

1

)( )(~

∑∑ Φ−ΦΦ−Φ=b bNja aNiij XXXXK )()(,)()(~ 11

∑∑ ΦΦ+ΦΦ−ba baNb biN XXXX

,11 )(),()(),( 2

∑ ΦΦ−ΦΦ=a jaNji XXXX )(),()(),( 1

∑∑∑ +−−=ba baNb biNa jaNji XXkXXkXXkXXk

,111 ),(),(),(),( 2

上と同様に計算できる([Exercise])

Page 24: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

24

リッジ回帰

• 線形回帰(復習)

問題

データ行列

最適解

最適な関数

=

=

NNm

N

m

m

Y

YY

Y

XX

XXXX

X

2

1

1

221

111

,

),(,),,( )()()1()1( NN YXYX

RR ∈∈ )()( , imi YX

∑=−

N

ii

wi XfY

12)()( ))((min

を達成する線形関数 fw(x) = wTx

YXXXw TT 1)(ˆ −=

xXXXYxf TTw

1ˆ )()( −=

X

Y

Page 25: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

25

• リッジ回帰(Ridge regression)

– 問題

最適解は

最適な関数は

– リッジ回帰は、XTX が特異また特異に近いときによく使われる.

– Bayes的な解釈もできる(正則化:後述)

2

12)()( ))((min wXfYN

ii

wi λ+−∑ =

を達成する線形関数 fw(x) = wTx

YXIXXw TN

T 1)(ˆ −+= λ

xIXXXYxf NTT

w1

ˆ )()( −+= λ

Page 26: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

リッジ回帰のカーネル化

– Data:X(i): 任意の集合 Ω に値を持つ. Y(i) ∈ R

– 特徴写像

• 仮定:

– 特徴空間 H は内積 を持ち,特徴ベクトルの内積が

– 特徴空間 H におけるリッジ回帰

26

),(,),,( )()()1()1( NN YXYX

)(,),(,, )()1()()1( NN XXXX ΦΦ→

),()(),( )()()()( jiji XXkXX =ΦΦ

により計算可能

(kernel trick)

,

( ) 2

1

2)()( )(,minH

N

iii

HffXfY λ+Φ−∑=∈

Page 27: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

– 最適解:は以下の形を持つ

∵)データ Φ(Xi) の張る H の部分空間をH 0,直交補空間をH ⊥とするとき,f = h0 + h1 の分解で,目的関数の第1項は h0 のみに依存.第2項は || f ||2 = || h0 ||2 + || h1 ||2 により h1 = 0のときが最適.

– 内積計算

• 2乗ノルム:

• 線形関数:

– カーネルリッジ回帰

最適解

27

KccKcY T

c Nλ+−

2minR

),()()( 1 xIKYxf NT k−+= λ

Kij = k(X i, X j) グラム行列Kccf T=2||||

ii

jj

ji KcXXcXf )()(,)()(, )()()( =ΦΦ=Φ ∑

∑=Φ=

N

ii

i Xcf1

)( )(

=),(

),()(

)(

)1(

NXxk

Xxkx k

[Exercise] 導出を確認せよ.

Page 28: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

カーネル法の原理

– 特徴写像によって,内積 を持つ特徴空間Hにデータを写像する.

– 特徴ベクトル に,H 上で線形の解析手法を適用する.

– 多くの場合,最適解(H の元)は次の形を持つことがわかる.

– 問題は,内積 を用いて表現される.

– カーネル法では,上の内積が

によって効率的に計算される.基底による展開や表示は必要ない.

28

)(,),(,, )()1()()1( NN XXXX ΦΦ→

,

∑ Φ=i

ii Xcf )( )(

),()(),( )()()()( jiji XXkXX =ΦΦ

)(),( )()( ji XX ΦΦ

(kernel trick)

Ni

iX 1)( )( =Φ

Page 29: 1. カーネル法への招待 - 統計数理研究所1. カーネル法への招待 正定値カーネルによるデータ解析 -カーネル法の基礎と展開- 福水健次

Question:カーネルトリック

を満たすような,特徴写像 Φ と k はどのようなものか?

正定値カーネル

29

),()(),( yxkyx =ΦΦ