• 现代RL算法:DQN到PG,再到DPG


     1.DQN

    在传统RL算法中,依靠的是Policy和Value的协同迭代优化agent。

    而现代,

    DQN等value-based类算法弱化了Policy的存在,Policy成了Value的附属;

    ReinforcePG,DPG,DDPG等policy-based类算法弱化了Value的存在。agent依赖于PolicyNetwork,只做一个从State到Action的映射。

    DQN在干嘛?从(s,a)到Q(s,a)的映射

    训练DQN的时候在训练的什么?Q(s,a;serta)的参数serta

    DQN如何训练?

    首先agent与env交互,采样,训练样本为(s,a,r,s'),存储在experience_replay里。

    然后采用反向传播方法优化神经网络的参数serta。

    误差为

    借助tensorflow实现DQN代码:

    https://github.com/Dynmi/RL_study/blob/master/agent/agent_DQN.py

    2. PG

    这是OPENAI的人在DQN之后提出来的,它不聚焦于Value,而聚焦于Policy本身。建立一个从s到A的映射pai。此时跟DQN相同,还是面对的离散动作空间,用一个softmax来输出选择每个action的概率。监督学习的label使用state value。所以在PG这里还是需要Value的,MC_PG方法对待Value还是传统方法用一个表存state-value。算法优化过程在于优化神经网络pai的参数。

    3. QAC

    从PG往前一步,把Value也神经网络化,也就是说,算法训练的时候对两个神经网络进行参数优化,一个是Qvalue Network,一个是PolicyNetwork。

    一直到这里应对的还是离散行为空间。

    4. DDPG ( 2016ICLR )

    Deterministic Policy Gradient

    从DPG开始就研究连续行为空间了。

  • 相关阅读:
    combobox获取dataset部分数据的方法
    vs2008设置Jquery自动感知方法
    iOS7 初体验
    数据采集[即与 WEB 相关的功能函数]
    javascript 时间倒计时效果
    有进度条圆周率计算
    python科学计算库
    python随笔
    jieba库
    数据分析模块pandas
  • 原文地址:https://www.cnblogs.com/dynmi/p/12341635.html
Copyright © 2020-2023  润新知