【强化学习】Deep Reinforcement Learning with Double Q-learning(2015)

Deep Reinforcement Learning with Double Q-learning(2015)

传统的q learning被认为会过高估计action value,因为它包括了一个maximization step,这样就倾向于过高的估计价值的大小。之前的工作中,高估被归因为function approximation有限(?)。本文统一了这些观点,提出当action value不正确时,高估就会出现,这是误差出现的源头。

无论是标准的Q-learning还是DQN,都是用相同的value来选择和评估一个行为,这样就会 导致对value的过高估计。因此可以分离选择和评估,这个方法是来自于Double Q-learning(van Hasselt, 2010).

在原始的Double Q-learning算法中,两个value functions通过随机分配experience来更新2个value function中的一个。有2个权重,一个用来决定greedy policy,另一个用来决定它的value。下面是将选择和评估拆解开的公式,
在这里插入图片描述
因此Double Q-learning 误差可以被写成:
在这里插入图片描述

Overoptimism due to estimation errors
这个章节暂时看不懂。。

Double DQN

DQN的target网络没有引入额外的网络,而是提供了一个natural candidate对于第二价值函数。本文的想法是通过在线网络去评估greedy policy,使用target网络去评估value。受double q-learning和DQN的启发,提出了Double DQN。
在这里插入图片描述
和Double Q-learning相比,第二个网络的权重被目标网络替代为了评估当前的greedy policy。目标网络的更新与DQN相同,依旧是在线网络的周期性复制。

DDQN
在这里插入图片描述
DQN
在这里插入图片描述
从代码可以看出来
DQN其实使用target网络选择出action,然后这个action对应到target网络上的Q值进行更新
DDQN则是通过当前online网络选择出max-action,之后更新这个action对应到target网络上的Q值。

看完了还是有一些疑惑,DDQN能解决由于max产生的过高估计的问题吗?这两个网络的参数其实还是有相似的啊,所以并不能说shi两个不同网络,或者说ddqn的目的并不是减少相关性,而仅仅是为了解决最大化问题??

Deep Q-learning中Q_B是由一系列不同的experience samples更新得到的。It is important that both Q functions learn from separate sets of experiences, but to select an action to perform one can use both value functions.

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值