Beispiel
Angenommen, ein Obstunternehmen möchte eine Maschine bauen, die Äpfel und Birnen, die über ein Förderband kommen, für den Versand in Kartons verpackt. Die Maschine muss zwischen Äpfeln und Birnen unterscheiden, um sie in die richtige Kiste zu packen. Die für die Klassifizierung gemessenen Eigenschaften sind das Gewicht und die Farbe der Früchte. Das Unternehmen beschliesst, einen linearen Klassifikator mit Trainingsdaten zu trainieren, die aus der Messung einer grossen Stichprobe von Äpfeln und Birnen auf seinen Feldern gewonnen wurden (die Trainingsdaten werden in der Abbildung 1 (rechts) gezeigt) Das Unternehmen bringt den Klassifikator in Produktion und das System scheint gut zu funktionieren.
Abbildung 1: Klassifikator (links) und Merkmale von Trainingsbeispielen (rechts)
Nach einigen Wochen beschweren sich Kunden über Tennisbälle in ihren Apfelkisten. Das Unternehmen untersucht das Problem. Sie wissen, dass sich in der Nähe ihrer Felder ein Tennisplatz befindet, und sie stellen fest, dass der trainierte Klassifikator die eingehenden Tennisbälle als Äpfel einstuft – obwohl sie den Trainingsdaten unähnlich sind (siehe Abbildung 2 (rechts)). Wie kann das Unternehmen dieses Problem lösen?
Abbildung 2: Klassifikator mit Tennisball (links) und Lineare Klassifikatoren mit Entscheidungsbereichen (rechts)
Mögliche Lösungen
1. Neurale Netzwerke
„Klassische“ neuronale Netze sind von Natur aus nicht in der Lage, einem Sample keine Klasse zuzuordnen. Eine Möglichkeit, dieses Problem zu lösen, besteht darin, eine zusätzliche Ablehnungsklasse einzuführen. Um Trainingsmuster für diese Ablehnungsklasse zu erzeugen, wird ein kleinster umgebender Hyperwürfel für die Daten jeder Klasse konstruiert. In den nicht überlappenden Regionen der Hyperwürfel aller Klassen werden Trainingsmuster erzeugt und als Klasse «Unbekannt» gekennzeichnet. Es muss darauf geachtet werden, dass die Anzahl oder Ablehnungsproben in einem guten Verhältnis zu den anderen Trainingsproben stehen, um eine schiefe Verteilung zu vermeiden. Mit den erzeugten Zurückweisungsproben kann das neuronale Netz normal trainiert werden (möglicherweise muss die Netzkapazität erhöht werden). Sie können in Abbildung 3 sehen, dass bei Anwendung dieser Methode der Tennisball NICHT als Apfel oder Birne klassifiziert wird.
Abbildung 3: Klassifikator für neuronale Netzwerke mit Entscheidungsbereichen und Ablehnungen. Schwarze Punk-te sind erzeugte Ablehnungsmuster.
2. Bayessche Klassifikatoren mit Gausschen Klassendichten
Angenommen, der Klassifikator verwendet ein generatives Modell mit normalverteilten Klassendichten ~
. Dann könnte man annehmen, dass der Evidenzterm (berechnet nach dem Gesetz der totalen Wahrscheinlichkeit),
verwendet werden kann, um „unwahrscheinliche“ Proben im Hinblick auf das Modell zurückzuweisen. Allerdings, ist eine Wahrscheinlichkeitsdichte und hat keine absolute Bedeutung. Ihre Werte hängen von der Skalierung der Merkmale ab. Daher wird ein zuverlässigeres Mass benötigt. Eine Idee ist, den Mahalanobis-Abstand des Merkmalsvektors zum Mittelwert einer bestimmten Klasse zu verwenden
Dieser Abstand bildet (zumindest in 2d) Ellipsen um den Mittelwert der Verteilung, deren Achsen durch die Verteilungsvarianz skaliert sind. Man kann dann die Wahrscheinlichkeit berechnen, einen Abstand zu beobachten, der grösser als ein bestimmter Wert ist, indem man
So können Stichproben zurückgewiesen werden, wenn die Wahrscheinlichkeit, dass ein bestimmter Abstand für diese Stichprobe beobachtet wird, unter einem Schwellenwert liegt
Diese Schwellenwerte können der bekannten Drei-Sigma-Regel entsprechen – die Wahl eines Schwellenwerts von = 0.27 bedeutet beispielsweise, dass 99,73 (3 Sigma) der vom Modell erzeugten Daten innerhalb dieses Bereichs liegen würden. Um das Kriterium auf mehrere Klassen auszuweiten, kann die folgende Beziehung verwendet werden
In Abbildung 4 ist zu sehen, dass dieser Tennisball NICHT als Apfel oder Birne klassifiziert werden würde und dass die Entscheidungsbereiche eine elliptische Form haben.
Abbildung 4: Bayes-Klassifikator mit Entscheidungsbereichen und Ablehnung.
3. Zweistufiger Ansatz (zwei Modelle)
Grundsätzlich ist es auch möglich, Proben zweistufig auszusortieren. In diesem Fall werden zwei Modelle trainiert. Das erste Modell erkennt Samples, die nicht Teil der Trainingsdaten sind, und führt die Zurückweisung durch. Das zweite Modell ist dann ein beliebiger anderer Klassifikator (wie der lineare Klassifikator im anfänglichen Spielzeugbeispiel). Im Folgenden werden die beiden möglichen Ablehnungsmodelle One-Class SVM und Isolation Forests gezeigt. Dennoch kann in dieser Richtung fast jedes Modell verwendet werden, das eine Ausreissererkennung durchführen kann.
3.1. One-class-SVM mit radialem Basisfunktionskern
Eine Möglichkeit, ein Ablehnungsmodell zu trainieren, besteht darin, eine One-Class Support-Vektor-Maschine zu verwenden. Um beliebige Datenverteilungen zu erfassen, kann ein radialer Basisfunktionskern verwendet werden. Abbildung 5 zeigt das Ergebnis der Anwendung der One-Class SVM auf das Spielzeugbeispiel. Auch hier würde der Tennisball abgelehnt.
Abbildung 5: Zurückweisung basierend auf einer One-Class SVM mit RBF-Kernel
3.2. Isolation-Forest
Als zweites Beispiel für ein Ablehnungsmodell Abbildung 6 zeigt das Ergebnis des Trainings eines Isolation-Forests für das Spielzeugbeispiel. Der Kerngedanke von Isolation-Forests oder -Trees ist, dass Anomalien mit wenigen Entscheidungen aus den Daten isoliert werden können und daher eine geringe Tiefe in den trainierten Isolations-Trees aufweisen.
Abbildung 6: Ablehnung basierend auf Isolation-Forest