运行Environment
观察(Observations)
Spaces
引言
前面我们介绍了监督学习,监督学习的特点是有一个“老师”来“监督”我们,告诉我们正确的结果是什么。在我们在小的时候,会有老师来教我们,本质上监督学习是一种知识的传递,但不能发现新的知识。对于人类整体而言,真正(甚至唯一)的知识来源是实践——也就是强化学习。比如神农尝百草,最早人类并不知道哪些草能治病,但是通过尝试,就能学到新的知识。学到的这些知识通过语言文字记录下来,一代一代的流传下来,从而人类社会作为整体能够不断的进步。和监督学习不同,没有一个“老师”会“监督“我们。比如下围棋,不会有人告诉我们当前局面最好的走法是什么,只有到游戏结束的时候我们才知道最终的胜负,我们需要自己复盘(学习)哪一步是好棋哪一步是臭棋。自然界也是一样,它不会告诉我们是否应该和别人合作,但是通过优胜劣汰,最终”告诉”我们互相协助的社会会更有竞争力。和前面的监督非监督学习相比有一个很大的不同点:在强化学习的Agent是可以通过Action影响环境的——我们的每走一步棋都会改变局面,有可能变好也有可能变坏。
它要解决的核心问题是给定一个状态,我们需要判断它的价值 (Value)。价值和奖励 (Reward) 是强化学习最基本的两个概念。对于一个 Agent(强化学习的主体)来说,Reward 是立刻获得的,内在的甚至与生俱来的。比如处于饥饿状态下,吃饭会有 Reward。而 Value 是延迟的,需要计算和慎重考虑的。比如饥饿状态下去偷东西吃可以有 Reward,但是从 Value (价值观)的角度这(可能)并不是一个好的 Action。为什么不好?虽然人类很监督学习,比如先贤告诉我们这是不符合道德规范的,不是好的行为。但是我们之前说了,人类最终的知识来源是强化学习,先贤是从哪里知道的呢?有人认为来自上帝或者就是来自人的天性,比如“人之初性本善”,我们会在最后一章讨论哲学的问题。如果从进化论的角度来解释,人类其实在玩一场”生存”游戏,有遵循道德的人群和有不遵循的人群,大自然会通过优胜劣汰”告诉”我们最终的结果,最终我们的先贤“学到”了(其实是被选择了)这些道德规范,并且把这些规范通过教育(监督学习)一代代流传下来。
马尔科夫决策过程(MDP)
马尔科夫决策过程 (Markov Decision Process) 是强化学习最常见的模型。我们通过这个模型来介绍强化学习的一些基本概念。
和环境的互动
强化学习的本质就是通过与环境的互动来学习怎么达成一个目标。这个学习和做决策的主体就叫Agent。Agent交互的对象就是环境(Environment),环境可大可小,对于坐井观天的青蛙来说,它的环境就是那口小井;而对于人类来说,整个地球甚至太阳系都是我们研究的对象。Agent会持续的和环境交互,根据当前的状态选择行为(Action),而环境会给Agent新的状态和Reward。整个交互过程如下图所示。

上图:强化学习里Agent和环境的互动
Agent和环境的交互假设是时刻 t=0,1,…。在 t 时刻,Agent 处于某个状态 St∈S,这里 S 表示所有可能状态的集合,也就是状态空间。它可以选择一个行为 At∈A(St),其中 A(St) 是状态 时可以选择的所有行为的集合。选择了行为 之后,环境会在下一个 (t+1) 时刻给 Agent 一个新的状态 +1 和Reward Rt+1∈RR。
一个实数值的 Reward 是否足够?拿人来说,是有很多方面的追求,比如同时要考虑工作和家庭。当然最简单的方法是把两个目标(goal)进行加权求和,而且这个权重似乎会变化,因此人类是否有一个单一的目标,而其他目标都是它的一种外在表现?我们这里不讨论这个问题,但是对于实际的Task来说,一般是足够了。比如下围棋,就是胜负;玩Atari游戏就是获得最高的得分。
在每个时刻 t,Agent 根据当前的状态 会选取不同的行为 ,选择的方法叫做策略 (Policy),一般假设是它一个概率分布(确定的策略是它的特殊情况)(|),如果这个随机过程是平稳的 (Stationary),那么我们的策略也一般与时间无关的,即(|)=(|)。策略有好有坏,Agent 的目标是学习到最好的策略(是否存在也是强化学习的一个理论问题,不过我们一般认为存在,也有一些理论可以证明如果系统满足一些假设,最优策略是存在的)。
目标和奖励
每个时刻 t,环境都会给 Agent 一个 RewardRt,而 Agent 的目标 (Goal) 是最大化最终得到的所有 Reward 的和。这里隐含的意思是:我们的目标不是短期的 Reward,而是长期 Reward 的累加。在学校的时候平时努力学习最终会有回报的,如果短期来看,学习可能会饥饿会疲惫,而出去玩可能会愉快。这就是所谓的“Reward假设”:我们所说的目标 (Goal) 或者目的 (Purpose) 最终可以被看成最大化一个 Reward 信号的累加值。
就像前文说过,用一个数值来描述 Agent 所有的目标(尤其是人这样复杂的生物)似乎有些不够,我们暂且把Agent放到一些具体的任务 (Task) 上来看看似乎足够。比如我们让一个老鼠逃离迷宫 (Maze),如果它没有找到出口我们给它 -1 的 Reward,这样它学习的目标就是尽快的逃离迷宫。比如下象棋,如果获胜,我们给它 +1 的 Reward,如果输棋则是 -1,和棋则是 0。又比如扫地机器人,如果它收集到垃圾,那么给它 +1 的 Reward,那么它的目标就是尽可能多的收集垃圾。
注意:我们定义的目标是要告诉Agent我们期望它做的是什么 (What),而不是告诉它怎么做 (How)。比如下棋时吃掉对方的棋子是一种获胜的策略(怎么做),我们不能给吃子 Reward,否则它就可能学到的策略是为了吃子,因为我们知道有的时候为了获胜必须牺牲己方的棋子。
回报(Return)
(编辑:温州站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!