Ich versuche, einen temporalen Differenzlernagenten für Othello zu bauen. Während der Rest meiner Implementierung scheint wie geplant zu laufen, wundere ich mich über die Verlustfunktion, die verwendet wird, um mein Netzwerk zu trainieren. In Suttons Buch "Reinforcement learning: A Introduction" wird der Mean Squared Value Error (MSVE) als Standardverlustfunktion dargestellt. Er ist im Grunde ein Mean Square Error multipliziert mit der on policy distribution (Summe aller Zustände s (onPolicyDistribution (s) * [V (s) - V '(s, w)] ²))Implementierung einer Verlustfunktion (MSVE) in Reinforcement Learning
Meine Frage ist jetzt: Wie bekomme ich dies bei der Richtlinienverteilung, wenn meine Richtlinie eine e-gierige Funktion einer gelernten Wertfunktion ist ? ist es überhaupt notwendig und was ist das Problem, wenn ich nur eine statt MSELoss benutzen?
ich all dies in pytorch, so Bonuspunkte für eine einfache Implementierung gibt :)