Deriviamo l'approssimazione di Nyström in modo da rendere più chiare le risposte alle vostre domande.
L'ipotesi chiave in Nyström è che la funzione del kernel sia di rango . (Supponiamo davvero che sia approssimativamente del rango m , ma per semplicità facciamo finta che sia esattamente il rango m per ora.) Ciò significa che qualsiasi matrice del kernel avrà rango al massimo m , e in particolare
K = [ k ( x 1 , x 1 ) … k ( x 1 , x n ) ⋮ ⋱ ⋮ k ( x nmmmm
è rangom. Quindi ci sonoautovalori diversi da zero, e possiamo scrivere la composizione genetica dicome
con autovettori memorizzati in, di forma, e autovalori disposti in, unadiagonalematrice.
K= ⎡⎣⎢⎢k ( x1, x1)⋮k ( xn, x1)...⋱...k ( x1, xn)⋮k ( xn, xn)⎤⎦⎥⎥,
mK K = U Λ U T U n × m Λ m × mmKK= UΛ UT
Un × mΛm × m
Quindi, scegliamo elementi, di solito in modo uniforme a caso ma possibilmente secondo altri schemi - tutto ciò che conta in questa versione semplificata è che sia di rango massimo. Una volta fatto, rietichettiamo nuovamente i punti in modo da finire con la matrice del kernel in blocchi:
dove valutiamo ogni voce in (che è m × m ) e K 21 ( ( n - m ) × m ), ma non vogliamo valutare alcuna voce in K 22 .K 11 K = [ K 11 K T 21 K 21 K 22 ] , K 11mK11
K= [ K11K21KT21K22] ,
K11m × mK21( n - m ) × mK22
Ora, possiamo suddividere la composizione elettronica in base a questa struttura a blocchi:
doveU1èm×meU2è(n-m)×m. Ma nota che ora abbiamoK11=U1ΛU T 1 . Quindi possiamo trovare
K= UΛ UT= [ U1U2] Λ [ U1U2]T= [ U1Λ UT1U2Λ UT1U1Λ UT2U2Λ UT2] ,
U1m × mU2( n - m ) × mK11= U1Λ UT1 e
Λ componendo eigendecomponendo la matrice nota
K 11 .
U1ΛK11
Sappiamo anche che . Qui, sappiamo tutto in questa equazione tranne U 2 , quindi possiamo risolvere per ciò che autovalori implica: moltiplicare a destra entrambi i lati per ( Λ U T 1 ) - 1 = U 1 Λ - 1 per ottenere
U 2 = K 21 U 1 Λ - 1 .
Ora abbiamo tutto il necessario per valutare K 22 :
K 22K21= U2Λ UT1U2( Λ UT1)- 1= U1Λ- 1
U2= K21U1Λ- 1.
K22K22= U2Λ UT2= ( K21U1Λ- 1) Λ ( K21U1Λ- 1)T= K21U1( Λ- 1Λ ) Λ- 1UT1KT21= K21U1Λ- 1UT1KT21= K21K- 111KT21= ( K21K- 1211) ( K21K- 1211)T.(*)(**)
In (*), abbiamo trovato una versione dell'incorporamento di Nyström che potresti aver visto semplicemente come definizione. Questo ci dice gli effettivi valori del kernel che stiamo imputando per il blocco .K22
In (**), vediamo che la matrice caratteristica , che è forma(n-m)×m, corrisponde a questi valori del kernel imputati. Se usiamoK1K21K- 1211( n - m ) × mper glimpunti, abbiamo un insieme dimdimensionale caratteristiche
Φ=[K 1K1211mm
Possiamo solo verificare rapidamente cheΦcorrisponde alla matrice del kernel corretta:
ΦΦT
Φ = ⎡⎣⎢K1211K21K- 1211⎤⎦⎥.
ΦΦ ΦT= ⎡⎣⎢K1211K21K- 1211⎤⎦⎥⎡⎣⎢K1211K21K- 1211⎤⎦⎥T= ⎡⎣⎢K1211K1211K21K- 1211K1211K1211K- 1211KT21K21K- 1211K- 1211KT21⎤⎦⎥= [ K11K21KT21K21K- 111KT21]= K.
mΦK
XΦ
ϕ ( x ) = [ k ( x , x1)...k ( x , xm)] K- 1211.
X[ k ( x , x1)...k ( x , xm)]K21K21K- 1211ϕ ( x )K11K11K- 1211= K1211ΦXnuovoΦtest= Ktest , 1K- 1211.
m[ KtrenoKprova, trenoKtreno, di provaKtest]mKtestK22
Sopra, abbiamo ipotizzato che la matrice
del kernel fosse
esattamente di grado
m . Questo di solito non sarà il caso; per un kernel gaussiano, ad esempio,
K è
sempre di rango
n , ma questi ultimi autovalori di solito scendono abbastanza rapidamente, quindi sarà
vicino a una matrice di rango
m , e le nostre ricostruzioni di
K 21 o
K test , 1 stanno andando essere
vicini ai valori veri ma non esattamente gli stessi. Saranno ricostruzioni migliori quanto più si avvicina all'autospazio di
K 11 a quello di
KmKnmK21Ktest , 1K11 complesso, motivo per cui la scelta deipunti
m giustiè importante nella pratica.
Km
Nota anche che se ha zero autovalori, puoi sostituire gli inversi con pseudoinversi e tutto funziona ancora; basta sostituire K 21 nella ricostruzione con K 21 K † 11 K 11 .K11K21K21K†11K11
Kmax ( λio, 10- 12)