强化学习中loss函数不下降

问题描述

采用PPO算法训练gym.make('CartPole-v0')环境。
参数设置如下:

hidden_units = 50
layers = 3
learning_rate = 0.001 # critic 和 actor learning rate相同
max_train_episodes = int(1e4)

在训练过程中效果逐渐变好,即每50步的平均reward增加,但是loss函数不下降
强化学习中loss函数不下降_第1张图片

但是训练过程中的 critic loss和actor loss(tensorboard)一直不下降

强化学习中loss函数不下降_第2张图片

原因分析

随着训练的进行,Buffer内的数据不断增加,数据一直是动态变化的,因而 actor和critic训练的数据集是动态变化的,此和监督学习固定数据集有区别,因此loss不呈现下降趋势。
参考:
https://stackoverflow.com/questions/47036246/dqn-q-loss-not-converging

你可能感兴趣的:(强化学习中loss函数不下降)