Das Hauptproblem beim TD-Lernen und bei DP besteht darin, dass ihre Schrittaktualisierungen auf die Anfangsbedingungen der Lernparameter ausgerichtet sind. Der Bootstrapping-Prozess aktualisiert typischerweise eine Funktion oder Suche Q (s, a) auf einem Nachfolgerwert Q (s ', a') unter Verwendung der aktuellen Schätzungen in letzterem. Offensichtlich enthalten diese Schätzungen zu Beginn des Lernens keine Informationen über echte Belohnungen oder Zustandsübergänge.
Wenn das Lernen wie beabsichtigt funktioniert, verringert sich die Verzerrung über mehrere Iterationen asymptotisch. Die Verzerrung kann jedoch erhebliche Probleme verursachen, insbesondere bei nicht politischen Methoden (z. B. Q-Learning) und bei Verwendung von Funktionsapproximatoren. Es ist so wahrscheinlich, dass diese Kombination nicht konvergiert, dass sie in Sutton & Bart als tödliche Triade bezeichnet wird .
Monte-Carlo-Steuermethoden leiden nicht unter dieser Verzerrung, da bei jeder Aktualisierung eine echte Stichprobe dessen verwendet wird, was Q (s, a) sein sollte. Monte-Carlo-Methoden können jedoch unter einer hohen Varianz leiden, was bedeutet, dass mehr Stichproben erforderlich sind, um im Vergleich zu TD den gleichen Lerngrad zu erreichen.
In der Praxis scheint das TD-Lernen effizienter zu lernen, wenn die Probleme mit der tödlichen Triade überwunden werden können. Jüngste Ergebnisse, die Erfahrungswiedergabe und inszenierte "eingefrorene" Kopien von Schätzern verwenden, bieten Workarounds, die Probleme beheben - z. B. wurde der DQN-Lerner für Atari-Spiele entwickelt.
Es gibt auch einen Mittelweg zwischen TD und Monte Carlo. Es ist möglich, eine verallgemeinerte Methode zu konstruieren, die Trajektorien unterschiedlicher Länge - vom einstufigen TD bis zum Abschluss von Episodenläufen in Monte Carlo - kombiniert und kombiniert. Die häufigste Variante davon ist das TD- Lernen ( ), wobei ein Parameter von (effektiv einstufiges TD-Lernen) bis (effektiv Monte-Carlo-Lernen) ist, aber mit einer netten Funktion, die kontinuierlich verwendet werden kann Probleme). In der Regel ist ein Wert zwischen und der effizienteste Lernagent. Wie bei vielen Hyperparametern hängt der beste Wert jedoch vom Problem ab.λλ0101
Wenn Sie eine wertbasierte Methode verwenden (im Gegensatz zu einer richtlinienbasierten), wird das TD-Lernen in der Praxis im Allgemeinen häufiger verwendet, oder eine TD / MC-Kombinationsmethode wie TD (λ) kann sogar noch besser sein.
In Bezug auf "praktischen Vorteil" für MC? Monte-Carlo-Lernen ist konzeptionell einfach, robust und leicht zu implementieren, wenn auch oft langsamer als TD. Ich würde es im Allgemeinen nicht für eine lernende Controller-Engine verwenden (es sei denn, ich habe es eilig, etwas für eine einfache Umgebung zu implementieren), aber ich würde es ernsthaft für die Richtlinienbewertung in Betracht ziehen, um beispielsweise mehrere Agenten zu vergleichen - das liegt daran, dass es sich um eine handelt unvoreingenommene Maßnahme, die für das Testen wichtig ist.
Im Wesentlichen hängt es von Ihrer Umgebung ab.
TD nutzt die Markov-Eigenschaft aus, dh die zukünftigen Zustände eines Prozesses hängen nur vom aktuellen Zustand ab. Daher ist es normalerweise effizienter, TD in Markov-Umgebungen zu verwenden.
MC nutzt die Markov-Eigenschaft nicht aus, da die Belohnungen auf dem gesamten Lernprozess basieren, der sich für Nicht-Markov-Umgebungen eignet.
quelle