我试着用RLLib复制突破的DQN分数。5米台阶后,平均奖励为2.0,而使用DQN的已知突破得分为100+。我想知道这是否是因为奖励剪辑,因此实际奖励不符合Atari的分数。在OpenAI基线中,实际得分放在info['r']中,奖励值实际上是剪裁值。RLLib的情况也是这样吗?在训练过程中有什么方法可以看到实际的平均分数吗?
发布于 2020-01-20 03:32:59
根据教练员参数列表的说法,图书馆将在默认情况下剪辑Atari奖励:
# Whether to clip rewards prior to experience postprocessing. Setting to
# None means clip for Atari only.
"clip_rewards": None,然而,episode_reward_mean报告的张力板仍然应该与实际的,非剪裁的分数.
虽然2的平均分数与击穿的基准值相比一点也不算高,但5米级的步数对DQN来说可能不够大,除非你使用类似彩虹的东西来显著加快速度。即使如此,DQN收敛速度慢出了名。,所以您可能希望使用更长的运行来检查您的结果,并且/或考虑升级您的DQN配置。
我已经做了一个快速测试,看起来奖励剪辑对突击队没有多大影响,至少在训练的早期(用蓝色剪裁,用橙色剪裁):

我对“突破”的得分体系不太了解,但如果以后随着我们的表现更好而获得更高的奖励(而不是得到同样的小奖励,而是频率更高),我们就应该开始看到两者的分歧。在这种情况下,我们仍然可以规范奖励或将其转换为对数规模。
下面是我使用的配置:
lr: 0.00025
learning_starts: 50000
timesteps_per_iteration: 4
buffer_size: 1000000
train_batch_size: 32
target_network_update_freq: 10000
# (some) rainbow components
n_step: 10
noisy: True
# work-around to remove epsilon-greedy
schedule_max_timesteps: 1
exploration_final_eps: 0
prioritized_replay: True
prioritized_replay_alpha: 0.6
prioritized_replay_beta: 0.4
num_atoms: 51
double_q: False
dueling: False您可能更感兴趣的是他们的rl-experiments,他们根据标准基准和配置发布了自己库中的一些结果,在那里您应该能够获得更好的性能。
https://stackoverflow.com/questions/58678710
复制相似问题