微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Keras-RL:ValueError:概率在 policy.py 中包含 NaN

如何解决Keras-RL:ValueError:概率在 policy.py 中包含 NaN

我使用 openai 健身房创建了一个环境,现在我正在尝试不同的设置和代理。 我从 dqn_cartpole 示例 (https://github.com/wau/keras-rl2/blob/master/examples/dqn_cartpole.py) 中的代理开始。在某些时候,由于 NaN 值,q 值的计算失败。我在下面的设置中添加了我的 Traceback 和小的更改。

与 dqn_cartpole 示例相比,我的设置:

密集层:我选择了 256、64、16 而不是 16、16、16

policy = BoltzmannQPolicy()
dqn = DQNAgent(model=model,nb_actions=nb_actions,memory=memory,nb_steps_warmup=50000,target_model_update=1e-2,policy=policy)
dqn.compile(Adam(lr=1e-3),metrics=['mae'])
dqn.fit(env,nb_steps=500000,visualize=False,verbose=2)

• 出错前的最后一个训练集:497280/500000:集:2960,持续时间:13.926s,集步:168,每秒步数:12,集奖励:47056.579,平均奖励:280.099 [-10229.0900,000.平均行动:45.298 [0.000,96.000],损失:60564033920565248.000000,mae:3245972224.000000,mean_q:3358134010

000
Traceback (most recent call last):
  File "~environment.py",line 125,in
    dqn.fit(env,verbose=2)
  File "~\python_env\lib\site-packages\rl\core.py",line 169,in fit
    action = self.forward(observation)
  File "~\python_env\lib\site-packages\rl\agents\dqn.py",line 227,in forward
    action = self.policy.select_action(q_values=q_values)
  File "~\python_env\lib\site-packages\rl\policy.py",in select_action
    action = np.random.choice(range(nb_actions),p=probs)
  File "mtrand.pyx",line 928,in numpy.random.mtrand.RandomState.choice
ValueError: probabilities contain NaN

我在使用 epsgreedyQPolicy 时没有收到此错误。有没有可能理解为什么会产生 NaN 以及如何避免它们?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。