AI4Finance-Foundation / AI4Finance-Foundation/ElegantRL

A little bug in elegantrl/train/run.py

Offen
#290 1 Kommentar 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
bug
Vorherrschende Sprache
Python
Sterne
4.4k
Forks
978
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

run.py 中第82行 exp_r = buffer_items[2].mean().item
当agent为AgentPPO时,由于AgentPPO中重写了上一行中的agent.explore_env,也就是调用的是elegantrl/agents/AgentPPO中的explore_one_env和explore_vec_env两个函数,返回的元组中第三位不再是reward而是logprobs。如果需要获取探索的奖励,这里应该改为 exp_r = buffer_items[3].mean().item,请确认下是否是这样。
同理对run.py中的多进程版本即第218行求exp_r也应该将buffer_items_tensor[2]改为buffer_items_tensor[3]。
当然为了使用其他的Agent依然正确,其实应该修改的是AgentPPO中的xplore_one_env和explore_vec_env返回值顺序,这样的话就要修改elegantrl/agents/AgentPPO.py的81、120、124行将rewards调整到第三个返回值位置上。

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.