策略梯度法

作者: 初七123 | 来源:发表于2018-08-04 19:32 被阅读2次

    策略梯度学习笔记
    https://zhuanlan.zhihu.com/p/26441204

    随机策略梯度

    定义回报函数

    定义策略轨迹出现的概率

    求使得回报最大的策略

    最速下降法

    (lnx)'=1/x

    利用m条轨迹平均逼近

    重要性采样

    导数为

    得到当前策略的导数

    策略梯度的含义是:回报大的轨迹出现的概率会增大,而回报很小或者为负数的轨迹被抑制

    如何求解log(P(┏|θ))

    消去不不必要的项

    基线减少梯度方差
    为了减少学习的方差,我们引入基线函数b(s)

    b(s)可以取任何值,任何函数,只要不和a相关,就不影响上面式子的结果。因为

    但是,对于随机梯度下降来说,因为我们是根据一个一个取样来实现梯度上升,引入基函数可以极大地减少更新时的波动。更精确地,当

    方差将最小

    确定性策略梯度

    在随机性策略中,在状态s时,动作符合参数为θ的概率分布。

    随机性策略梯度为

    在确定性策略中,相同状态下动作是唯一确定的

    确定性策略的动作是确定的,所以如果确定性策略梯度存在,策略梯度的求解不需要在动作空间进行采样积分。因此,确定性策略方法的效率比随机策略的效率高十倍
    不过,相比于确定性策略,随机策略也有它自身的优点:随机策略将探索和改进集成到一个策略中

    确定性策略无法探索环境,那么如何学习呢?

    答案就是利用异策略学习方法,即off-policy.
    异策略是指行动策略和评估策略不是一个策略。这里我们的行动策略是随机策略,以保证充足的探索。

    随机策略梯度的AC方法

    随机策略梯度

    异策略随机策略梯度

    b为采样分布

    确定性策略梯度的AC方法

    确定性策略梯度

    异策略确定性策略梯度

    异策略确定性策略AC算法
    前两步更新值函数

    这就是DPG算法

    像DQN一样用深度学习来拟合策略函数和值函数就是DDPG算法

    当利用深度神经网络进行函数逼近的时候,强化学习算法常常不稳定。这是因为,对深度神经网络进行训练的时候往往假设输入的数据是独立同分布的,但强化学习的数据是顺序采集的,数据之间存在马尔科夫性,很显然这些数据并非独立同分布的。

    为了打破数据之间的相关性,DQN用了两个技巧:经验回放和独立的目标网络。DDPG的算法便是将这两条技巧用到了DPG算法中。

    相关文章

      网友评论

        本文标题:策略梯度法

        本文链接:https://www.haomeiwen.com/subject/oyqmvftx.html