CiAgICA8IS0tIExpbmtlZEluIC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgIF9saW5rZWRpbl9wYXJ0bmVyX2lkID0gIjEyMzUwNzMiOwogICAgICAgIHdpbmRvdy5fbGlua2VkaW5fZGF0YV9wYXJ0bmVyX2lkcyA9IHdpbmRvdy5fbGlua2VkaW5fZGF0YV9wYXJ0bmVyX2lkcyB8fCBbXTsKICAgICAgICB3aW5kb3cuX2xpbmtlZGluX2RhdGFfcGFydG5lcl9pZHMucHVzaChfbGlua2VkaW5fcGFydG5lcl9pZCk7CiAgICA8L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgKGZ1bmN0aW9uKCl7dmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07CiAgICAgICAgICAgIHZhciBiID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7CiAgICAgICAgICAgIGIudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiO2IuYXN5bmMgPSB0cnVlOwogICAgICAgICAgICBiLnNyYyA9ICJodHRwczovL3NuYXAubGljZG4uY29tL2xpLmxtcy1hbmFseXRpY3MvaW5zaWdodC5taW4uanMiOwogICAgICAgICAgICBzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGIsIHMpO30pKCk7CiAgICA8L3NjcmlwdD4KICAgIDxub3NjcmlwdD4KICAgICAgICA8aW1nIGhlaWdodD0iMSIgd2lkdGg9IjEiIHN0eWxlPSJkaXNwbGF5Om5vbmU7IiBhbHQ9IiIgc3JjPSJodHRwczovL3B4LmFkcy5saW5rZWRpbi5jb20vY29sbGVjdC8/cGlkPTEyMzUwNzMmZm10PWdpZiIgLz4KICAgIDwvbm9zY3JpcHQ+CiAgICA8IS0tIEVuZCBMaW5rZWRJbiAtLT4KICAgIA==
Generic filters
Exact matches only
Search in title
Search in excerpt
Search in content

Lernen: Hilfreiches Halbwissen


Häufig müssen Objekte aufgrund ihrer gegebenen Eigenschaften einer von mehreren vordefinierten Klassen zugeordnet werden. Man sollte meinen, dass zum Erlernen einer Zuweisungsvorschrift nur diejenigen Fälle hilfreich sein können, bei denen auch die Klasse bekannt ist. Dieser Schluss ist etwas zu voreilig!

Stellen wir uns zunächst einmal vor, dass wir Objekte aufgrund ihrer messbaren Eigenschaften automatisch klassifizieren wollen. Für diese in der Predictive Analytics häufig auftretende Problemstellung haben wir einen Experten engagiert, der genügend Zeit und Willen mitgebracht hat, um uns bei der Erstellung des Modells zu helfen.

Für jedes Objekt wurden zwei Attribute X und Y automatisch gemessen und der Experte hat nun jedes Objekt genauestens untersucht und einer der drei Klassen “Schwarz”, “Rot” und “Grün” zugeordnet (klicken Sie bitte auf die Grafik für eine vergrößerte Darstellung!):

1000 Objekte mit ihrer Klassenzuordnung
1000 Objekte mit ihrer Klassenzuordnung

Hier stehen nun genügend Beobachtungen zur Verfügung, um für jede Klasse eine 2-dimensionale Normalverteilung für die gemeinsame Verteilung der beiden Inputs anzupassen. Diese drei Normalverteilungen sind in der Grafik durch die Höhenlinien angedeutet. Da alle drei Klassen in etwa gleich häufig vorkommen, kann ein neuer Datenpunkt (x,y) derjenigen Klasse zugewiesen werden, deren Dichtefunktion an der Stelle (x,y) den höchsten Wert aufweist. Dieses Vorgehen wird gut funktionieren und aufgrund der genügend großen Anzahl von Beobachtungen pro Klasse stabile Ergebnisse liefern.

Verändern wir nun aber einmal die Annahmen dahingehend, dass sie eher den Realitäten entsprechen. Der Experte hat natürlich nicht Zeit und Interesse, jedes der 1000 Objekte genauestens zu untersuchen und zu klassifizieren. Er lässt sich aber immerhin über einen angemessenen finanziellen Anreiz überreden, wenigstens eine Folge von zufällig ausgewählten Objekten genauer zu betrachten, bis jede Klasse mit mindestens zwei Beispielen vertreten ist. Insgesamt ergeben sich für ihn Untersuchungen an sieben Objekten.

Da die Attribute X und Y automatisch gemessen wurden, liegen diese weiterhin für alle 1000 Objekte vor. Es ergibt sich dann folgendes Bild:

7 Objekte mit ihrer Klassenzuordnung, 993 ohne
7 Objekte mit ihrer Klassenzuordnung, 993 ohne

Nehmen wir nun an, dass pro Klasse weiterhin eine 2-dimensionale Normalverteilung angepasst werden soll und dass – beispielsweise aus theoretischen Überlegungen – die Kovarianzmatrix bekannt und für alle drei Verteilungen identisch ist. Das Anpassen einer Normalverteilung bedeutet dann nur noch die Festlegung des Erwartungswertvektors.

Würde man nun nur die zwei bzw. drei Beobachtungen verwenden, die pro Klasse gegeben sind, sollte klar sein, dass der Mittelwert der Inputs als Schätzer der Erwartung bei dieser geringen Anzahl stark schwanken wird. In der obigen Grafik sind die – allerdings nur uns bekannten – wahren Erwartungen als Kreuz eingezeichnet. Während der Mittelwert der beiden grünen Beobachtungen noch relativ dicht am Erwartungswert liegt, liegen beispielsweise die beiden schwarzen Beobachtungen doch schon sehr weit vom Erwartungswertkreuz entfernt.

Verfahren des sogenannten Semi-Supervised Learning bauen nun auch die 993 Beobachtungen ohne Label in die Modellierung ein. Wenn angenommen werden kann, dass jede Klasse durch eine 2-dimensionale Normalverteilung approximiert werden kann, deren Kovarianzmatrix hier als bekannt vorausgesetzt wird, dann helfen auch die ungelabelten Beobachtungen bei der Bestimmung der Lage dieser Verteilungen.

Wir betrachten einmal das folgende Gedankenexperiment, um besser verstehen zu können, warum auch ungelabelte Beobachtungen bei der Klassifikation helfen können.

Dazu ignorieren wir die Label zunächst völlig. Wir können dann über ein Gaussian-Mixture-Modell (wir hatten diese Art von Modellen bereits im Blog Der Mix macht’s zum Thema) die Dichte der Beobachtungen approximieren.

Jede Beobachtung wird im Rahmen dieses Ansatzes als Ergebnis eines zweistufigen Prozesse interpretiert. Zunächst wird eine von drei Normalverteilungen zufällig ausgewählt und dann wird mit der ausgewählten Verteilung eine Beobachtung generiert. Da wir die Kovarianzmatrix als bekannt voraussetzen, müssen nun geeignete Werte der Erwartungen und der Auswahlwahrscheinlichkeiten für jede Normalverteilung geschätzt werden. Hierzu lässt sich der EM-Algorithmus einsetzen.

Als Resultat ergeben sich dann mit wachsender Stichprobengröße sehr gute Näherungen der Auswahlwahrscheinlichkeiten und der Erwartungswertvektoren. Wenn die Annahmen stimmen (“A: Es gibt drei Klassen”, “B: Jede Klasse kann durch eine Normalverteilung repräsentiert werden”, “C: Die Kovarianzmatrizen sind identisch und bekannt”, “D: Die Erwartungen unterscheiden sich”), dann erzeugt das Gaussian-Mixture-Modell ein getreues Abbild der Generierung der Daten. Hier mit den 1000 Beobachtungen werden folgende Normalverteilungen angepasst:

Angepasstes Gaussian-Mixture-Modell
Angepasstes Gaussian-Mixture-Modell

Der einzige Haken ist, dass man noch nicht weiß, welche Normalverteilung welcher Klasse zugeordnet werden muss!

Es gibt nun 3! = 6 mögliche Zuordnungen von Normalverteilungen und Klassen. Für die Plausibilität einer Zuordnung sind nur die gelabelten sieben Fälle entscheidend. Es lässt sich leicht berechnen, dass die folgende Zuordnung die geschätzte Wahrscheinlichkeit maximiert, die gelabelten 7 Werte mit der angegebenen Klasse zu beobachten:

Nahezu perfekt angepasstes Gaussian-Mixture-Modell
Nahezu perfekt angepasstes Gaussian-Mixture-Modell

Diese Zuordnung wird über numerische Betrachtung der Likelihood ermittelt, kann aber auch qualitativ begründet werden:

Dass die sich unten rechts befindliche Normalverteilung der roten Klasse zugeordnet wird, ist relativ zwingend, da die drei roten Fälle ziemlich weit von den beiden linken Verteilungen entfernt sind. Die beiden schwarzen Fälle hätten noch von beiden sich links befindlichen Verteilungen erzeugt werden können und helfen somit nur bedingt, die Zuordnung zu den Klassen Grün und Schwarz zu entscheiden. Wichtiger ist hier die Lage der beiden grünen Fälle und hier vor allem die Position des oberen Punktes, der nur mit sehr kleiner Wahrscheinlichkeit von der Verteilung unten links erzeugt werden kann.

Dieses erhaltene Modell ist sehr nahe an dem Modell, das in der ersten Grafik bei Vorhandensein aller Klassenlabel angepasst wurde.

Das Beispiel zeigt somit, dass es prinzipiell möglich sein kann, teuer einzukaufende Expertise durch billige Massenerhebung zu ersetzen – wenn die Annahmen stimmen! Natürlich kann man auch Pech haben, dass die zufällig ausgewählten, vom Experten zu klassifizierenden Beispiele atypische Vertreter ihrer Klasse darstellen und somit möglicherweise den drei Klassen nicht die eigentlich entsprechenden Normalverteilungen zugeordnet werden.

Kleinere Anzahlen gelabelter Fälle reichen aus, wenn die Normalverteilungen wenig Überlappung zeigen. Liegen die Normalverteilungen extrem weit auseinander, könnte bereits ein gelabelter Fall pro Klasse die korrekte Zuordnung ermöglichen.

Andererseits werden aber auch umso mehr gelabelte Fälle benötigt, je ähnlicher sich die Normalverteilungen sind. Auch wenn die hier im gegebenen Beispiel zu Demonstrationszwecken gewählte Anzahl von sieben klassifizierten Fällen möglicherweise noch recht häufig zu Fehlzuordnungen der Klassen führen könnte, sollte jedoch eine relativ geringe Anzahl von gelabelten Fällen ausreichen, um die Wahrscheinlichkeit einer falschen Zuordnung vernachlässigbar klein zu halten.