Ich bin ziemlich neu auf dem Gebiet der Gaußschen Prozesse und wie sie im maschinellen Lernen angewendet werden. Ich lese und höre immer wieder, dass die Kovarianzfunktionen die Hauptattraktion dieser Methoden sind. Könnte jemand auf intuitive Weise erklären, was in diesen Kovarianzfunktionen vor sich geht?
Andernfalls, wenn Sie auf ein bestimmtes Lernprogramm oder Dokument verweisen könnten, in dem diese erklärt werden.
Antworten:
Vereinfacht ausgedrückt gibt eine Kern- oder Kovarianzfunktion die statistische Beziehung zwischen zwei Punkten x , x ' in Ihrem Eingaberaum an. das heißt, wie stark eine Änderung des Wertes des Gaußschen Prozesses (GP) bei x mit einer Änderung des GP bei x ' korreliert . In gewissem Sinne können Sie sich k ( ⋅ , ⋅ ) als Definition einer Ähnlichkeit zwischen Eingaben (*) vorstellen .k ( x , x′) x , x′ x x′ k ( ⋅ , ⋅ )
Typische Kernel hängen einfach von der euklidischen Distanz (oder linearen Transformationen davon) zwischen Punkten ab, aber der Spaß beginnt, wenn Sie erkennen, dass Sie viel, viel mehr können.
Wie David Duvenaud es ausdrückt:
Für einen einfachen Überblick über Kernel für Allgemeinmediziner empfehle ich wärmstens sein Kernel-Kochbuch und die darin enthaltenen Referenzen.
(*) Achten Sie, wie @Dikran Marsupial feststellt, darauf, dass das Gegenteil nicht zutrifft. Nicht alle Ähnlichkeitsmetriken sind gültige Kernel (siehe seine Antwort).
quelle
Warum muss der Kernel also in einem bestimmten Funktionsbereich als inneres Produkt interpretierbar sein? Der Grund dafür ist, dass es für lineare Modelle (wie z. B. logistische Regression) viel einfacher ist, theoretische Grenzen für die Generalisierungsleistung festzulegen, als für nichtlineare Modelle (wie z. B. ein neuronales Netzwerk). Die meisten linearen Modelle können so geschrieben werden, dass die Eingabevektoren nur in Form innerer Produkte auftreten. Dies bedeutet, dass wir ein nichtlineares Modell erstellen können, indem wir ein lineares Modell im Kernel-Feature-Space erstellen. Dies ist eine feste Transformation der Daten, sodass alle theoretischen Leistungsgrenzen für das lineare Modell automatisch auf das neue nichtlineare Kernelmodell * angewendet werden.
Ein wichtiger Punkt, der auf den ersten Blick schwer zu erfassen ist, besteht darin, dass wir nicht an einen Funktionsbereich denken, der für unsere spezielle Anwendung gut wäre, und dann einen Kernel entwerfen, der diesen Funktionsbereich entstehen lässt. Im Allgemeinen erstellen wir eine gute Ähnlichkeitsmetrik und prüfen dann, ob es sich um einen Kernel handelt (der Test ist unkompliziert. Wenn eine Matrix von paarweisen Bewertungen der Kernelfunktion an Punkten in der allgemeinen Position positiv und definitiv ist, handelt es sich um einen gültigen Kernel). .
quelle