カーネル近似のNystroemメソッド


12

低ランクのカーネル近似のためのNyströmメソッドについて読んでいます。この方法は、データサンプルをカーネル機能マッピングの低ランクの近似に投影する方法として、scikit-learn [1]に実装されています。

私の知る限り、トレーニングセットとカーネル関数を指定すると、WCに SVDを適用することにより、n × nカーネル行列Kの低ランクの近似が生成されます。{xi}i=1nn×nKWC

C = [ W K 21 ] W R L × LK=[WK21TK21K22] C=[WK21]WRl×l

ただし、カーネルマトリックスの低ランクの近似を使用して、新しいサンプルを近似カーネル機能空間に投影する方法がわかりません。私が見つけた論文(たとえば[2])は、教訓がほとんどないため、あまり役に立ちません。

また、トレーニング段階とテスト段階の両方で、この方法の計算の複雑さに興味があります。

[1] http://scikit-learn.org/stable/modules/kernel_approximation.html#nystroem-kernel-approx

[2] http://www.jmlr.org/papers/volume13/kumar12a/kumar12a.pdf

回答:


15

質問への回答をより明確にするような方法で、ニストロム近似を導き出しましょう。

Nyströmの主要な仮定は、カーネル関数が階級であるということです。(実際には、ランクmほぼ同じであると想定していますが、簡単にするために、今のところ正確にランクmであるとしましょう。)つまりカーネル行列は最大でm、特に K = [ k x 1x 1k x 1x nk x nmmmm はランクmです。したがって、あるm個の非ゼロ固有値は、我々は、の固有値分解書くことができるKのように K=UΛUT に記憶された固有ベクトルでU形状で、N×M、及び固有値に配置ΛM×M対角行列。

K=[k(x1,x1)k(x1,xn)k(xn,x1)k(xn,xn)],
mmK
K=UΛUT
Un×mΛm×m

mK11

K=[K11K21TK21K22],
K11m×mK21(nm)×mK22

K=UΛUT=[U1U2]Λ[U1U2]T=[U1ΛU1TU1ΛU2TU2ΛU1TU2ΛU2T],
U1m×mU2(nm)×mK11=U1ΛU1TU1ΛK11

K21=U2ΛU1TU2(ΛU1T)1=U1Λ1

U2=K21U1Λ1.
K22
K22=U2ΛU2T=(K21U1Λ1)Λ(K21U1Λ1)T=K21U1(Λ1Λ)Λ1U1TK21T=K21U1Λ1U1TK21T(*)=K21K111K21T(**)=(K21K1112)(K21K1112)T.

K22

K21K1112(nm)×mK1112mm

Φ=[K1112K21K1112].
Φ
ΦΦT=[K1112K21K1112][K1112K21K1112]T=[K1112K1112K1112K1112K21TK21K1112K1112K21K1112K1112K21T]=[K11K21TK21K21K111K21T]=K.

mΦK

xΦ

ϕ(x)=[k(x,x1)k(x,xm)]K1112.
x[k(x,x1)k(x,xm)]K21K21K1112ϕ(x)K11K11K1112=K1112Φxnew
Φtest=Ktest,1K1112.
m[KtrainKtrain,testKtest,trainKtest]mKtestK22


上記では、カーネル行列正確にランクmであると仮定しました。通常、これは当てはまりません。ガウスカーネルのために、例えば、Kがあり、常にランクnは、ために起こっているので、後者の固有値は、通常、かなり迅速に落ちる近いランクの行列M、および当社の再建K 21またはKのテストでは1が行っていますされるように近くに真の値が、まったく同じではありません。彼らは、より良い再建近いの固有空間になるだろうK 11のものになりますKmKnmK21Ktest,1K11全体。これは、正しい mポイントを選択することが実際に重要な理由です。Km

また、にゼロの固有値がある場合、逆行列を疑似逆行列に置き換えても、すべてが機能することに注意してください。あなただけの置き換えK 21と復興にK 21 K 11 K 11K11K21K21K11K11

Kmax(λi,1012)


1
AUΛUTAUΣVTA12=VΣ12VTAAVΣ12VT=UΣVTVΣ12VT=UΣ12VT=A12

1
UΣ12VT=K12UVK11UΣVTVΣ12UT=UΣ12UT

1
x12=1/xVVT

1
xm

1
xxRdxXk:X×XRϕ:XRmk(x,xi)m
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.