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


35

Come dimostrare che la funzione di base radiale k(x,y)=exp⁡(−||x−y||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⁡[−(x−z)2/(2σ2)]2πσexp⁡[−(y−z)2/(2σ2)2πσdz=exp⁡[−(x−y)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⁡(−(x−y)2/2σ2)

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

Scrivi , dove h ( t ) = exp ( - t 2k(x,y)=h(x−y)è 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(xj−xk)=∑j,k=1najakE[ei(xj−xk)Z]=E[∑j,k=1najeixjZake−ixkZ]=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,n≥1 and every {(xi,ci)}i=1m⊆X×R we have that ∑i=1mciκn(xi,xj)cj≥0. 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)=limN→∞∑n=0N1n!κ(x,y)n; use the "powers", "scalings", "sums", and "limits" properties.

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

    Proof: Use the feature map x↦f(x)φ(x).

Now, note that

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