当前位置: 首页 > news >正文

DQN 的两种扩展(DDQN,Dueling DQN)

1. Double DQN

DQN 在实际 Atari 任务中确实会发生明显的 \(Q\) 值高估,而且这种高估会伤害策略表现;Double DQN选动作和评估动作不再用同一个 max。

回顾经典的 Q-learning 算法:

\[Y_t^Q = R_{t+1} + \gamma \max_a Q(S_{t+1}, a; \theta_t) \]

Q-learning 的 target 里有一个 max 操作。max 会在多个估计值里挑最大的那个;如果某些动作的 Q 值只是因为估计误差被偶然估高了,max 就会偏向选它。于是 target 本身就被抬高。max 操作天然偏向正误差。

如果某个动作只是因为估计误差被偶然估高了,max⁡会偏向选中它。于是 target 就被抬高,形成 overestimation。

DQN 的改进:

\[Y_t^{DQN} = R_{t+1} + \gamma \max_a Q(S_{t+1}, a; \theta_t^-) \]

DQN 算法维护两个网络,这里的 \(\theta_t^-\)是 target network 的参数。DQN 通过 target network 基于下一步最优动作计算最优未来价值。

这一步同时做了两件事。第一,用 target network 选择哪个动作最大;第二,用 target network 评估这个最大动作的价值。也就是 selection 和 evaluation 没有分离

Double Q-learning 的设计:

主要目的:减少 max 操作带来的高估偏差。

\[Y_t^{DoubleDQN}=R_{t+1}+\gamma Q\left(S_{t+1},\arg\max_a Q(S_{t+1}, a; \theta_t);\theta_t^-\right) \]

公式中的 \(\theta_t\) 即是 DQN 中的 policy network (online weights), \(\theta_t^-\)则是 target network。这里的改进是:使用 policy network 选择动作,使用 target network 评估价值。

改进

\(argmax\) 里的 action selection 仍然来自 online weights,所以它仍然是在估计当前 greedy policy;但是动作价值的 evaluation 用第二套权重,因此能更公平地评估这个动作

2. Dueling DQN

很多动作价值接近时,普通 Q 网络学习效率低,Dueling DQN 提出一种新的 Q-network 结构:把状态价值和动作优势拆开学,最后再合成 \(Q(s,a)\)

回顾价值函数

动作 | 价值 函数:

\[Q^\pi(s,a) \]

表示在状态 s 下采取动作 a,之后按照策略 \(\pi\) 行动的期望回报。

状态 | 价值 函数:

\[V^\pi(s,a) \]

表示状态 s 本身的价值好坏。

Advantage 优势函数

\[A^\pi(s,a)=Q^\pi(s,a)−V^\pi(s) \]

Advantage 在该方法中被定义为连接 \(V\)\(Q\) 的量。动作优势不是绝对价值,而是“这个动作比这个状态的平均/基准价值好多少”。如果一个状态本身很好,那么很多动作的 \(Q\) 都可能高;但真正决定动作选择的是:哪个动作相对更好。

反过来写:

\[Q^\pi(s,a)=A^\pi(s,a)+V^\pi(s) \]

回顾 DQN 网络链路

\[s → CNN/MLP → Q(s,a_1),Q(s,a_2),Q(s,a_3)... \]

优化目标:

\[L = (y - Q(s,a_t))^2 \]

问题一:更新时只考虑了当前动作 \(a_t\) ,其它动作 \(a_1, a_2 ….\) 没有被 target 监督。

问题二:很多状态下,动作之间其实差别不大。比如赛车游戏里,如果前方是直路,那么“轻微左转”“保持直行”“轻微右转”可能都不会立刻造成巨大差异。此时,普通 DQN 仍然要分别估计每个动作的 \(Q(s,a)\)学习效率不高

Dueling DQN 的改进:

重新设计了网络架构,使得 V 和 A 在输出时分开:前面的卷积层/特征提取层共享,后面分成 value stream 和 advantage stream。

duelingDQN

经过 shared feature extractor 后,网络分成两个 stream:

\[V(s) \]

\[A(s,a_1),A(s,a_2),A(s,a_3).... \]

最后再合并成每个动作的 \(Q\) 值输出。得到了:

Dueling DQN —— \(Q\) 值公式

\[Q(s,a;\theta,\alpha,\beta)=V(s;\theta,\beta)+\left(A(s,a;\theta,\alpha)-\frac{1}{|\mathcal{A}|}\sum_{a'} A(s,a';\theta,\alpha)\right) \]

\(\alpha\) advantage stream 的参数;\(\beta\) value stream 的参数;\(\mathcal{A}\) 动作数量

解决问题

问题一:即使 loss 只来自一个动作,它也会更新 \(V(s)\) —— 所有动作共享的状态价值。也就是说,一条 transition 虽然只监督了一个动作,但它同时改进了“这个状态整体好不好”的估计。之后其他动作的 Q 值也会间接受益

问题二:把问题拆成了“公共基线 + 小残差”。给 Q 函数加了结构先验: \(V(s)\) stream 学到了一个可在多个相似动作之间共享的 general value。大部分价值来自状态本身,动作只负责解释相对差异。这个先验成立时,样本利用率更高,优化更稳定,因此更容易收敛。

引用

  1. Van Hasselt, H., Guez, A. and Silver, D. (2016) ‘Deep reinforcement learning with Double Q-learning’, Proceedings of the AAAI Conference on Artificial Intelligence, 30(1), pp. 2094–2100. doi: 10.1609/aaai.v30i1.10295. (AAAI Publications)
  2. Wang, Z., Schaul, T., Hessel, M., Van Hasselt, H., Lanctot, M. and De Freitas, N. (2016) ‘Dueling network architectures for deep reinforcement learning’, Proceedings of the 33rd International Conference on Machine Learning, 48, pp. 1995–2003. (proceedings.mlr.press)
http://www.jsqmd.com/news/1018886/

相关文章:

  • 2026年6月口碑好的屋面虹吸排水供货厂家推荐,下沉式雨水斗/虹吸雨水/屋面虹吸排水,屋面虹吸排水生产厂家哪家靠谱 - 品牌推荐师
  • 别只盯着CVE补丁!Shiro 1.12.0升级实战:手把手教你排查‘类文件版本61.0应为52.0’背后的依赖战争
  • 7步掌握:HoRNDIS在macOS上实现Android USB网络共享的专业指南
  • Java面试背八股文还有用吗?
  • 终于确定2026京东淘宝618活动6月17日20点正式迎来最后一波降价潮!618红包口令领取攻略与大额优惠券领取规则一览 附国补入口 一文讲清! - 资讯报道
  • 2026年 内蒙古3M建筑防晒膜/家具保护膜/改色膜/台面防护膜推荐榜单:专业定制与高效防晒全案解析 - 品牌发掘
  • 2026拉萨装修公司排名前十 靠谱家装怎么选 - 资讯速览
  • 嵌入式USB主机开发实战:从API原理到飞思卡尔USBHOST应用详解
  • 苏州万企易做AI GEO效果好吗 - 信息热点
  • 2026年炸鸡连锁哪家靠谱:连锁体系稳定性与供应链靠谱度测评 - 资讯报道
  • 如何用68万+手写样本攻克传统中文AI识别难题?一份开源工具完全指南
  • 2026年石家庄美发化妆培训,如何根据需求筛选学习方向? - 国麟测评
  • MPC8533E eTSEC与DMA配置实战:从模式选择到驱动调试
  • RTD2166-CG,内置 MCU 实现 DP-VGA 无缝转换
  • 2026年汉堡加盟赛道深度解析:美州纯手工牛肉汉堡,差异化赛道下的务实创业选择 - 17322238651
  • Ai Vibecoding(Claude Code的使用)
  • 环境搭建教程
  • 2026年炸鸡小吃加盟哪家靠谱:品牌资质与门店数据靠谱度评测 - 资讯报道
  • 同城黄金回收服务标准白皮书,上海金山区门店服务等级一览 - 禹竞
  • 暗黑破坏神2存档编辑器:3步轻松修改D2/D2R角色装备与属性
  • Vulkan图形编程:从零到一的现代渲染技术深度指南
  • 【TEE从入门到精通及实战】16 多Enclave安全通信:用Diffie-Hellman协议构建可信通道
  • 2026最新实测:DeepSeek免费降ai指令+3款降ai工具深度测评 - 殷念写论文
  • 沈阳宇华飞阳 东北一站式商用视听显示设备供应基地 - 资讯报道
  • Sklearn版本升级后,手写数字数据集Mnist导入报错?试试这个本地加载的万能解法
  • 用 ChatGPT Image 2.0 辅助前端页面还原:从截图分析到 CSS 实现的实践流程
  • C语言数值计算进阶:掌握fenv.h与inttypes.h构建健壮代码
  • 2026年特斯拉Model 3隐形车衣品牌推荐榜:TPU材质、防刮蹭、增亮持久与全车贴合工艺深度解析 - 品牌发掘
  • 阿里JDK源码核心剖析:程序员进阶必备!
  • winServer定时重启服务