在强化学习(十一) Prioritized Replay DQN中,我们讨论了对DQN的经验回放池按权重采样来优化DQN算法的方法,本文讨论另一种优化方法,Dueling DQN。本章内容主要参考了ICML 2016的deep RL tutorial和Dueling DQN的论文<Dueling Network Architectures for Deep Reinforcement Learning>(ICML 2016)。

1. Dueling DQN的优化点考虑

    在前面讲到的DDQN中,我们通过优化目标Q值的计算来优化算法,在Prioritized Replay DQN中,我们通过优化经验回放池按权重采样来优化算法。而在Dueling DQN中,我们尝试通过优化神经网络的结构来优化算法。

    具体如何优化网络结构呢?Dueling DQN考虑将Q网络分成两部分,第一部分是仅仅与状态SS有关,与具体要采用的动作AA无关,这部分我们叫做价值函数部分,记做V(S,w,α)V(S,w,α),第二部分同时与状态状态SS和动作AA有关,这部分叫做优势函数(Advantage Function)部分,记为A(S,A,w,β)A(S,A,w,β),那么最终我们的价值函数可以重新表示为:

Q(S,A,w,α,β)=V(S,w,α)+A(S,A,w,β)Q(S,A,w,α,β)=V(S,w,α)+A(S,A,w,β)

    其中,ww是公共部分的网络参数,而αα是价值函数独有部分的网络参数,而ββ是优势函

强化学习(十二) Dueling DQN相关推荐

  1. dqn 应用案例_强化学习(十二) Dueling DQN

    在强化学习(十一) Prioritized Replay DQN中,我们讨论了对DQN的经验回放池按权重采样来优化DQN算法的方法,本文讨论另一种优化方法,Dueling DQN.本章内容主要参考了I ...

  2. 强化学习(二)—— 价值学习(Value-Based)及DQN

    强化学习(二)-- 价值学习(Value-Based)及DQN 1. DQN介绍 2. TD算法介绍 3. 案例 1. DQN介绍 Deep Q Network 目标:最大化累计奖励(回报U) 通过神 ...

  3. 强化学习(十五) A3C

    在强化学习(十四) Actor-Critic中,我们讨论了Actor-Critic的算法流程,但是由于普通的Actor-Critic算法难以收敛,需要一些其他的优化.而Asynchronous Adv ...

  4. 强化学习—— Target Network Double DQN(解决高估问题,overestimate)

    强化学习-- Target Network & Double DQN(解决高估问题,overestimate) 1TD算法 2. 高估问题 2.1 Maximization 2.1.1 数学解 ...

  5. 【强化学习实战-04】DQN和Double DQN保姆级教程(2):以MountainCar-v0

    [强化学习实战-04]DQN和Double DQN保姆级教程(2):以MountainCar-v0 实战:用Double DQN求解MountainCar问题 MountainCar问题详解 Moun ...

  6. 强化学习(十九) AlphaGo Zero强化学习原理

    在强化学习(十八) 基于模拟的搜索与蒙特卡罗树搜索(MCTS)中,我们讨论了MCTS的原理和在棋类中的基本应用.这里我们在前一节MCTS的基础上,讨论下DeepMind的AlphaGo Zero强化学 ...

  7. 强化学习(十六) 深度确定性策略梯度(DDPG)

    在强化学习(十五) A3C中,我们讨论了使用多线程的方法来解决Actor-Critic难收敛的问题,今天我们不使用多线程,而是使用和DDQN类似的方法:即经验回放和双网络的方法来改进Actor-Cri ...

  8. OpenCV与图像处理学习十二——图像形状特征之HOG特征

    OpenCV与图像处理学习十二--图像形状特征之HOG特征 一.图像特征理解 1.1 颜色特征 1.2 纹理特征 1.3 形状特征 1.4 空间关系特征 二.形状特征描述 2.1 HOG特征 2.1. ...

  9. PyTorch框架学习十二——损失函数

    PyTorch框架学习十二--损失函数 一.损失函数的作用 二.18种常见损失函数简述 1.L1Loss(MAE) 2.MSELoss 3.SmoothL1Loss 4.交叉熵CrossEntropy ...

最新文章

  1. 程序人生 Hello‘s P2P
  2. Java内存图以及堆、栈、常量区、静态区、方法区的区别
  3. shell中获取本机ip地址
  4. 企业级BI分析解决方案,解决数据应用难题
  5. JavaScript方法——call和apply
  6. WCF中的方法重载 实现
  7. React简介及基础用法
  8. 编写了html怎么测试,如何将测试结果写入HTMLTestRunner生成的报告标题中
  9. MOOS学习笔记1——HelloWorld
  10. 新手学.net(习惯问题)
  11. 超级电容怎么才能把内阻做小_内置超级电容汽车熄火仍可工作,韩国AHL车载无线充内藏重器...
  12. 解决Windows下“fatal: unable to checkout working tree, warning: Clone succeeded, but checkout failed.”
  13. 云锁卸载 linux,ubuntu下云锁卸载出错后无法重新安装的解决办法checking installation environment:...
  14. 揭开JS无埋点技术的神秘面纱
  15. 利用机器学习预测外汇汇率
  16. 最新码支付源码+完整版+免挂监听回调+微信、支付宝、qq监控APP打包教程
  17. python九宫格拼图,Python生成九宫格图片
  18. 一个人生活,如何摆脱孤独提升幸福感?
  19. (原創) 我也不JB了 (iPhone)
  20. self和init的用法

热门文章

  1. CodeFirst体验之且行且珍惜
  2. 批量修改多目录下相同文件名的文件内容
  3. BCGControlBar菜单编程方法详解
  4. ESP-TOUCH编码规则及解码
  5. 台湾国立大学郭彦甫Matlab教程笔记(17)numerical integration
  6. ad输出光绘文件_90%的工程师容易忽视(一):PCB输出gerber文件,这样操作才正确!...
  7. python import gc_Python 2.6 GC似乎可以清理对象,但不会释放内存
  8. java写入文件编码格式为ansi_Java读取、写入文件如何解决乱码问题
  9. linux当卡片机的手机,卡片机不如手机?看完你就不这么想了
  10. 敏感词库 php,敏感词过滤的php类库