Kernel-Methode

Im maschinellen Lernen bezeichnen Kernel-Methoden eine Klasse von Algorithmen, die zur Mustererkennung verwendet werden. Diese Methoden nutzen sogenannte Kernelfunktionen, welche eine Menge von bekannten Datenpunkten in einen höherdimensionalen Raum transformieren. In diesem neuen Raum sucht die Kernel-Methode nach einer Hyperebene, die die Datenpunkte korrekt klassifiziert. Die Abbildung zum Kernel-Trick veranschaulicht ein einfaches Beispiel. Eine besondere Eigenschaft der Kernelfunktionen ist, dass sie eine implizite Berechnung im höherdimensionalen Raum ermöglichen. Dadurch können Kernel-Methoden bei der Suche nach einer geeigneten Hyperebene hochdimensionale Räume verwenden, ohne die Rechenzeit signifikant zu erhöhen.[1] Bekannte Kernel-Methoden sind unter anderem Support Vector Machines, Gauß-Prozesse und die Kernel-PCA.

Formale Definition Kernel

Sei ein Eingaberaum. Eine Abbildung heißt Kernel, wenn es einen Skalarproduktraum und eine Abbildung in diesen Raum gibt mit: .

heißt Featurespace oder Merkmalsraum, Featuremapping oder Merkmalsabbildung. Ein Kernel ist also eine Möglichkeit, das Skalarprodukt zweier Punkte im Merkmalsraum zu berechnen, ohne die potentiell sehr hochdimensionale Repräsentation explizit ausrechnen zu müssen. Dieses Skalarprodukt im Merkmalsraum kann dann für Klassifizierungsalgorithmen wie Support Vector Machines verwendet werden.

In der Praxis muss der Featurespace nicht explizit bekannt sein, da Kernel durch den Satz von Mercer eine einfache Charakterisierung besitzen.

Verschiedene Klassen von Kernel-Funktionen

Es gibt verschiedene Arten von Kerneln, die sich zum Teil über Parameter an die gegebene Problemstellung anpassen lassen:

  • lineare Kernel
  • polynomiale Kernel , mit einem freien Parameter
  • Radiale-Basisfunktion-Kernel (RBF) , wobei die Bandbreite ein freier Parameter ist
  • Fisher Kernel
  • Graph Kernel
  • Kernel smoother
  • String Kernel
  • Neural tangent Kernel
  • Neural network Gaussian process (NNGP) Kernel

Kernel-Trick

Bei Kernel-Methoden gibt es den Kernel-Trick, mit dem beispielsweise ein linearer Klassifikator erfolgreich auf nicht-linear trennbare Daten angewendet werden kann. Dies wird erreicht, indem die Daten in einen höherdimensionalen Raum transformiert werden, in dem eine bessere lineare Separierbarkeit erwartet wird (siehe Abbildung). Dieser Vorgang kann als eine Form des Feature-Engineering verstanden werden.

Gegeben sei die Abbildung und ein Kernel Dann kann eine SVM mit diesem Kernel K(x , y) die roten und lila Datenpunkte durch eine Hyperebene trennen. Die 2d Trainingspunkte werden durch in den 3d-Raum abgebildet , wo eine trennende Hyperebene leicht gefunden werden kann.

Literatur

  • Christopher M. Bishop: Pattern Recognition and Machine Learning. Information Science and Statistics, Springer-Verlag, 2008, ISBN 978-0387310732
  • Nello Cristianini, John Shawe-Taylor: Kernel Methods for Pattern Classification. Cambridge, 2004.
  • Bernhard Schölkopf, Alex Smola: Learning with Kernels. MIT Press, Cambridge, MA, 2002.
  • Thomas Hofmann, Bernhard Schölkopf, Alexander J Smola: Kernel methods in machine learning. In: Annals Statistics 36 (3) 2008: 1171–1220. PDF.

Einzelnachweise

  1. Paul Wilmott: Grundkurs Machine Learning. 1. Auflage. Rheinwerk Verlag GmbH, Bonn 2020, ISBN 978-3-8362-7598-9, S. 133.

Auf dieser Seite verwendete Medien

Kernel trick idea.svg
Autor/Urheber: Shiyu Ji, Lizenz: CC BY-SA 4.0
An illustration of kernel trick in SVM. Here the kernel is given by: