强化学习浅谈

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/diligent_321/article/details/81906767

  一直对强化学习很感兴趣,毕业前那会也尝试着去学习,但因为当时感觉强化学习的公式晦涩难懂,没能坚持下去。最近因工作需要,又重新开始啃强化学习的知识,发现有了新的体会,故在此记录一下,以便以后随时翻看查阅。
  机器学习包含了三大分支,有监督学习(或半监督)、无监督学习和强化学习。同前两者相比,强化学习具有如下特点,
  (1) 没有“supervisor”,只有“reward”信号;
  (2) 反馈信号有时间延迟;
  (3) 处理的是序列数据,而不是独立同分布数据;
  (4) 学习体的“action”影响其后续的数据输入。

agent-environment交互机制

  强化学习任务包含了两大主体,Agent和Environment,这里的Agent就是学习者,同时也是决策者。学习者通过和环境进行交互来实现目标,交互过程的框图表示如下,


  从图中可以看出,这是一个序列化过程,在时刻t,学习体基于当前状态 S i 发出动作 A t ,环境做出回应,生成新的状态 S t + 1 和对应的回报 R t + 1 ,这里需要强调一点,状态S和回报R是成对出现的。学习体的目标就是,通过更加明智地执行动作,从而最大化接下来的累计奖励 G t ,公式表示如下,

其中,T表示最后的time step,也就意味着到时刻T学习体同环境的交互过程结束,我们把交互开始到结束的过程称作一个”episode”,而且,当前episode结束后,学习体的状态会被reset,从而开始一个新的episode,因此,所有的episode之间是相互独立的。 λ 表示折扣系数,当 λ = 0 时,我们可以认为这个学习体“目光短浅”,只考虑了眼前利益;当 λ 接近于1时,我们可以认为这个学习体“目光长远”,考虑了将来可能带来的整体利益。
  当学习体并不是随机地产生可能的动作,而是经过对过去经历的思考得来的时,我们可以把这样的动作称为策略policy。从数学的角度来讲,策略就是由state到action的映射,它有两种形式,“确定性策略”和“非确定性策略”,前者指给定状态输出唯一的确定性动作,后者指给定状态输出所有动作的概率,数学表达式为 π t ( a | s ) = P ( A t = a | S t = s ) 。一旦确定了策略时,那么学习体在每一个时刻都会按照该策略发出新的动作。

强化学习中的马尔科夫过程

  从上面的交互机制中可以看出,环境在收到action后会发生状态转移,此时大家应该会联想到随机过程课程中的状态转移图,理论上来说,下一时刻的状态应该与历史所有状态都有关系,然而,现实中很多的随机过程都服从马尔科夫性质(这里有点类似于很多分布都服从高斯分布一样),也即下一时刻的状态仅与当前时刻状态有关,而与历史状态无关,数学表达式如下,


基于上面的马尔科夫一步转移概率公式,可以得到关于环境的一切信息,包括(1)(状态, 动作)对应的瞬时奖励的期望;(2)状态转移概率;(3)(状态, 动作, 下一状态)对应的瞬时奖励的期望,它们的数学表达式分别如下,

P ( s , r   |   s , a ) = P r { S t + 1 = s , R t + 1 = r   |   S t = s , A t = a }

后续、、、

猜你喜欢

转载自blog.csdn.net/diligent_321/article/details/81906767