簡體   English   中英

如何訓練Actor-Critic(A2C)強化學習

[英]How to train Actor-Critic (A2C) reinforcement learning

我目前能夠使用Q-Learning訓練系統。 我將其移至Actor_Critic(A2C)方法。 請不要問我為什么要這樣做,我必須這樣做。

我目前正在從https://github.com/higgsfield/RL-Adventure-2/blob/master/1.actor-critic.ipynb借用實施

關鍵是,我一直獲得大約50%的成功率(這基本上是隨機行為)。 我的游戲很長(50步)。 我應該打印出獎勵,價值還是什么? 我應該如何調試呢?

這是一些日志:

simulation episode 2: Success, turn_count =20
loss = tensor(1763.7875)

simulation episode 3: Fail,  turn_count= 42
loss = tensor(44.6923)

simulation episode 4: Fail,  turn_count= 42
loss = tensor(173.5872)

simulation episode 5: Fail,  turn_count= 42
loss = tensor(4034.0889)

simulation episode 6: Fail,  turn_count= 42
loss = tensor(132.7567)

loss = simulation episode 7: Success, turn_count =22
loss = tensor(2099.5344)

作為一般趨勢,我發現對於成功事件而言,損失趨於巨大,而對於失敗事件而言,損失函數輸出趨於較小。

我認為您犯了一個錯誤 ,如果您真的想知道如何實現Actor Critic算法,那么您首先需要掌握2件事:-實現基於值的RL算法(例如DQN)。 -實施基於策略的RL算法(例如“策略梯度”)。

您不能直接跳到演員評論家模型上 ,實際上您可以,但是如果您無法分別理解演員(基於策略)和評論家(基於價值),您將一無所知。

就像您想在開始學習繪畫方法之前先繪畫Joconde。

我的建議是,在實施AC代理之前,花點時間學習這兩個要素。

我使用tensorflow進行了免費課程並在此處完成了實現https://simoninithomas.github.io/Deep_reinforcement_learning_Course/

但是,再次重申,您自己實施架構, 如果您不太了解架構 ,則復制架構是沒有用的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM