Open CeibaSheep opened 2 years ago
请问,在PPO代码的agent.py 文件,
为啥要算total_loss = actor_loss + 0.5*critic_loss? PPO讲解中未见分析欸,而且 PPO原文中也未看到相关操作。
另外,为什么AC网络均使用total_loss的梯度, 这个地方合理吗???
你好,请问你找到理论依据了吗,我也有同样的困惑。
请问,在PPO代码的agent.py 文件,
为啥要算total_loss = actor_loss + 0.5*critic_loss? PPO讲解中未见分析欸,而且 PPO原文中也未看到相关操作。
另外,为什么AC网络均使用total_loss的梯度, 这个地方合理吗???
我理解是不是求梯度的时候还是各求各的,不相关的视为常数,导数为0,这样就分开计算损失是一样的
请问,在PPO代码的agent.py 文件, 为啥要算total_loss = actor_loss + 0.5*critic_loss? PPO讲解中未见分析欸,而且 PPO原文中也未看到相关操作。 另外,为什么AC网络均使用total_loss的梯度, 这个地方合理吗???
我理解是不是求梯度的时候还是各求各的,不相关的视为常数,导数为0,这样就分开计算损失是一样的
同意,最终还是看计算图,相当于一起优化,求导不影响,看optimizer怎么定义的就好了
请问,在PPO代码的agent.py 文件,
为啥要算total_loss = actor_loss + 0.5*critic_loss? PPO讲解中未见分析欸,而且 PPO原文中也未看到相关操作。
另外,为什么AC网络均使用total_loss的梯度, 这个地方合理吗???