Arten von Machine Learning Algorithmen
Im folgenden Abschnitt gehe ich auf die unterschiedlichen Arten von Machine Learning ein:
- überwachtes Lernen (Supervised Learning)
- unüberwachtes Lernen (Unsupervised Learning)
- teilüberwachtes Lernen (Semi-Supervised Learning)
- verstärkendes Lernen (Reinforcement Learning)
Überwachtes Lernen
Überwachtes Lernen (englisch: Supervised Machine Learning) nutzt bekannte Daten, um daraus Muster und Zusammenhänge zu erkennen. Der Algorithmus lernt die Muster anhand eines Trainingsdatensatzes (Beispieldaten). Beim überwachten Lernen wird immer im Zusammenhang mit einer Zielvariable gelernt und der Algorithmus versucht diese richtig vorherzusagen. Die Zielvariable kann eine Klasse (bspw. Kündigung Ja/Nein) oder ein numerischer Wert (bspw. Umsatz für den nächsten Monat) sein.
Unüberwachtes maschinelles Lernen
Bei dem Unüberwachten maschinellem Lernen (Unsupervised Machine Learning) bekommt der Algorithmus keine Beispieldaten, sondern Daten, aus denen der Algorithmus eigenständig interessante, versteckte Gruppen und Muster erkennen soll.
Der grundsätzliche Unterschied zum Supervised Machine Learning ist also, dass das Unsupervised Machine Learning nicht dafür ausgelegt ist, eine Vorhersage für eine bekannte Zielvariable (z.B. Klassifikation oder Prognose) zu berechnen. Auch die Ergebnisse müssen beim Unüberwachten Lernen von Data Scientist an relativ „weichen“ Faktoren bewertet werden, um final einzuschätzen, wie gut die Ergebnisse zur Business-Anwendung passen.
Teilüberwachtes Lernen
Teilüberwachtes Lernen (Semi-supervised Machine Learning) nutzt sowohl Beispieldaten mit konkreten Zielvariablen, als auch unbekannte Daten und ist somit eine Mischung aus überwachtem und unüberwachtem Lernen. Die Einsatzgebiete von teilüberwachtem Lernen sind im Grunde die gleichen wie bei dem überwachten Lernen.
Der Unterschied liegt darin, dass für den Lernprozess nur eine geringe Menge an Daten mit einer bekannten Zielvariable genutzt wird und eine große Menge an Daten, bei der diese Zielvariable noch nicht vorhanden ist. Dies hat den Vorteil, dass schon mit einer geringeren Menge von bekannten Daten trainiert werden kann. Denn oft ist die Beschaffung von bekannten Beispieldaten extrem aufwendig und kostenintensiv, da häufig Menschen diese Daten durch manuelle Prozesse erstellen müssen (bspw. das manuelle Labeling von Bildern).
Besonders in der Bild- oder Objekterkennung findet Semi-Supervised Learning Anwendung. Hier wird ein kleiner Datensatz von bekannten (gelabelten) Bildern erstellt, dies wird in der Regel durch Menschen gemacht. Nachfolgend wird bspw. ein künstliches neuronales Netz zur Klassifikation trainiert und dann auf den Rest der Daten angewendet. So können die Beispieldaten für die unbekannten Daten deutlich schneller richtig erstellt werden.
Verstärkendes Lernen
Verstärkendes Lernen (Reinforcement Learning) oder auch bestärkendes Lernen ist eine besondere Form des maschinellen Lernens. Diese Algorithmen interagieren mit der Umgebung und werden durch eine Kostenfunktion oder ein Belohnungssystem bewertet, um so selbständig eine Strategie zur Lösung des Problems zu erlernen und die Belohnung zu maximieren.
Bei verstärkendem Lernen wird dem Algorithmus nicht gezeigt, welche Aktion oder Handlung in welcher Situation die richtige ist, sondern dieser erhält durch die Kostenfunktion eine positive oder negative Rückmeldung (Feedback). Anhand der Kostenfunktion wird dann eingeschätzt, welche Aktion zu welchem Zeitpunkt, die Richtige ist. Somit lernt das System „bestärkend“ durch Lob oder Bestrafung die Belohnungsfunktion zu maximieren.
Der entscheidende Unterschied zu Überwachtem und Unüberwachtem Lernen ist, dass das bestärkende Lernen vorab keine Beispieldaten benötigt. Der Algorithmus kann in einer Simulationsumgebung in vielen iterativen Schritten eine eigene Strategie entwickeln. Im folgenden Video von Google DeepMind wird dies deutlich: hier lernt die KI eigenständig zu Laufen.