Proximal Policy Optimization (PPO) ist ein Reinforcement-Learning-Algorithmus (RL) zum Training eines intelligenten Agenten. Genauer gesagt handelt es sich um eine Policy-Gradient-Methode, die häufig für tiefes Reinforcement Learning verwendet wird, wenn das Policy-Netzwerk sehr groß ist. PPO wurde 2017 als Näherung der Trust Region Policy Optimization (TRPO) eingeführt, um die Trainingsstabilität zu verbessern, ohne die Rechenkosten für die Berechnung von Ableitungen zweiter Ordnung zu tragen. Seit 2018 ist PPO der Standard-RL-Algorithmus bei OpenAI und wurde auf Bereiche wie die Steuerung von Roboterarmen, das Spielen von Atari-Spielen und das Besiegen professioneller Spieler in Dota 2 durch das OpenAI-Five-Projekt angewendet.
PPO gehört zur Familie der Policy-Gradient-Methoden, die eine Policy direkt optimieren, indem sie Gradienten des erwarteten Belohnungswerts schätzen. Im Gegensatz zu wertbasierten Methoden wie Deep Q-Networks (DQN) ist PPO ein On-Policy-Algorithmus, was bedeutet, dass er die Policy mithilfe von Daten aktualisiert, die mit der aktuellen Policy gesammelt wurden. Er unterstützt sowohl diskrete als auch kontinuierliche Aktionsräume, was ihn für eine Vielzahl von Umgebungen vielseitig einsetzbar macht.
Hintergrund: Trust Region Policy Optimization
Der Vorgänger von PPO, die Trust Region Policy Optimization (TRPO), wurde 2015 veröffentlicht. TRPO adressierte die Instabilitätsprobleme von DQN, indem es eine Trust-Region-Methode verwendete, um die KL-Divergenz zwischen der alten und der neuen Policy zu begrenzen. Diese Einschränkung stellt sicher, dass sich die Policy während eines Updates nicht zu drastisch ändert, was ein stabiles Lernen unterstützt. TRPO erzwingt diese Einschränkung jedoch durch die Berechnung der Hesse-Matrix, einer Matrix von Ableitungen zweiter Ordnung, was rechenintensiv und für groß angelegte Probleme ineffizient ist. Diese Einschränkung motivierte die Entwicklung von PPO, das die Einschränkung von TRPO ohne die Notwendigkeit der Hesse-Matrix approximiert.
Der PPO-Algorithmus
PPO vereinfacht TRPO, indem es die KL-Divergenz-Einschränkung durch eine geclippte Zielfunktion ersetzt. Die Kernidee besteht darin, das Policy-Update zu begrenzen, indem das Wahrscheinlichkeitsverhältnis zwischen der neuen und der alten Policy geclippt wird. Dieser Clipping-Mechanismus verhindert übermäßig große Updates, die das Training destabilisieren können. Die Zielfunktion ist so gestaltet, dass sie eine untere Grenze für die Policy-Verbesserung bietet, wodurch Updates konservativ, aber dennoch effektiv bleiben.
Der Algorithmus folgt typischerweise diesen Schritten:
- Sammeln von Trajektorien, indem die aktuelle Policy in der Umgebung ausgeführt wird.
- Berechnen von Rewards-to-go und Advantage-Schätzungen (z. B. mithilfe der generalisierten Advantage-Schätzung).
- Aktualisieren der Policy durch Maximierung der geclippten Surrogat-Zielfunktion, häufig mithilfe des stochastischen Gradientenanstiegs.
- Optionales Aktualisieren einer Wertfunktion, um die Advantage-Schätzung zu verbessern.
PPO ist bekannt für seine Einfachheit und einfache Implementierung im Vergleich zu TRPO, während es in vielen Aufgaben eine vergleichbare oder bessere Leistung erzielt. Es ist zu einer Standard-Baseline in der Reinforcement-Learning-Forschung geworden.
Anwendungen und Auswirkungen
PPO wurde sowohl in der Forschung als auch in der Industrie weit verbreitet eingesetzt. Bei OpenAI wurde es 2018 zum Standard-RL-Algorithmus und wurde in Projekten wie OpenAI Five verwendet, das 2019 die amtierenden Weltmeister in Dota 2 besiegte. PPO wurde auch für die Robotersteuerung eingesetzt, einschließlich des Trainings eines Roboterarms für Manipulationsaufgaben, sowie für das Spielen von Atari-Spielen, wo es in vielen Titeln übermenschliche Leistungen erzielte.
Die Stabilität und Stichprobeneffizienz des Algorithmus haben ihn zu einer beliebten Wahl für das Feintuning großer Sprachmodelle gemacht, insbesondere im Kontext des Reinforcement Learning aus menschlichem Feedback (RLHF). Viele moderne große Sprachmodelle wurden mithilfe von PPO oder Varianten davon ausgerichtet, was zur Entwicklung von generativer KI-Systemen beigetragen hat.
Vergleich mit anderen Methoden
PPO wird häufig mit anderen Policy-Gradient-Algorithmen wie A2C (Advantage Actor-Critic) und DDPG (Deep Deterministic Policy Gradient) verglichen. Im Gegensatz zu A2C, das mehrere parallele Umgebungen verwendet, kann PPO mit einer einzelnen Umgebung arbeiten und verwendet Importance Sampling, um Daten wiederzuverwenden. Im Vergleich zu DDPG, das off-policy und deterministisch ist, ist PPO on-policy und stochastisch, was es robuster gegenüber Hyperparameter-Variationen macht. Die geclippte Zielfunktion von PPO bietet außerdem eine einfachere Alternative zur Trust Region von TRPO, wodurch der Rechenaufwand reduziert wird, während die Stabilität erhalten bleibt.
Einschränkungen und Erweiterungen
Trotz seines Erfolgs hat PPO Einschränkungen. Es kann empfindlich auf den Clipping-Parameter und die Wahl der Advantage-Schätzungsmethode reagieren. Es erfordert außerdem eine sorgfältige Abstimmung von Hyperparametern wie Lernrate und Mini-Batch-Größe. Forscher haben Erweiterungen wie PPO-λ vorgeschlagen, das die generalisierte Advantage-Schätzung integriert, sowie Varianten, die den Clipping-Bereich adaptiv anpassen. Darüber hinaus kann die On-Policy-Natur von PPO im Vergleich zu Off-Policy-Methoden stichprobenineffizient sein, obwohl dies oft durch seine Stabilität ausgeglichen wird.