StepNeverStop/RLs

关于AC框架的算法中的Loss?

Closed this issue · 3 comments

关于AC框架的算法,可不可以用loss作为评价网络训练好坏的标准呢?那么对于一般形式来说,actor_loss、critic_loss有确定的收敛趋势吗?比如说actor_loss上升,critic_loss下降?

@MrsLing 一般不可以在RL中通过LOSS来判断算法收敛趋势,事实上,即使在策略收敛时,Critic Loss也可能很大,一般直接观察统计的reward变化比较好。

比如DDPG算法,我在实现过程中,rewards收敛,actor_loss上升(也就是把加了负号的loss取绝对值),从梯度上升的层面看也合理,但是critic_loss也是上升的,感觉应该有问题。您知道什么原因吗?
图片

critic loss 会由于不同场景的reward设置展现不同的表现形式,但最终收敛时与Actor达到性能的动态平衡,近似最优但非最优。说到底,即使你的reward和actor loss收敛了,拿到的也几乎是次优策略/非最优策略,所以critic loss居高不下是可以容忍的。