2017-07-23 1 views
0

Ich habe einen Test in ein paar Tagen und ich habe ein paar Probleme mit einigen der Themen.Über die Validierung eines Kernels

Beginnen wir mit Kernel, im Grunde habe ich verstanden, dass ein Kernel positiv semidefinite und symmetrisch sein muss, um gültig zu sein. Ist das genug? Zum Beispiel der folgende Kernel, Kernel (x, y) = 2 * k1 (x, y) für einige k1, der ein gültiger Kernel ist. Ist das gültig? Meine Frage ist, wie kann ich zwischen einem gültigen Kernel und einem ungültigen Kernel unterscheiden, wenn ich einen Kernel im Test bekomme?

Antwort

0

Es gibt drei Anforderungen Mercers Theorem anwenden:

  1. K stetig ist
  2. K ist symmetrisch
  3. K positiv semidefinit ist

Wenn Sie diese drei Eigenschaften haben, haben Sie ein gültiger Kernel.

Zum Beispiel der folgende Kernel, Kernel (x, y) = 2 * k1 (x, y) für einige k1, die ein gültiger Kernel ist. Ist das gültig?

Ja, ist es leicht, dass bei richtigem Kern K1, K2 zu zeigen:

  1. aK1, für jeden a> 0
  2. K1 + K2

gültige Kernel sind, also bekommst du auch das für jeden a, b> 0 aK1 + bK2 ist ein gültiger Kernel.

Meine Frage ist, wie kann ich zwischen einem gültigen Kernel und einem nicht gültigen Kernel unterscheiden, wenn ich einen Kernel im Test bekomme?

Es gibt keinen magischen Weg. Das Problem ist wirklich schwierig für generische Funktionen. Daher würde ich für den Test entweder Nicht-Kerneln erwarten, die leicht zu fälschen sind (keine Eigenschaft eines typischen Punktprodukts haben), oder gültige Kernels, die entweder durch den Satz von Mercer oder durch Konstruktion gültig sind.

Insbesondere eine andere Art und Weise etwas zu beweisen, ist ein Kernel explizit zu finden, ist phi, da definitionsgemäß für jeden Kern K gibt es phi so dass

K(x,y) = <phi(x), phi(y)> 

wenn Sie also phi finden, die diese Eigenschaft hat - Sie beweisen, dass K ein Kernel ist.

Zum Beispiel - sei K ein Graphkern, definiert als K(G1, G2) = amount of vertices shared by G1 and G2. Es ist einfach zu zeigen, dass wenn wir phi(G) = one hot encoding of the vertices in G nehmen, dann

K(G1,G2) = <phi(G1), phi(G2)> 
Verwandte Themen