首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DQN损耗不收敛

DQN损耗不收敛
EN

Stack Overflow用户
提问于 2017-10-31 13:07:21
回答 1查看 15.8K关注 0票数 20

我正在使用DQN算法在我的环境中训练一个代理,如下所示:

  • 特工通过选择离散的动作(左、右、上、下)控制一辆汽车。
  • 目标是在不撞到其他汽车的情况下以预期的速度行驶。
  • 状态包含代理人的汽车和周围车辆的速度和位置
  • 奖励:-100碰撞其他汽车,积极奖励根据绝对不同的期望速度(+50,如果驾驶的速度)

我已经调整了一些超参数(网络架构、探索、学习速度),这给了我一些下降的结果,但仍然没有达到应有的效果。在训练过程中,每节课的奖励都在增加。Q值也在收敛(参见图1)。然而,对于所有不同的超参数设置,q损失并不收敛(见图2)。我认为,Q损失的收敛性不足可能是获得更好结果的限制因素.

一个离散动作持续训练的Q值

Q-训练中的损失

我使用的是一个目标网络,每20k个时间步骤更新一次。Q损失计算为MSE.

你知道为什么q损失不收敛吗?对于DQN算法,Q损失必须收敛吗?我想知道,为什么大多数的论文都没有讨论q损失。

EN

回答 1

Stack Overflow用户

发布于 2018-09-05 13:57:20

我认为当您的策略更新时,Q损失不收敛是正常的,因为您的数据不断变化。这与监督学习不同,在那里你的数据永远不会改变,你可以多次传递你的数据,以确保你的权重与这些数据很好地吻合。

另一件事是,我发现在每个时间步骤(软更新)稍微更新目标网络比在每一个X个时间步骤(硬更新)更新它更有效。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47036246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档