I. Die Arten maschinellen Lernens

In Diskussionen über maschinelles Lernen wird häufig das Beispiel handschriftlicher Zahlen thematisiert − und auch wir machen da keine Ausnahme.

Unten sind ein paar handgeschriebene Zahlenbeispiele aus dem gängigen MNIST-Datensatz.

MNIST-Datensatz

Über jeder Handschriftenprobe wird das korrekte Label angezeigt, das heißt, welche Zahl geschrieben werden sollte. Wir sehen, dass einige der Zuordnungen nicht ganz eindeutig sind: Die zweite Zahl von links in der unteren Reihe zum Beispiel – ist das wirklich eine Sieben oder nicht doch eher eine Vier?

Hinweis

MNIST – was ist das?

Jeder, der sich mit maschinellem Lernen beschäftigt, kennt den MNIST-Datensatz, aber nur wenige wissen, wofür das Akronym steht. Auch wir mussten uns erst schlaumachen: M steht für „Modified“ (deutsch: modifiziert) und NIST für „National Institute of Standards and Technology“ (deutsch: Nationales Institut für Standards und Technologie). Jetzt hast du einem durchschnittlichen Experten in maschinellem Lernen etwas voraus!

Bei den meisten Problemen im Bereich maschinelles Lernen ist jeweils nur ein Klassenwert korrekt. Das trifft auch auf den MNIST-Fall zu, auch wenn es hier wie gesagt, nicht immer einfach ist, die richtige Antwort zu bestimmen. Es ist bei dieser Art von Problemen nicht möglich, dass ein Beispiel gleichzeitig mehreren Klassen (oder auch gar keiner) angehört. Unser Ziel ist es, eine KI-Methode zu entwickeln, mit der eine handschriftliche Zahlenabbildung automatisch in das korrekte Label (eine Zahl zwischen null und neun) umgewandelt wird.

Hinweis

Wie man das Problem nicht löst

Theoretisch könnte man einen automatischen Zahlenerkenner mithilfe folgender Regeln definieren:

  • Wenn die schwarzen Pixel meistens die Form einer einzigen Schleife haben, dann ist das Label null.
  • Wenn die schwarzen Pixel zwei sich kreuzende Schleifen formen, dann ist das Label acht.
  • Wenn die schwarzen Pixel meistens in einer geraden vertikalen Linie in der Mitte des Bildes sind, dann ist das Label eins.
Und so weiter ...

Auf diese Weise wurden in den 1980er-Jahren meist KI-Methoden entwickelt (man sprach von „Expertensystemen“). Aber es ist ausgesprochen aufwendig, solche Regeln niederzuschreiben − selbst bei einer so einfachen Aufgabe wie der Zahlenerkennung. Tatsächlich wären die oben genannten Beispielregeln nicht spezifisch genug, um mittels Programmierung umgesetzt zu werden. Wir müssten vielmehr ganz genau definieren, was wir mit „meistens“, „Schleife“, „Linie“, „Mitte“ usw. meinen. Aber selbst wenn wir das alles gemacht hätten, wäre das Ergebnis lediglich eine schlechte KI-Methode, denn handgeschriebene Zahlen sind, wie wir sehen konnten, nie exakt gleich: Jede Regel bedürfte folglich zahlreicher Ausnahmen.

Drei Arten maschinellen Lernens

Die Wurzeln des maschinellen Lernens liegen in der Statistik, die auch als Kunst der Extraktion von Wissen aus Daten angesehen werden kann. So verwundert es nicht, dass Methoden wie die lineare Regression und die Bayessche Statistik (beide sind schon mehr als zwei Jahrhunderte alt!) noch immer zentrale Bedeutung für das maschinelle Lernen besitzen. Weitere Beispiele und einen kurzen historischen Abriss findest du hier: timeline of machine learning (Zeitstrahl des maschinellen Lernens).

Das Fachgebiet maschinelles Lernen wird nach den behandelten Problemstellungen in Teilgebiete unterteilt. Hier eine grobe Kategorisierung:

Überwachtes Lernen (englisch: supervised learning): Ausgehend von einem Eingabewert, zum Beispiel einem Foto von einem Verkehrsschild, besteht die Aufgabe darin, den richtigen Ausgabewert (Label) vorherzusagen, beispielsweise welches Verkehrszeichen im Bild gezeigt wird (Geschwindigkeitsbegrenzung, Stoppschild usw.). In den einfachsten Fällen lautet die Antwort Ja oder Nein. Wir sprechen hier von binärer Klassifikation.

Unüberwachtes Lernen (englisch: unsupervised learning): Es gibt in diesem Fall keine Labels oder korrekten Ausgabewerte. Die Aufgabe besteht vielmehr darin, die Struktur der gegebenen Daten zu erkennen, zum Beispiel, indem ähnliche Begriffe zu Clustern gruppiert oder die Daten auf wichtige „Dimensionen“ reduziert werden. Auch Datenvisualisierung fällt in den Bereich unüberwachtes Lernen.

Verstärkendes Lernen (englisch: reinforcement learning): Diese Art des maschinellen Lernens kommt für gewöhnlich in Situationen zum Tragen, in denen ein KI-Akteur wie ein selbstfahrendes Auto in einer bestimmten Umgebung funktionieren muss und Feedback zu den getroffenen Entscheidungen (gut oder schlecht?) nur mit Verzögerung erfolgt. Sie wird auch bei Spielen verwendet, bei denen das Ergebnis erst am Ende feststeht.

Die einzelnen Kategorien sind durchaus unscharf und überschneiden sich in Teilen, sodass es vorkommen kann, dass man Schwierigkeiten hat, eine bestimmte Methode einer Kategorie zuzuordnen. Halbüberwachtes Lernen (englisch: semisupervised learning) zum Beispiel ist, wie der Name bereits vermuten lässt, teilweise überwacht und teilweise unüberwacht.

Hinweis

Klassifikation

Wir werden uns im Hinblick auf maschinelles Lernen im Folgenden vornehmlich auf die Kategorie überwachtes Lernen und hier besonders auf Klassifikationsaufgaben konzentrieren. Beim Klassifizieren betrachten wir einen Eingangswert, beispielsweise ein Foto eines Verkehrsschilds, und versuchen dessen Klasse abzuleiten, zum Beispiel die Art des Schilds (Geschwindigkeitsbegrenzung auf 80 km/h, Fußgängerüberweg, Stoppschild etc.). Weitere Beispiele für Klassifikationsaufgaben sind die Identifikation von falschen Twitter-Accounts (Eingangswert = Liste der Follower und die Rate, bei der diese begonnen haben, dem Account zu folgen; Klasse = falscher oder echter Account) und die Erkennung von handgeschriebenen Zahlen (Eingangswert = Bild; Klasse = null bis neun).

Mensch unterricht einen Roboter

Wenn Menschen Maschinen unterrichten: überwachtes Lernen

Beim überwachten Lernen werden keine präzisen Klassifikationsregeln verfasst. Vielmehr gilt es, eine Reihe von Beispielen jeweils mit dem korrekten Label zu versehen. In einem weiteren Schritt werden sie dann dafür verwendet, eine KI-Methode darauf zu trainieren, automatisch das richtige Label für die Trainingsbeispiele und – hoffentlich − auch für andere Bilder zu erkennen. Dieses Verfahren setzt selbstverständlich voraus, dass die korrekten Labels zur Verfügung stehen, weswegen wir auch von überwachtem Lernen sprechen: Der Nutzer, der die Labels liefert, fungiert sozusagen als Aufsichtsperson, die den Lernalgorithmus zu den richtigen Antworten leitet. Das Ziel dabei ist, dass dieser am Schluss in der Lage ist, die Antworten eigenständig zu geben.

Überwachtes Lernen dient aber nicht nur dazu, KI-Methoden beizubringen, wie sie in einem Klassifikationsproblem Labels richtig erkennen. Es kann auch in Situationen eingesetzt werden, in denen das vorausgesagte Ergebnis eine Zahl ist. Man spricht in diesem Fall von einem Regressionsproblem. Ein Beispiel dafür ist die Vorhersage der Anzahl an Klicks auf eine Google-Anzeige auf Basis der Werbeinhalte und Informationen über das bisherige Onlineverhalten der User, ein anderes die Vorhersage der Anzahl an Verkehrsunfällen unter Berücksichtigung von Straßenbedingungen und Geschwindigkeitsbegrenzungen. Oder die Vorhersage des Verkaufspreises einer Immobilie auf Grundlage von deren Standort, Größe und Zustand. Wahrscheinlich sagt dir der Begriff lineare Regression etwas: Hierbei handelt es sich um eine typische und noch immer beliebte Regressionstechnik.

Hinweis

Beispiel

Angenommen, wir besitzen einen Datensatz, der aus Verkaufsdaten von Wohnungen besteht. Für jede Immobilientransaktion kennen wir den Verkaufspreis, die Größe der Wohnung (in m2), die Anzahl der Zimmer, das Baujahr und den Zustand (auf einer Skala von „baufällig“ bis „nagelneu“). Wir könnten nun maschinelles Lernen dazu verwenden, ein Regressionsmodell zu trainieren, das den Verkaufspreis auf der Grundlage dieser Parameter vorhersagt. Im Folgenden ein Beispiel aus der Praxis.

drei verschiedene Häuser

Die Grenzen der Methoden maschinellen Lernens

Es existieren einige mögliche Fehlerquellen, auf die wir dich an dieser Stelle gern aufmerksam machen möchten. Vertraue nicht zu sehr auf die Genauigkeit der Vorhersagen, sondern lass bei der Anwendung von Methoden maschinellen Lernens stets Vorsicht walten. Ansonsten ist es möglich, dass du eine böse Überraschung erlebst – nämlich dann, wenn die Genauigkeit der Ergebnisse schlechter ausfällt als erwartet.

Um schwerwiegende Fehler zu vermeiden, solltest du deinen Datensatz immer in Trainingsdaten und Testdaten aufteilen. Zunächst wird der Algorithmus ausschließlich mithilfe der Trainingsdaten trainiert. Auf diese Weise erhalten wir ein Modell oder eine Regel zur Vorhersage des Ausgangswerts anhand der Eingangsvariablen.

Trainingsdaten bieten aber keine verlässliche Grundlage für die Einschätzung, wie gut vorhersagbar die Ausgangswerte tatsächlich sind. Auch wenn ein Modell bei Trainingsdaten ziemlich gute Vorhersagen trifft, ist dies noch lange kein Garant dafür, dass es auf andere Daten übertragen (generalisiert) werden kann. Hier kommen die Testdaten ins Spiel: Wir können das trainierte Modell zur Vorhersage der Ausgangswerte für die Testdaten verwenden und dann in einem weiteren Schritt die Vorhersagen mit den tatsächlichen Ausgangswerten vergleichen (zum Beispiel die zukünftigen Verkaufspreise von Wohnungen).

Hinweis

Vorsicht vor Überanpassung

Es ist äußerst wichtig, im Hinterkopf zu behalten, dass die Genauigkeit einer durch maschinelles Lernen ermittelten Vorhersage bei Trainingsdaten ganz anders ausfallen kann als bei davon unabhängigen Testdaten. Wir sprechen in diesem Kontext vom Überanpassungsphänomen, und viele Forscher auf dem Gebiet des maschinellen Lernens beschäftigen sich damit, wie man es verhindern kann. Vereinfacht gesagt bedeutet Überanpassung (englisch: overfitting), dass man versucht hat, zu schlau zu sein. Wenn du zum Beispiel den Erfolg des neuen Songs eines bekannten Interpreten voraussagen willst, kannst du dir die Erfolgsbilanz seiner früheren Titel ansehen und daraus eine Regel ableiten wie: „Wenn das Lied von Liebe handelt und einen eingängigen Refrain hat, kommt es unter die Top 20.“ Doch vielleicht gibt es ja zwei Liebeslieder mit eingängigem Refrain, die es nicht unter die Top 20 geschafft haben. Dann würdest du vielleicht „... außer Deutschland oder Yoga kommt darin vor“ ergänzen, um die Regel zu verbessern. Auf diese Weise würde deine Regel jetzt zwar perfekt zu den Vergangenheitsdaten passen, aber schlechter zu zukünftigen Testdaten. Methoden maschinellen Lernens tendieren oft zur Überanpassung, da sie eine große Anzahl unterschiedlicher Regeln testen können, bis eine gefunden ist, die perfekt zu den Trainingsdaten passt. Dies gilt insbesondere für Methoden, die in der Lage sind, sich an nahezu jedes Datenmuster anzupassen – es sei denn, die Datenbasis ist riesig. Im Gegensatz zu den ziemlich eingeschränkten Modellen auf Grundlage linearer Regression benötigen bestimmte neuronale Netzwerke zum Beispiel enorme Datenmengen, um eine verlässliche Vorhersage zu treffen.

Eine der wichtigsten Kompetenzen eines Datenwissenschaftlers besteht darin, zu lernen, Überanpassung zu vermeiden, und ein Modell auszuwählen, das weder zu engen Einschränkungen unterliegt noch zu flexibel ist.

Unterricht ohne Lehrer: unüberwachtes Lernen

Wir haben weiter oben bereits über überwachtes Lernen gesprochen, bei dem die richtigen Antworten verfügbar sind und die Aufgabe des Algorithmus für maschinelles Lernen darin besteht, ein Modell zu finden, das diese Antworten ausgehend von den Eingangswerten vorhersagt.

Beim unüberwachten Lernen gibt es keine richtigen Antworten. Das verändert die Ausgangssituation, denn es ist nun nicht mehr möglich, ein Modell zu konstruieren, indem wir es an die richtigen Antworten der Trainingsdaten anpassen. Das erschwert auch die Leistungsbewertung enorm, da wir nicht überprüfen können, ob das gelernte Modell gut funktioniert oder nicht.

Gängige Methoden des unüberwachten Lernens versuchen Muster in Datensätzen zu erkennen und zu erlernen. So werden zum Beispiel bei der Visualisierung ähnliche Begriffe nebeneinander und unähnliche weiter weg voneinander platziert, oder bei der Clusterbildung Daten zur Identifikation von Gruppen (Clustern) verwendet, die zwar ähnlich sind, sich aber von Daten in anderen Clustern unterscheiden.

Hinweis

Beispiel

Ein konkretes Beispiel sind Supermarktketten, die mittels Treuekarten Daten über das Einkaufsverhalten ihrer Kunden sammeln, um diese besser zu verstehen. Der Supermarkt kann die gesammelten Informationen anhand eines Schaubilds visualisieren, in dem jeder Kunde durch einen Punkt dargestellt wird, wobei Kunden, die ähnliche Dinge kaufen, näher beieinander platziert sind als Kunden, die andere Produkte bevorzugen. Der Supermarkt könnte aber auch die Clustermethode anwenden und auf diese Weise verschiedene Kundengruppen identifizieren, zum Beispiel „Kunden mit geringem Budget, die gesundes Essen bevorzugen“, „wohlhabende Fischliebhaber“ oder „Fast-Food-Junkies“. Achtung: Die Methode maschinellen Lernens würde die Kunden lediglich zu Clustern gruppieren, nicht aber automatisch die Labels für die Cluster („Fischliebhaber“ usw.) generieren. Dies wäre Aufgabe des Nutzers.

Ein weiteres Beispiel für unüberwachtes Lernen ist die generative Modellierung, die sich im Zuge des Vormarschs der Deep-Learning-Technik Generative Adversarial Networks (GAN; deutsch: erzeugende konkurrierende Netzwerke) in den letzten Jahren zu einem beliebten Ansatz entwickelt hat. Das generative Modell kann auf Basis bestimmter Daten (der überflüssig) weitere Daten derselben Art produzieren: real wirkende, aber dennoch künstliche Bilder menschlicher Gesichter.

Wir werden im Kursverlauf noch einmal genauer auf GANs zu sprechen kommen und darauf, was es für Auswirkungen haben kann, wenn man plötzlich in der Lage ist, hochwertiges künstliches Bildmaterial zu produzieren. Zunächst widmen wir uns aber dem überwachten Lernen und diskutieren bestimmte Methoden im Detail.