Frage zum Reward-Array als Trainings-Input

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Frage zum Reward-Array als Trainings-Input
Hallo allerseits,
wäre schön, wenn mir jemand bei folgendem Problem helfen könnte: Mein Trader muss ja eine Order-List zurückgeben, d.h. er muss sich für eine Aktion entscheiden. Entsprechend bekomme ich beim nächsten Aufruf von trade() den State und die Reward bezogen auf eben diese Aktion. Wenn ich später das Modell mit dieser “Erfahrung” trainiere, muss ich aber Rewards zu allen möglichen Aktionen als Ground-Truth bereitstellen. Kommt das Training nicht durcheinander, wenn ich die Rewards, die ich nicht kenne, einfach ausnulle? Oder gibt es einen Trick, wie ich doch für alle möglichen Aktionen, auch die, die ich nicht wählen würde, States und Rewards berechnen kann? Vielen Dank schon mal!


Ja, da kommt das Training durcheinander.
Ausnullen solltest du also definitiv nicht machen.

Ja, du stehst genau vor dem Knackpunkt, warum du den Deep Q Learning Algo nicht 1:1 im Framework abschreiben kannst.

Ich geb dir einen Tipp:
Du trainierst dein Netz doch auf Q-Werte.
Also musst du für nicht-ausgewählte Aktionen die Q-Werte beim Training bereitstellen.
Was du nicht bereitstellen/berechnen musst sind States und Rewards, wie von dir oben vermutet.


Danke für die rasche Antwort! Aber was ist denn der Q-Wert anderes als die nächste Reward, wenn ich wie vorgeschlagen die Zukunft außer Acht lasse?


In der Theorie ist der Q-Wert identisch zum Reward (Annahme: Zukunft außer Acht lassen), und das neuronale Netz spuckt Q-Werte aus.
In der Praxis approximiert das neuronale Netz nur die Q-Werte (da wir nicht unendlich Zeit haben zum Lernen).

Und genau durch diesen praktischen Unterschied solltest du dir nochmal überlegen, ob du fürs Training Rewards und States, oder Q-Werte benötigst.