Die moderne KI basiert auf Machine Learning. Aber wie kann gelernt werden? …
Diesen Fragen wollen wir in diesem Kapitel nachgehen. Dabei werden wir zwischen drei Möglichkeiten (oder auch Paradigmen) unterscheiden, wie Maschinen lernen können:
- mit beschrifteten Daten durch überwachtes Lernen (supervised learning)
- mit unbeschrifteten Daten durch unüberwachtes Lernen (unsupervised learning)
- und durch Belohnung und Bestrafung mit verstärkendem Lernen (reinforcement learning)
Supervised Learning
Wörtli-Lernen mit Lernkärtchen fürs Franz
Beim supervised learning (deutsch: überwachtes Lernen) werden beschriftete Datensätze verwendet, um die Gewichte eines Modells zu trainieren. Das trainierte Modell sollte dann in der Lage sein, auch unbekannte Eingaben korrekt zu klassifizieren, resp. Vorhersagen zu treffen.
Zum Einsatz kommt supervised learning vor allem bei den folgenden zwei Arten von Problemen:
Klassifikationsprobleme
Bei Klassifikationsproblemen geht es darum, Eingaben eine bestimmte Kategorie (label) zuzuweisen.
Typische Anwendungsgebiete sind beispielsweise:
- Zeigt ein Foto eine Katze, einen Hund oder einen Vogel?
- In welche Risikokategorie fällt eine Kreditnehmer:in?
- Ist eine E-Mail als Spam einzuordnen oder nicht?
Regressionsprobleme
Überwachtes Lernen kann auch eingesetzt werden, um numerische Werte vorauszusagen. Dabei wird versucht, ein Zusammenhang zwischen den eingegeben Werten und der als Zahl vorliegenden Beschriftung zu finden.
Mögliche Fragestellungen von Regressionsproblemen lauten dementsprechend:
- In wie vielen Wochen wird der Nutzer sein Video-Abonnement kündigen?
- Welchen Verkaufspreis wird ein Haus erzielen?
- Welchen Kursgewinn wird eine Aktie erreichen?
Unsupervised Learning
welche Dinge sind ähnlich?
Unsupervised learning (deutsch: unüberwachtes Lernen) kommt dann zur Anwendung, wenn keine beschriftete Eingabedaten zur Verfügung stehen. Man könnte z.B. Kindern eine Kiste Legosteine geben und sie bitten, diese zu sortieren. Was dabei genau rauskommt, ist nicht im vornherein klar: Vielleicht werden die Steine nach Grösse, vielleicht aber auch nach Farbe sortiert.
Clusteranalysen
Beim Clustering wird versucht aus den Eingabedaten verschiedene Gruppen zu finden.
Dies wird oft auch zum Vorbereiten von Daten für supervised learning verwendet, da eine manuelle Beschriftung sehr aufwändig ist.
Anomalieerkennung
Das Gegenteil von Clustering stellt die Anomalieerkennung dar, bei der der Fokus – statt auf der Gruppierung von Daten – auf dem Erkennen von Ausreissern liegt.
Anwendung findet das etwa in der Analyse von verdächtigem Netzwerkverkehr oder der Betrugserkennung bei Kreditkartenzahlungen.
Assoziationen
Man kann mit unsupervised learning auch bisher verborgene Zusammenhänge erkennen.
Dies kann z.B. für Kaufempfehlungen beim Online-Shopping verwendet werden.
Reinforcement Learning
wie oft berührt eine Kuh den elektrischen Zaun?
Beim – durch die Psychologie inspirierten – reinforcement learning wird der Agent (das zu autonomen Verhalten fähige Programm) wiederholt für seine Tat belohnt oder bestraft. So lernt er die Erfolgsaussichten seiner Taten besser einzusätzen und kann seine Strategie verbessern.
Im Gegensatz zu den beiden anderen Lernmethoden, werden hier Vorab keine grosse Datenmengen benötigt. Allerdings muss die neue Situation irgendwie bewertet werden können.
Spiele
Bei Spielen lässt sich Zustand der Umgebung relativ leicht erfassen. Die beste Aktion oder der beste Zug hängt jedoch von einer Reihe von Faktoren ab. Aufgrund dieser Komplexität lässt sich also kaum ein klassischer Algorithmus finden, um auf alle Eventualitäten des Spiels reagieren zu können. Der Agent spielt also unzählige Runden und Partien und lernt dabei das entsprechende Spiel zu meistern.
Roboter oder selbstfahrende Autos
Bei Robotern und selbstfahrenden Auto wird oft in Simulationsumgebungen trainiert, ehe man Roboter oder Autos in der echten Welt Erfahrungen sammeln lässt.
Optimierungsaufgaben
Es gibt Optimierungsprobleme, die mathematisch kaum lösbar sind. Hier kann so ein Agent in kurzer Zeit viele Einstellungen durchspielen und dabei lernen, was für das gewünschte Ergebnis die richtige Einstellung ist.