强化学习:减少损失而不增加奖励

数据挖掘 强化学习 q学习
2021-10-13 11:43:14

我正在尝试解决OpenAI Gym 的 LunarLander-v2问题。

我正在使用深度 Q 学习算法。我尝试了各种超参数,但我无法获得好分数。

通常,损失会随着许多情节而减少,但奖励并没有太大改善。在此处输入图像描述

我该如何解释这个?如果较低的损失意味着更准确的价值预测,那么我天真地期望智能体采取更多高回报的行动。

这可能是智能体没有进行足够探索,被困在局部最小值的标志吗?

1个回答

我该如何解释这个?如果较低的损失意味着更准确的价值预测,那么我天真地期望智能体采取更多高回报的行动。

较低的损失意味着对当前策略的价值预测更准确(从技术上讲,Q-learning 离策略估计更复杂,但覆盖范围仍将受到当前策略中可达到的经验的限制)。不幸的是,RL 中的损失指标无法捕捉到该策略有多好。

因此,这意味着您的策略已经确定为一种模式,在这种模式中,您用于 Q 的神经网络可以很好地估计值。由于某种原因,它没有找到对该策略的改进——通常它应该损失指标下降,因为价值估计的每一次改进都应该揭示更好的可能行动,一旦新政策开始采取这些行动,价值估计就会过时,损失会再次增加。

这可能是智能体没有进行足够探索,被困在局部最小值的标志吗?

探索可能是个问题。在这种情况下,“局部最小值”可能不是神经网络的问题,但是策略的微小变化都比当前的策略更糟糕。当你在学习off-policy时,提高探索率可能有助于找到更好的状态,但会降低整体学习速度。此外,在每个动作上比随机探索更广泛的方法可能会更好 - 例如,始终选择未探索的状态/动作对的动作选择方法,例如上限置信度。

还有一种可能是您的网络结构在当前政策下很好地概括,但无法涵盖更好的政策。在这种情况下,每当探索提出更好的策略时,网络也会增加对不相关动作选择的估计——因此它会尝试它们,注意到它们更好,然后因为新值也会在其他情况下导致不需要的策略变化而退缩。

如果您知道比正在找到的策略更好的策略,那么您可以在策略固定的情况下绘制学习曲线,看看网络是否可以学习它。然而,通常你不会知道这一点,所以你可能会被困在尝试神经网络架构或其他超参数的一些变体上。

除了 DQN 之外,还有其他方法(例如 A3C、DDPG),以及您可以尝试的许多对 DQN 的附加和调整(例如资格跟踪、双重学习)。