Come dimostrare che la funzione di base radiale è un kernel?


35

Come dimostrare che la funzione di base radiale k(x,y)=exp(||xy||2)2σ2)è un kernel? Per quanto ho capito, per dimostrarlo dobbiamo provare uno dei seguenti:

  1. Per ogni insieme di vettori x1,x2,...,xn matrice K(x1,x2,...,xn) = (k(xi,xj))n×n è semidefinita positiva.

  2. Una mappatura Φ può essere presentata come k(x,y) = Φ(x),Φ(y) .

Qualsiasi aiuto?


1
Giusto per collegarlo in modo più evidente: la mappa delle caratteristiche è discussa anche in questa domanda , in particolare la risposta di Marc Claesen basata sulla serie Taylor e la mia che discute sia l'RKHS che la versione generale dell'incorporamento di L2 fornita da Douglas di seguito.
Dougal,

Risposte:


26

Zen ha usato il metodo 1. Ecco il metodo 2: Mappa su una distribuzione gaussiana sfericamente simmetrica centrata su x nello spazio di Hilbert L 2 . La deviazione standard e un fattore costante devono essere ottimizzati affinché questo funzioni esattamente. Ad esempio, in una dimensione,xxL2

exp[(xz)2/(2σ2)]2πσexp[(yz)2/(2σ2)2πσdz=exp[(xy)2/(4σ2)]2πσ.

Quindi, utilizzare una deviazione standard di e scalare la distribuzione gaussiana per ottenerek(x,y)=Φ(x),Φ(y). Quest'ultimo riscalamento si verifica perché lanormaL2di una distribuzione normale non è1in generale.σ/2k(x,y)=Φ(x),Φ(y)L21


2
@Zen, Douglas Zare: grazie per le tue ottime risposte. Come dovrei selezionare la risposta ufficiale ora?
Leone,

23

Userò il metodo 1. Controlla la risposta di Douglas Zare per una prova usando il metodo 2.

Io dimostrare il caso in cui sono numeri reali, in modo k ( x , y ) = exp ( - ( x - y ) 2 / 2 σ 2 ) . Il caso generale segue mutatis mutandis dallo stesso argomento e vale la pena farlo.x,yk(x,y)=exp((xy)2/2σ2)

Senza perdita di generalità, supponiamo che σ2=1 .

Scrivi , dove h ( t ) = exp ( - t 2k(x,y)=h(xy)è la funzione caratteristica di una variabile casualeZconN(0,1)

h(t)=exp(t22)=E[eitZ]
ZN(0,1) .

Per numeri reali e a 1 , , a n , abbiamo n j , k = 1 a jx1,,xna1,,an che implica che k

j,k=1najakh(xjxk)=j,k=1najakE[ei(xjxk)Z]=E[j,k=1najeixjZakeixkZ]=E[|j=1najeixjZ|2]0,
k è una funzione semidefinita positiva, ovvero un kernel.

Per capire questo risultato in una maggiore generalità, controlla il Teorema di Bochner: http://en.wikipedia.org/wiki/Positive-definite_function


2
Questo è un buon inizio, nella giusta direzione, con due avvertenze: (a) non è uguale alle aspettative mostrate (controllare il segno nell'esponente) e (b) questo sembra limitare l'attenzione al caso in cui x ed y sono scalari e non vettori. Nel frattempo ho effettuato l'upgrade, perché l'esposizione è bella e pulita e sono sicuro che colmerai rapidamente queste piccole lacune. :-)h(t)Xy
Cardinale

1
Tks! Ho fretta qui. :-)
Zen

1
h

23

Xφ

  • κγκγ>0.

    Proof: if φ is the feature map for κ, γφ is a valid feature map for γκ.

  • Sums: If κ1 and κ2 are pd kernels, so is κ1+κ2.

    Proof: Concatenate the feature maps φ1 and φ2, to get x[φ1(x)φ2(x)].

  • Limits: If κ1,κ2, are pd kernels, and κ(x,y):=limnκn(x,y) exists for all x,y, then κ is pd.

    Proof: For each m,n1 and every {(xi,ci)}i=1mX×R we have that i=1mciκn(xi,xj)cj0. Taking the limit as n gives the same property for κ.

  • Products: If κ1 and κ2 are pd kernels, so is g(x,y)=κ1(x,y)κ2(x,y).

    Proof: It follows immediately from the Schur product theorem, but Schölkopf and Smola (2002) give the following nice, elementary proof. Let

    (V1,,Vm)N(0,[κ1(xi,xj)]ij)(W1,,Wm)N(0,[κ2(xi,xj)]ij)
    be independent. Thus
    Cov(ViWi,VjWj)=Cov(Vi,Vj)Cov(Wi,Wj)=κ1(xi,xj)κ2(xi,xj).
    Covariance matrices must be psd, so considering the covariance matrix of (V1W1,,VnWn) proves it.
  • Powers: If κ is a pd kernel, so is κn(x,y):=κ(x,y)n for any positive integer n.

    Proof: immediate from the "products" property.

  • Exponents: If κ is a pd kernel, so is eκ(x,y):=exp(κ(x,y)).

    Proof: We have eκ(x,y)=limNn=0N1n!κ(x,y)n; use the "powers", "scalings", "sums", and "limits" properties.

  • Functions: If κ is a pd kernel and f:XR, g(x,y):=f(x)κ(x,y)f(y) is as well.

    Proof: Use the feature map xf(x)φ(x).

Now, note that

k(x,y)=exp(12σ2xy2)=exp(12σ2x2)exp(1σ2xTy)exp(12σ2y2).
Start with the linear kernel κ(x,y)=xTy, apply "scalings" with 1σ2, apply "exponents", and apply "functions" with xexp(12σ2x2).
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.