Was ist bestärkendes Lernen?

Reinforcement Learning (RL) ist eine Art des maschinellen Lernens, bei der ein „Agent“ durch Interaktion mit seiner Umgebung optimales Verhalten lernt. Anstatt sich auf explizite Programmierung oder mit Labeln versehene Datasets zu verlassen, lernt dieser Agent durch Ausprobieren und erhält Feedback in Form von Belohnungen oder Strafen für seine Aktionen. Dieser Prozess spiegelt wider, wie Menschen auf natürliche Weise lernen. Daher ist RL ein leistungsstarker Ansatz zur Entwicklung intelligenter Systeme, die komplexe Probleme lösen können.

Grundlagen des bestärkenden Lernens

Beim bestärkenden Lernen geht es darum, Entscheidungen zu treffen. Stellen Sie sich einen Agenten vor, der sich in einer Umgebung bewegt. Dabei kann es sich um ein Softwareprogramm oder einen Roboter handeln. Das kann ein physischer Raum, eine virtuelle Spielwelt oder sogar ein Markt sein. Der Agent führt Aktionen in dieser Umgebung aus, die zu bestimmten Ergebnissen führen können, von denen einige wünschenswerter sind als andere.

Ziel des Agenten ist es, im Laufe der Zeit möglichst viele Belohnungen zu erhalten. Dazu wird eine Richtlinie erlernt, die im Wesentlichen eine Strategie ist, die festlegt, welche Aktion in einer bestimmten Situation auszuführen ist. Diese Richtlinie wird durch viele Interaktionen mit der Umgebung verfeinert.

Betrachten wir zur Veranschaulichung eine KI, die Schach spielt. Die Aktionen des Agenten sind die Züge, die er auf dem Schachbrett macht. Die Umgebung ist der aktuelle Zustand des Spiels und die Belohnung ist der Sieg. Durch wiederholtes Spielen und Feedback zu seinen Zügen lernt der RL-Agent, welche Aktionen eher zum Sieg führen.

Wie funktioniert bestärkendes Lernen?

Der Lernprozess beim bestärkenden Lernen wird durch eine Feedbackschleife gesteuert, die aus vier Hauptelementen besteht:

  • Agent: Der Lernende und Entscheidungsträger im System
  • Umgebung: Die Außenwelt, mit der der Agent interagiert
  • Aktionen: Die Entscheidungen, die der Agent in jedem Schritt treffen kann
  • Belohnungen: Das Feedback, das der Agent nach einer Aktion erhält und das die Wünschbarkeit des Ergebnisses angibt

So funktioniert die Feedbackschleife:

  1. Der Agent beobachtet den aktuellen Zustand der Umgebung.
  2. Basierend auf seiner Richtlinie wählt der Agent eine Aktion aus und führt sie aus.
  3. Die Umgebung reagiert auf die Aktion und wechselt in einen neuen Zustand.
  4. Der Agent erhält ein Belohnungssignal, das den Wert des neuen Zustands widerspiegelt.
  5. Diese Belohnungsinformationen werden verwendet, um die Richtlinie des Agenten zu aktualisieren, sodass er mit größerer Wahrscheinlichkeit Aktionen auswählt, die in der Vergangenheit zu positiven Belohnungen geführt haben.

Dieser Prozess aus Ausprobieren, Feedback erhalten und Regeln verbessern wird so lange fortgesetzt, bis das System gelernt hat, wie es langfristig die meisten Belohnungen erzielen kann.

Arten des bestärkenden Lernens

Es gibt zwei Haupttypen des bestärkenden Lernens: modellbasiertes und modellfreies. 

Modellbasiert

Beim modellbasierten Reinforcement Learning versucht der Agent, ein internes Modell der Umgebung zu erstellen. Dieses Modell ermöglicht es dem Agenten, die Folgen seiner Handlungen vorherzusagen, bevor er sie tatsächlich ausführt, was einen besser geplanten und strategischen Ansatz ermöglicht.

Stellen Sie sich vor, ein Roboter lernt, sich in einem Labyrinth zurechtzufinden. Ein modellbasierter RL-Agent würde versuchen, eine interne Darstellung des Labyrinths zu erstellen. Anschließend würde es dieses Modell verwenden, um einen Pfad zu planen, verschiedene Aktionen und ihre vorhergesagten Ergebnisse zu simulieren, bevor es sich tatsächlich bewegt.

Modellfrei

Modellfreies bestärkendes Lernen hingegen beruht nicht auf der Erstellung eines expliziten Modells der Umgebung. Stattdessen wird die optimale Richtlinie direkt gelernt, indem Aktionen basierend auf den erhaltenen Belohnungen Werte zugeordnet werden.

Zurück zum Labyrinth: Ein modellfreier Agent würde sich nicht die Mühe machen, das gesamte Labyrinth zu kartieren. Stattdessen würde es lernen, welche Aktionen, wie zum Beispiel das Abbiegen nach links oder rechts an bestimmten Kreuzungen, aufgrund seiner bisherigen Erfahrungen und der erhaltenen Belohnungen eher zum Ausgang führen.

Techniken für bestärkendes Lernen

Das Ziel ist immer, die Belohnungen zu maximieren, aber verschiedene RL-Techniken bieten unterschiedliche Strategien, um dies zu erreichen. Kehren wir zu unserem Roboter im Labyrinth zurück:

  • Q-Learning: Dies ist eine beliebte modellfreie Methode. Stellen Sie sich vor, der Roboter erstellt beim Erkunden einen „Spickzettel“. Für jede Kreuzung (Zustand) enthält das Tabellenblatt einen „Qualitätsfaktor“ (Q-Wert) für jede mögliche Abzweigung (Aktion). Nach vielen Versuchen lernt der Roboter, wie er an jeder Kreuzung die bestmögliche Punktzahl erzielen kann. Um den Ausgang zu finden, folgt es einfach dem Pfad mit den höchsten Punktzahlen auf seinem Spickzettel.
  • SARSA (State-Action-Reward-State-Action): Diese Methode ähnelt dem Q-Learning, aber der Roboter ist etwas vorsichtiger. Statt immer davon auszugehen, dass der bestmögliche nächste Schritt unternommen wird, aktualisiert es seinen Spickzettel basierend auf der Aktion, die es tatsächlich gemäß seiner aktuellen Strategie ausführt. Daher ist es eine „richtlinienkonforme“ Methode, da sie auf der Grundlage der Richtlinie lernt, die sie gerade befolgt.
  • Deep Q-Networks (DQN): Was, wenn das Labyrinth riesig ist und Millionen von möglichen Zuständen hat (wie ein Videospiel)? Ein Spickzettel ist nicht praktisch. Ein DQN ersetzt den Spickzettel durch ein neuronales Deep-Learning-Netzwerk. Das Netzwerk fungiert als intelligente „Funktion“, die jeden neuen Zustand analysieren und den Q-Wert schätzen kann, auch wenn sie diese Situation noch nie zuvor gesehen hat. So hat die KI von DeepMind gelernt, Atari-Spiele zu spielen.
  • Policy Gradient Methods: Diese Methoden sind direkter. Anstatt für jede Aktion einen Wert zu lernen, lernt der Roboter eine allgemeine Richtlinie oder eine Reihe von Wahrscheinlichkeiten für das, was in jeder Situation zu tun ist (zum Beispiel: „70% Wahrscheinlichkeit, dass ich an T-Kreuzungen links abbiegen sollte“). Anschließend werden diese Wahrscheinlichkeiten direkt angepasst, je nachdem, ob die gesamte Reise erfolgreich war. So werden die „Instinkte“ des Agenten schrittweise verbessert, um die endgültige Belohnung zu maximieren.

Wann sollte Reinforcement Learning eingesetzt werden?

Verstärkendes Lernen ist ein leistungsstarkes Tool, das sich für bestimmte Szenarien besonders gut eignet. Hier einige Beispiele, wo RL besonders gut funktioniert:

Komplexe Umgebungen mit zahlreichen Zuständen und Aktionen

RL kann Situationen bewältigen, in denen herkömmliche Programmierung oder regelbasierte Systeme zu umständlich wären.

Situationen, in denen Daten durch Interaktion generiert werden

Wenn der Agent durch aktive Interaktion mit seiner Umgebung und Feedback lernen kann, ist das bestärkende Lernen erfolgreich.

Ziele, die eine langfristige Optimierung erfordern

Aufgaben, bei denen es darauf ankommt, die kumulative Belohnung im Laufe der Zeit zu maximieren, eignen sich gut für Reinforcement Learning.

Vorteile und Herausforderungen des bestärkenden Lernens

Verstärkendes Lernen ist eine gute Methode, um schwierige Probleme zu lösen. Es ist jedoch wichtig, sich über die Stärken und Schwächen dieser Methode im Klaren zu sein. Wenn Sie diese potenziellen Vorteile und Herausforderungen kennen, können Sie besser entscheiden, ob und wie RL für verschiedene Aufgaben geeignet ist.

Vorteile von RL

  • Komplexe Probleme lösen: Verstärkendes Lernen kann in Szenarien gut funktionieren, in denen herkömmliche Programmieransätze Schwierigkeiten haben, und Lösungen für komplexe Probleme bieten.
  • Anpassungsfähigkeit: RL-Agents können sich an veränderte Umgebungen anpassen und neue Strategien erlernen, wodurch sie sich für dynamische Situationen eignen.
  • Findet optimale Lösungen: Durch kontinuierliches Erkunden und Lernen zielt RL darauf ab, die effektivsten Strategien zur Erreichung eines Ziels zu finden.

Herausforderungen beim RL

  • Datenintensiv: Verstärkendes Lernen erfordert oft eine große Menge an Interaktionsdaten, um effektiv zu lernen. Das Sammeln dieser Daten kann zeit- und ressourcenintensiv sein.
  • Das Belohnungsdesign ist entscheidend: Der Erfolg von RL hängt stark von der Gestaltung einer Belohnungsfunktion ab, die das gewünschte Verhalten genau widerspiegelt. Dies kann bei einigen Aufgaben eine Herausforderung sein.
  • Sicherheitsbedenken bei realen Anwendungen: In realen Szenarien, wie z. B. in der Robotik, ist es entscheidend, dass die Aktionen des Agenten während des Lernprozesses sicher sind.

Vergleich von bestärkendem Lernen mit überwachtem und unbeaufsichtigtem Lernen

Verstärkendes Lernen, überwachtes Lernen und unbeaufsichtigtes Lernen sind Teilbereiche des maschinellen Lernens, unterscheiden sich aber in ihren grundlegenden Ansätzen:

  • Überwachtes Lernen: Beim überwachten Lernen lernt der Algorithmus aus einem gelabelten Dataset und ordnet Eingaben anhand von Beispielen Ausgaben zu. Das ist so, als würde man mit einem Lehrer lernen, der die richtigen Antworten gibt.
  • Unüberwachtes Lernen: Unüberwachte Lernalgorithmen untersuchen Daten ohne Label, um Muster, Beziehungen oder Strukturen zu erkennen. Das ist wie Lernen ohne Lehrer, bei dem man versucht, die Daten selbstständig zu verstehen.
  • Bestärkendes Lernen: Wie bereits erwähnt, liegt der Fokus beim bestärkenden Lernen auf dem Lernen durch Interaktion mit einer Umgebung und dem Erhalt von Feedback in Form von Belohnungen oder Strafen. Es ist wie Lernen durch Versuch und Irrtum, wobei das Verhalten basierend auf den Ergebnissen von Aktionen angepasst wird.

Anwendungen des bestärkenden Lernens

Die Fähigkeit von RL, durch Interaktion komplexe Verhaltensweisen zu erlernen, macht es zu einem geeigneten Tool für eine Vielzahl von Anwendungen, darunter:

Empfehlungssysteme

Verstärkendes Lernen kann dazu beitragen, Empfehlungen durch das Lernen aus Nutzerinteraktionen zu personalisieren. Wenn Klicks, Käufe oder die Wiedergabezeit als Signale behandelt werden, können RL-Algorithmen Empfehlungssysteme optimieren, um das Nutzerinteresse und die Zufriedenheit zu maximieren. Ein Musikstreamingdienst könnte beispielsweise RL verwenden, um Songs oder Künstler vorzuschlagen, die den sich ändernden Vorlieben eines Nutzers entsprechen.

Spieleentwicklung

Die Spieleindustrie hat das bestärkende Lernen angenommen und nutzt es, um hochqualifizierte Spiel-KI-Agenten zu entwickeln. Diese KI-Agenten, die durch RL trainiert wurden, können in komplexen Spielen bemerkenswerte Fähigkeiten erreichen und zeigen fortgeschrittene strategische Denk- und Entscheidungsfähigkeiten. Bemerkenswerte Beispiele sind AlphaGo und AlphaZero von DeepMind, die die Leistungsfähigkeit von RL demonstrierten, indem sie in Spielen wie Schach Höchstleistungen erbrachten.

Robotiksteuerung

RL hilft Robotern, komplexe motorische Fähigkeiten zu erlernen und sich in schwierigen Umgebungen zurechtzufinden. Indem Roboter für gewünschte Verhaltensweisen wie das Greifen von Objekten oder effiziente Bewegungen belohnt werden, kann RL dazu beitragen, Aufgaben zu automatisieren, die Geschicklichkeit und Anpassungsfähigkeit erfordern. Das kann in der Fertigung, Logistik und sogar im Gesundheitswesen eingesetzt werden, wo Roboter bei Operationen oder der Patientenversorgung helfen können.

Lösungen für bestärkendes Lernen in Google Cloud entwickeln und skalieren

Die Entwicklung eines Systems für bestärkendes Lernen erfordert eine robuste Plattform für das Training von Agents und eine skalierbare Umgebung für deren Bereitstellung. Google Cloud bietet die notwendigen Komponenten:

  • Für das Erstellen und Trainieren von Modellen: Vertex AI ist eine einheitliche Plattform für maschinelles Lernen, die den gesamten ML-Workflow vereinfacht. Sie können damit Ihre RL-Modelle, Experimente und Daten an einem Ort erstellen, trainieren und verwalten.
  • Für skalierbare Bereitstellung: RL-Agents müssen oft in komplexen, dynamischen Umgebungen bereitgestellt werden. Google Kubernetes Engine (GKE) bietet einen verwalteten, skalierbaren Dienst zum Ausführen Ihrer containerisierten Agents, sodass diese mit ihrer Umgebung interagieren und bei Bedarf skaliert werden können.

Gleich loslegen

Profitieren Sie von einem Guthaben über 300 $, um Google Cloud und mehr als 20 „Immer kostenlos“-Produkte kennenzulernen.

Google Cloud