Diskussion zum Artikel "MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 55): SAC mit priorisierter Erfahrungswiederholung"

 

Neuer Artikel MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 55): SAC mit priorisierter Erfahrungswiederholung :

Replay-Puffer sind beim Reinforcement Learning besonders wichtig bei Off-Policy-Algorithmen wie DQN oder SAC. Damit wird das Sampling-Verfahren dieses Speicherpuffers in den Mittelpunkt gerückt. Während bei den Standardoptionen von SAC beispielsweise eine zufällige Auswahl aus diesem Puffer verwendet wird, wird bei den priorisierten Erfahrungswiederholungspuffern eine Feinabstimmung vorgenommen, indem eine Auswahl aus dem Puffer auf der Grundlage eines TD-Scores erfolgt. Wir gehen auf die Bedeutung des Reinforcement Learning ein und untersuchen wie immer nur diese Hypothese (nicht die Kreuzvalidierung) in einem von einem Assistenten zusammengestellten Expert Advisor.

Die Prioritized Experience Replay (PER) und typische Wiederholungspuffer (für Zufallsstichproben) werden beide in RL mit Off-Policy-Algorithmen wie DQN und SAC verwendet, da sie die Speicherung und Stichprobennahme von vergangenen Erfahrungen ermöglichen. PER unterscheidet sich von einem typischen Wiederholungspuffer darin, wie vergangene Erfahrungen priorisiert und abgetastet werden. 

Bei einem typischen Wiederholungspuffer werden die Erfahrungen gleichmäßig und zufällig ausgewählt, d. h. jede der vergangenen Erfahrungen hat die gleiche Wahrscheinlichkeit, ausgewählt zu werden, unabhängig von ihrer Bedeutung oder Relevanz für den Lernprozess. Bei PER werden vergangene Erfahrungen auf der Grundlage ihrer „Priorität“ abgetastet, eine Eigenschaft, die häufig durch die Größe des Zeitdifferenzfehlers quantifiziert wird. Dieser Fehler dient als Indikator für das Lernpotenzial. Jedem Erlebnis wird ein Wert dieses Fehlers zugewiesen, und Erlebnisse mit hohen Werten werden häufiger in die Stichprobe aufgenommen. Diese Prioritätensetzung kann nach einem proportionalen oder rangbasierten Ansatz erfolgen.

Typische Wiederholungspuffer führen auch keine Verzerrungen ein oder verwenden diese. Dies könnte den Lernprozess in unfairer Weise verzerren. Um dies zu korrigieren, verwendet PER Wichtigkeitsgewichte der Stichproben, um die Auswirkungen jeder Erfahrung in den Stichproben zu korrigieren. Typische Wiederholungspuffer sind daher effizienter bezogen auf die Stichproben, da sie im Gegensatz zu PER viel weniger Dinge im Hintergrund erledigen. Auf der anderen Seite ermöglicht PER ein gezielteres und konstruktiveres Lernen, als dies bei den typischen Puffern der Fall ist.

Es versteht sich daher von selbst, dass die Implementierung eines PER komplexer ist als die eines typischen Wiederholungspuffers; dies wird hier jedoch hervorgehoben, weil PER eine zusätzliche Klasse erfordert, um die Prioritätswarteschlange zu verwalten, die oft als „Summenbaum“ (SumTree) bezeichnet wird. Diese Datenstruktur ermöglicht eine effizientere Auswahl von Erfahrungen auf der Grundlage ihrer Priorität. PER führt tendenziell zu einer schnelleren Konvergenz und besseren Leistung, da es sich auf Erfahrungen konzentriert, die für den Agenten informativer oder herausfordernder sind.


Autor: Stephen Njuki