Kernel Ridge Regressione Efficiency


11

La regressione della cresta può essere espressa come dove è l'etichetta prevista , la identifica, l'oggetto per cui stiamo cercando di trovare un'etichetta e la matrice di oggetti tale che: y Idd×dxXn×dnxi=(xi,1,...,Xi,d)Rd

y^=(XX+aId)1Xx
y^Idd×dxXn×dnxi=(xi,1,...,xi,d)Rd

X=(x1,1x1,2x1,dx2,1x2,2x2,dxn,1x1,2xn,d)

Possiamo creare il kernel nel modo seguente:

y^=(K+aId)1k

dove è la matrice delle funzioni del kernel n×nKKn×nK

K=(K(x1,x1)K(x1,x2)K(x1,xn)K(x2,x1)K(x2,x2)K(x2,xn)K(xn,x1)K(xn,x2)K(xn,xn))

e il vettore colonna delle funzioni del kernel n × 1 Kkn×1K

k=(K(x1,x)K(x2,x)K(xn,x))

Domande:

(a) se ci sono più oggetti rispetto alle dimensioni, ha senso non usare i kernel? Ad esempio, sarà una matrice , quindi sarà una e finiremo per invertire una matrice invece della matrici dovremmo invertire se dovessimo usare i kernel. Questo significa che se non dovremmo usare i kernel?X 50×3 XX 3×33×350×50dnxiX50×3XX3×33×350×50dn

(b) dovrebbe essere usato il kernel più semplice possibile? Sembra che i kernel nella regressione della cresta vengano utilizzati per negare le influenze della dimensionalità e non utilizzare determinate proprietà dello spazio delle caratteristiche (a differenza delle macchine vettoriali di supporto). Tuttavia, i kernel possono modificare le distanze tra gli oggetti, quindi ci sono spesso kernel popolari usati nella regressione della cresta?

(c) qual è la complessità temporale della regressione della cresta e / o della regressione della cresta del kernel?O


"efficienza" ha un significato diverso nelle statistiche. Intendevi "complessità computazionale"? (nel titolo)
Memming

Intendevo "efficienza algoritmica". Anche se è vero che le mie domande essenzialmente riducono questo a "complessità computazionale".
Helix,

Risposte:


5

(a) Lo scopo dell'uso di un kernel è risolvere un problema di regressione non lineare in questo caso. Un buon kernel ti permetterà di risolvere i problemi in uno spazio di funzionalità possibilmente infinito-dimensionale. Ma usare un kernel lineare e fare la regressione della cresta del kernel nel doppio spazio equivale a risolvere il problema nello spazio primario , cioè, non porta alcun vantaggio (è solo molto più lento man mano che il numero di campioni cresce come hai osservato).K(x,y)=xy

(b) Una delle scelte più popolari è il kernel esponenziale quadrato che è universale (vedi riferimento sotto). Esistono molti kernel e ognuno di essi indurrà un prodotto interno diverso (e quindi metrico) nel tuo spazio delle caratteristiche.K(x,y)=exp(τ2||xy||2)

(c) L'implementazione semplice richiede la risoluzione di un'equazione lineare di dimensione , quindi è . Esistono molti metodi di approssimazione più rapidi come l'approssimazione di Nyström. Questa è un'area di ricerca attiva.O ( n 3 )nO(n3)

Riferimenti:

  1. Bharath Sriperumbudur, Kenji Fukumizu e Gert Lanckriet. Sul rapporto tra universalità, kernel caratteristici e incorporamento di misure RKHS. Journal of Machine Learning Research, 9: 773–780, 2010.
  2. Bernhard Schlkopf, Alexander J. Smola. Imparare con i kernel: supportare macchine vettoriali, regolarizzazione, ottimizzazione e oltre il 2002
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.