如何知道我的 DQN 是否经过优化?

人工智能 机器学习 q学习 dqn
2021-10-24 21:57:51

我制作了一个控制红绿灯的 DQN。观察状态是交叉路口各车道的车辆数量。我训练了 500 集,每 50 集保存一次模型。我在训练后绘制了模型的奖励曲线,发现在第 460 集左右,奖励曲线变得不稳定。这是否意味着优化后的 DQN 模型是第 450 个模型?如果没有,我怎么知道我的 DQN 是否真的优化了?

1个回答

您的 DQN 很有可能已经优化,但您必须查看它的性能才能真正检查它的操作是否符合标准。

可能未优化的原因:如果您在每集之后跟踪奖励,由于随机机会,不稳定的奖励很常见,但如果您对过去 50 集左右的奖励进行平均,那么这也可能是您的学习率或ε。

如果您的学习率太高或太低,您可能永远无法达到完全优化的 DQN,或者陷入局部最小值。解决此类问题的一种简单方法是添加一个简单的学习率衰减,以便学习率开始时会很高,不会陷入局部最小值,但会衰减到足够小的数字,您知道代理找到了全局最小值。

另一个问题可能是您的 epsilon 可能太高或太低。高 epsilon 永远不会允许代理完全优化,而低 epsilon 不允许代理探索和发现更好的策略,因此也可以解决这个问题。

真正衡量智能体表现的唯一方法是通过视频或分析它的一些预测来观察它做出的一些决定。而且,如果它看起来表现不错,那么它很可能会被优化,但是,如果代理的表现不如预期,那么尝试上面的一些策略可能是个好主意。