Connect with us

KI 101

Was ist Deep Reinforcement Learning?

mm

Was ist Deep Reinforcement Learning?

Neben unsupervised Machine Learning und supervised Learning ist ein weiterer häufiger Ansatz zur KI-Erstellung das Reinforcement Learning. Jenseits des regulären Reinforcement Learning kann tiefes Reinforcement Learning zu erstaunlich beeindruckenden Ergebnissen führen, dank der Tatsache, dass es die besten Aspekte von Deep Learning und Reinforcement Learning kombiniert. Lassen Sie uns einen Blick darauf werfen, wie tiefes Reinforcement Learning genau funktioniert.

Bevor wir uns mit tiefem Reinforcement Learning befassen, könnte es eine gute Idee sein, uns daran zu erinnern, wie reguläres Reinforcement Learning funktioniert. Bei Reinforcement Learning werden zielorientierte Algorithmen durch einen Prozess von Trial und Error entworfen, wobei der Fokus auf der Optimierung für die Aktion liegt, die zum besten Ergebnis führt/die Aktion, die den meisten “Lohn” bringt. Wenn Reinforcement-Learning-Algorithmen trainiert werden, erhalten sie “Belohnungen” oder “Bestrafungen”, die beeinflussen, welche Aktionen sie in Zukunft ausführen werden. Algorithmen versuchen, eine Reihe von Aktionen zu finden, die dem System den größten Lohn bringen, wobei sowohl sofortige als auch zukünftige Belohnungen berücksichtigt werden.

Reinforcement-Learning-Algorithmen sind sehr leistungsfähig, da sie auf fast jede Aufgabe angewendet werden können und flexibel und dynamisch aus einer Umgebung lernen und mögliche Aktionen entdecken können.

Überblick über Deep Reinforcement Learning

Foto: Megajuice via Wikimedia Commons, CC 1.0 (https://commons.wikimedia.org/wiki/File:Reinforcement_learning_diagram.svg)

Wenn es um tiefes Reinforcement Learning geht, wird die Umgebung typischerweise durch Bilder dargestellt. Ein Bild ist eine Aufnahme der Umgebung zu einem bestimmten Zeitpunkt. Der Agent muss die Bilder analysieren und relevante Informationen daraus extrahieren, um zu bestimmen, welche Aktion er ausführen sollte. Tiefes Reinforcement Learning wird normalerweise mit einer der beiden verschiedenen Techniken durchgeführt: value-basiertes Lernen und policy-basiertes Lernen.

Value-basierte Lernmethoden nutzen Algorithmen und Architekturen wie konvolutionale neuronale Netze und Deep-Q-Netzwerke. Diese Algorithmen funktionieren, indem sie das Bild in Graustufen umwandeln und unnötige Teile des Bildes ausschneiden. Anschließend unterzieht sich das Bild verschiedenen Konvolutionen und Pooling-Operationen, um die relevantesten Teile des Bildes zu extrahieren. Die wichtigen Teile des Bildes werden dann verwendet, um den Q-Wert für die verschiedenen Aktionen zu berechnen, die der Agent ausführen kann. Q-Werte werden verwendet, um den besten Kurs für den Agenten zu bestimmen. Nach der initialen Berechnung der Q-Werte wird eine Backpropagation durchgeführt, um die genauesten Q-Werte zu bestimmen.

Policy-basierte Methoden werden verwendet, wenn die Anzahl der möglichen Aktionen, die der Agent ausführen kann, extrem hoch ist, was normalerweise in realen Szenarien der Fall ist. Solche Situationen erfordern einen anderen Ansatz, da die Berechnung der Q-Werte für alle einzelnen Aktionen nicht praktikabel ist. Policy-basierte Ansätze funktionieren, ohne Funktionswerte für einzelne Aktionen zu berechnen. Stattdessen werden Richtlinien erlernt, indem die Richtlinie direkt erlernt wird, oft durch Techniken wie Policy-Gradients.

Policy-Gradients funktionieren, indem sie einen Zustand erhalten und Wahrscheinlichkeiten für Aktionen basierend auf den vorherigen Erfahrungen des Agents berechnen. Die wahrscheinlichste Aktion wird dann ausgewählt. Dieser Prozess wird wiederholt, bis zum Ende der Bewertungsperiode, und die Belohnungen werden dem Agenten gegeben. Nachdem die Belohnungen dem Agenten gegeben wurden, werden die Netzwerkparameter mit Backpropagation aktualisiert.

Was ist Q-Lernen?

Da Q-Lernen ein großer Teil des tiefen Reinforcement Learning-Prozesses ist, sollten wir uns die Zeit nehmen, um zu verstehen, wie das Q-Lernsystem funktioniert.

Der Markov-Entscheidungsprozess

Ein Markov-Entscheidungsprozess. Foto: waldoalvarez via Pixabay, Pixbay-Lizenz (https://commons.wikimedia.org/wiki/File:Markov_Decision_Process.svg)

Damit ein KI-Agent eine Reihe von Aufgaben ausführen und ein Ziel erreichen kann, muss der Agent in der Lage sein, eine Folge von Zuständen und Ereignissen zu bewältigen. Der Agent beginnt in einem Zustand und muss eine Reihe von Aktionen ausführen, um einen Endzustand zu erreichen, und es kann eine massive Anzahl von Zuständen zwischen dem Anfangs- und Endzustand geben. Das Speichern von Informationen über jeden Zustand ist unpraktisch oder unmöglich, sodass das System eine Möglichkeit finden muss, nur die relevanten Zustandsinformationen zu bewahren. Dies wird durch die Verwendung eines Markov-Entscheidungsprozesses erreicht, der nur die Informationen über den aktuellen Zustand und den vorherigen Zustand bewahrt. Jeder Zustand folgt einer Markov-Eigenschaft, die verfolgt, wie der Agent vom vorherigen Zustand in den aktuellen Zustand wechselt.

Tiefes Q-Lernen

Sobald das Modell Zugang zu Informationen über die Zustände der Lernumgebung hat, können Q-Werte berechnet werden. Die Q-Werte sind die Gesamtbewertung, die dem Agenten am Ende einer Folge von Aktionen gegeben wird.

Die Q-Werte werden mit einer Reihe von Belohnungen berechnet. Es gibt eine sofortige Belohnung, die im aktuellen Zustand und in Abhängigkeit von der aktuellen Aktion berechnet wird. Der Q-Wert für den nachfolgenden Zustand wird auch berechnet, sowie der Q-Wert für den Zustand danach, und so weiter, bis alle Q-Werte für die verschiedenen Zustände berechnet wurden. Es gibt auch einen Gamma-Parameter, der verwendet wird, um zu kontrollieren, wie viel Gewicht zukünftige Belohnungen auf die Aktionen des Agents haben. Richtlinien werden normalerweise berechnet, indem Q-Werte zufällig initialisiert und das Modell konvergieren lassen, um die optimalen Q-Werte über den Trainingsverlauf zu bestimmen.

Tiefes Q-Netzwerk

Eines der grundlegenden Probleme bei der Verwendung von Q-Lernen für Reinforcement Learning ist, dass die Menge an Speicher, die zum Speichern von Daten erforderlich ist, schnell anwächst, wenn die Anzahl der Zustände zunimmt. Tiefes Q-Netzwerk löst dieses Problem, indem es neuronale Netzmodelle mit Q-Werten kombiniert, sodass ein Agent aus Erfahrungen lernen und vernünftige Vermutungen über die besten Aktionen anstellen kann. Bei tiefem Q-Lernen werden die Q-Wert-Funktionen mit neuronalen Netzen geschätzt. Das neuronale Netz nimmt den Zustand als Eingabedaten und gibt den Q-Wert für alle möglichen Aktionen aus, die der Agent ausführen kann.

Tiefes Q-Lernen wird durchgeführt, indem alle vergangenen Erfahrungen im Speicher gespeichert, die maximalen Ausgaben für das Q-Netzwerk berechnet und dann eine Verlustfunktion verwendet werden, um die Differenz zwischen aktuellen Werten und den theoretisch höchsten möglichen Werten zu berechnen.

Tiefes Reinforcement Learning vs. Tiefes Lernen

Ein wichtiger Unterschied zwischen tiefem Reinforcement Learning und regulärem tiefem Lernen ist, dass bei ersterem die Eingaben ständig wechseln, was bei traditionellem tiefem Lernen nicht der Fall ist. Wie kann das Lernmodell Eingaben und Ausgaben berücksichtigen, die ständig wechseln?

Im Wesentlichen kann, um die Diskrepanz zwischen vorhergesagten Werten und Zielwerten zu berücksichtigen, anstelle eines Netzwerks zwei Netzwerke verwendet werden. Ein Netzwerk schätzt die Zielwerte, während das andere Netzwerk für die Vorhersagen verantwortlich ist. Die Parameter des Zielnetzwerks werden aktualisiert, während das Modell lernt, nach einer bestimmten Anzahl von Trainingsiterationen. Die Ausgaben der jeweiligen Netzwerke werden dann kombiniert, um die Differenz zu bestimmen.

Richtlinienbasiertes Lernen

Richtlinienbasiertes Lernen funktioniert anders als Q-Wert-basierte Ansätze. Während Q-Wert-Ansätze eine Wertefunktion erstellen, die Belohnungen für Zustände und Aktionen vorhersagt, bestimmen richtlinienbasierte Methoden eine Richtlinie, die Zustände auf Aktionen abbildet. Mit anderen Worten, die Richtlinienfunktion, die Aktionen auswählt, wird direkt optimiert, ohne Rücksicht auf die Wertefunktion.

Richtlinien-Gradients

Eine Richtlinie für tiefes Reinforcement Learning fällt in eine von zwei Kategorien: stochastisch oder deterministisch. Eine deterministische Richtlinie ist eine, bei der Zustände auf Aktionen abgebildet werden, was bedeutet, dass, wenn die Richtlinie Informationen über einen Zustand erhält, eine Aktion zurückgegeben wird. Im Gegensatz dazu geben stochastische Richtlinien anstelle einer einzelnen, diskreten Aktion eine Wahrscheinlichkeitsverteilung für Aktionen aus.

Deterministische Richtlinien werden verwendet, wenn es keine Unsicherheit über die Ergebnisse der Aktionen gibt, die ausgeführt werden können. Mit anderen Worten, wenn die Umgebung selbst deterministisch ist. Im Gegensatz dazu sind stochastische Richtlinienausgaben geeignet für Umgebungen, in denen das Ergebnis von Aktionen unsicher ist. Typischerweise beinhalten Reinforcement-Learning-Szenarien ein gewisses Maß an Unsicherheit, sodass stochastische Richtlinien verwendet werden.

Richtlinien-Gradienten-Ansätze haben einige Vorteile gegenüber Q-Learning-Ansätzen, sowie einige Nachteile. In Bezug auf Vorteile konvergieren policy-basierte Methoden schneller und zuverlässiger auf optimale Parameter. Der Richtlinien-Gradient kann einfach verfolgt werden, bis die besten Parameter bestimmt sind, während bei wertbasierten Methoden kleine Änderungen der geschätzten Aktionswerte zu großen Änderungen der Aktionen und ihrer zugehörigen Parameter führen können.

Richtlinien-Gradients funktionieren auch besser für hochdimensionale Aktionen. Wenn es eine extrem hohe Anzahl von möglichen Aktionen gibt, die ausgeführt werden können, wird tiefes Q-Lernen unpraktikabel, da es einen Score für jede mögliche Aktion für alle Zeitschritte zuweisen muss, was rechnerisch unmöglich sein kann. Mit richtlinienbasierten Methoden werden die Parameter jedoch im Laufe der Zeit angepasst, und die Anzahl der möglichen besten Parameter verringert sich schnell, während das Modell konvergiert.

Richtlinien-Gradients sind auch in der Lage, stochastische Richtlinien umzusetzen, was bei wertbasierten Richtlinien nicht der Fall ist. Da stochastische Richtlinien eine Wahrscheinlichkeitsverteilung erzeugen, muss kein Explorations-Exploitations-Kompromiss implementiert werden.

In Bezug auf Nachteile ist der Hauptnachteil von Richtlinien-Gradienten, dass sie stecken bleiben können, während sie nach optimalen Parametern suchen, und sich nur auf einen engen, lokalen Satz von Optimalwerten konzentrieren, anstelle von globalen Optimalwerten.

Richtlinien-Score-Funktion

Die Richtlinien, die verwendet werden, um die Leistung eines Modells zu optimieren, zielen darauf ab, eine Score-Funktion zu maximieren – J(θ). Wenn J(θ) ein Maß dafür ist, wie gut unsere Richtlinie für die Erreichung des gewünschten Ziels ist, können wir die Werte von “θ” finden, die uns die beste Richtlinie geben. Zuerst müssen wir eine erwartete Richtlinienbelohnung berechnen. Wir schätzen die Richtlinienbelohnung, um ein Ziel zu haben, auf das wir hin optimieren können. Die Richtlinien-Score-Funktion ist, wie wir die erwartete Richtlinienbelohnung berechnen, und es gibt verschiedene Richtlinien-Score-Funktionen, die häufig verwendet werden, wie z.B. Startwerte für episodische Umgebungen, den Durchschnittswert für kontinuierliche Umgebungen und die durchschnittliche Belohnung pro Zeitschritt.

Richtlinien-Gradienten-Anstieg

Gradienten-Anstieg zielt darauf ab, die Parameter zu bewegen, bis sie an dem Punkt sind, an dem die Bewertung am höchsten ist. Foto: Public Domain (https://commons.wikimedia.org/wiki/File:Gradient_ascent_(surface).png)

Nachdem die gewünschte Richtlinien-Score-Funktion verwendet und eine erwartete Richtlinienbelohnung berechnet wurde, können wir einen Wert für den Parameter “θ” finden, der die Score-Funktion maximiert. Um die Score-Funktion J(θ) zu maximieren, wird eine Technik namens “Gradienten-Anstieg” verwendet. Gradienten-Anstieg ist ähnlich wie Gradienten-Abstieg im tiefen Lernen, aber wir optimieren für den steilsten Anstieg anstelle des Abstiegs. Dies liegt daran, dass unsere Bewertung nicht “Fehler” ist, wie in vielen tiefen Lernproblemen. Unsere Bewertung ist etwas, das wir maximieren möchten. Ein Ausdruck namens Richtlinien-Gradienten-Theorem wird verwendet, um den Gradienten in Bezug auf die Richtlinie “θ” zu schätzen.

Zusammenfassung von Deep Reinforcement Learning

Zusammenfassend kombiniert tiefes Reinforcement Learning Aspekte von Reinforcement Learning und tiefen neuronalen Netzen. Tiefes Reinforcement Learning wird mit zwei verschiedenen Techniken durchgeführt: Deep Q-Learning und Richtlinien-Gradients.

Deep Q-Learning-Methoden zielen darauf ab, vorherzusagen, welche Belohnungen bestimmten Aktionen in einem gegebenen Zustand folgen, während Richtlinien-Gradienten-Ansätze darauf abzielen, den Aktionenraum zu optimieren, indem sie die Aktionen selbst vorhersagen. Richtlinienbasierte Ansätze für tiefes Reinforcement Learning sind entweder deterministisch oder stochastisch. Deterministische Richtlinien ordnen Zustände direkt Aktionen zu, während stochastische Richtlinien Wahrscheinlichkeitsverteilungen für Aktionen erzeugen.

Blogger und Programmierer mit Spezialisierungen in Machine Learning und Deep Learning Themen. Daniel hofft, anderen zu helfen, die Macht von KI für das soziale Wohl zu nutzen.