美文网首页
#David Silver Reinforcement Lear

#David Silver Reinforcement Lear

作者: feiyu87 | 来源:发表于2017-09-03 14:59 被阅读0次

    这节课同样讲的一些基础概念,为之后的课程做铺垫。

    马尔科夫过程(Markov Processes)

    S是一个有限的状态集合
    P是state之间的转移矩阵 Pss‘ = P [St+1 = s’ | St = s]
    那么马尔科夫过程就是<S,P>

    马尔科夫奖励过程(Markov Reward Process,MRP)

    马尔科夫奖励过程就是在马尔科夫过程的基础上添加了奖励机制。
    同样:
    S是一个有限的状态集合
    P是state之间的转移矩阵
    R 是一个reward function, Rs = E [Rt+1 | St = s]
    γ 是一个折扣因子,取值范围 [0,1]
    马尔科夫奖励过程就是 <S,P,R,γ>

    定义Return Gt:

    image.png
    当前时刻开始,到达到最终状态所得到的所有奖励之和。
    那么折扣因子是什么?为什么需要折扣因子?
    γ 通俗点解释,表示有多在乎未来的奖励。γ 越大表示越在意未来的奖励,γ 越小,越在乎当下的收益,比如一些金融的交易,更在乎当下能有多少收益。
    需要折扣因子的原因是1.避免return无限大。2.数学上表示方便。3.我们对我们的模型没有足够的信心,我们并不完全相信我们之后的决定 。

    值函数(Value Function)

    我们如何评价我们的模型当前的选择是否好呢?
    我们可以用值函数来评估奖励,通过奖励来评估选择的好坏,人们最终需要达到的是奖励最大的过程。从当前状态出发,有一个转移概率转移到下一个状态,那么哪条路比较好呢?用哪一条路来作为在当前状态到最终状态的奖励呢?答案是都不行。我们需要用一个定量来评估,而这个定量就是平均值,所有可能的路径之和,也就是期望 来作为评分函数。所以:

    image.png

    假如路径已经确定,那么不必考虑概率的问题,直接用Reward和折扣因子计算Return 就可以。

    Bellman 方程

    image.png

    就是一个动态规划的问题,将元问题解释为子问题一步一步的迭代。
    有了Bellman方程,值函数就可以用矩阵的形式进行计算。
    v = R + γPv

    image.png

    加入方程很小的化,可以直接求出来v。v = Inverse(I − γP)R

    马尔科夫决策过程(Markov Decision Process,MDP)

    同理,马尔科夫决策过程是在马尔科夫奖励过程的基础上添加了action集
    马尔科夫决策过程是<S,A,P,R, γ>

    image.png

    有了action,就有了策略policy。policy是状态s下action的分布。


    image.png

    其实action和state一样都可以看作是一个状态,policy π 就是一个状态转移矩阵
    但是因为action被赋予了不同的物理意义,所以在通常状态下action和state是明显的两个概念。

    值函数

    那么有了新的规约,值函数的意义也发生变化,

    image.png

    表示从状态s开始,遵循π的情况下的值函数。
    同样增加了action-value fnction。

    image.png

    同理,两者的 bellman 方程:

    image.png

    矩阵形式:

    image.png

    最后,有了状态值函数和动作值函数,那么最优的值函数就是分数最大的那个
    最优的状态值函数就是 在所有的policy中 值最大的那个。
    最优的动作值函数就是在所有的policy中值最大的那个。
    知道了最优的值函数之后,MDP的问题就解决了。

    相关文章

      网友评论

          本文标题:#David Silver Reinforcement Lear

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