其实本来不想写这篇的,相信愿意往下看的童鞋,对强化学习本身应该有一定了解。但其实你看的多了就会发现,现有很多文章在细节方面还是有不少差异的。因此,这篇文章也是为了统一本博客的话语体系,为后面内容打基础。

首先请看下面这张图:

强化学习因果图 强化因素什么意思_强化学习


上图就是强化学习的最一般思路。其中Agent代表你实现的各种“牛叉”算法,Environment则代表Agent输出或作用的对象。其实这一思路,特别类似于我们人类或者自然界的动物等,通过与环境的交互,逐渐适应环境并学习到知识。当然,现有强化学习的算法从效率上来说,别说和人类相比,与动物相比低的也不是一星半点。这是因为现有的学习算法,大部分都是需要依靠海量的数据来投喂的。(当然,我的知识有限,如果已有更高效的学习方法,我会回来改正这段话的。)

下面,我们根据上图,正式引入强化学习的一些基本要素:

1. 环境状态 强化学习因果图 强化因素什么意思_强化学习_02

即Environment所描述对象的情况。由于强化学习本身的设计,其状态可认为是离散的,或者简单来说,就是一步一步的。我们在这里给强化学习因果图 强化因素什么意思_人工智能_03添加一个下标强化学习因果图 强化因素什么意思_强化学习因果图_04,表示为强化学习因果图 强化因素什么意思_强化学习_05,表示环境每一步的状态。当然,在强化学习中,强化学习因果图 强化因素什么意思_强化学习_05具体的取值,取决于你的采样方式,更取决于你设计的算法本身的需求。

2. Agent的动作 强化学习因果图 强化因素什么意思_人工智能_07

即Agent的输出,这个也是一步一步的,因此可表示为强化学习因果图 强化因素什么意思_强化学习因果图_08。当然,这个取值也完全取决于你的需求与设计。在强化学习中,强化学习因果图 强化因素什么意思_人工智能_03强化学习因果图 强化因素什么意思_强化学习因果图_10是成对出现的,即强化学习因果图 强化因素什么意思_强化学习_11。请大家务必记住这个序列,它是强化学习概念的基础,贯穿强化学习始终。

3. 环境奖励 强化学习因果图 强化因素什么意思_采样方式_12

即Agent的动作带来的实时收益,这个收益本身也取决于环境的设计。一般情况下,这个收益每一步都有。但是,有时很难对每一步设计具体收益,所以有可能会在最后设计一个总收益,而其他步上都是0。收益的设计会极大的影响你的算法,后面我们会通过各种示例慢慢讨论。
以上三个是强化学习中最基本的要素。在具体的强化学习中,每一步都会产生一个组合:强化学习因果图 强化因素什么意思_取值_13,即在状态强化学习因果图 强化因素什么意思_强化学习_05下,采用动作强化学习因果图 强化因素什么意思_强化学习因果图_08,状态变为强化学习因果图 强化因素什么意思_采样方式_16,产生收益强化学习因果图 强化因素什么意思_强化学习_17。这里描述的是强化学习的一步,请一定牢记这个组合。
后续的要素,都是为了更准确的描述强化学习过程,并为算法服务的。

4. 策略 强化学习因果图 强化因素什么意思_取值_18

表示Agent根据环境状态强化学习因果图 强化因素什么意思_人工智能_03,选择动作强化学习因果图 强化因素什么意思_强化学习因果图_10的条件概率,可表示为:强化学习因果图 强化因素什么意思_强化学习因果图_21。强化学习的目标,其实也可以理解为求强化学习因果图 强化因素什么意思_人工智能_22的过程。

5. 状态转移概率 强化学习因果图 强化因素什么意思_取值_23

这个看公式也很容易理解,即当状态为强化学习因果图 强化因素什么意思_人工智能_03时,如果执行了强化学习因果图 强化因素什么意思_强化学习因果图_10动作,则状态变为强化学习因果图 强化因素什么意思_强化学习_26的概率。环境的状态变化一般情况下都是一个随机事件,因此,我们这里用概率对这一随机事件进行描述。

6. 累积回报 强化学习因果图 强化因素什么意思_强化学习_27

我们前面对强化学习每一步的收益,设定了环境奖励强化学习因果图 强化因素什么意思_强化学习_17,但仅用这个描述是远远不够的。我们知道,大部分情况下,我们这一步对后续都是有影响的,那么怎么衡量这一影响呢,简单的想法就是把后续的收益也累加起来,这里就可以用强化学习因果图 强化因素什么意思_强化学习_29来描述,则强化学习因果图 强化因素什么意思_取值_30

7. 状态价值函数 强化学习因果图 强化因素什么意思_取值_31

我们可以认为,这个就是对前面的状态强化学习因果图 强化因素什么意思_人工智能_03进行评估的。大家试想一下,无论是下棋,或者是游戏,如果进入某个场景中,有可能面临的就是必败的结果,那么我们搞强化学习,是不是要对状态进行评估,并依据评估值来让我们的Agent避免进入这一状态。所谓“君子不立危墙之下”,这里的危墙就是对状态的评估。在某一状态往后,Agent可采取的策略是一个随机变量组合,每种策略都会最终产生一个累积回报强化学习因果图 强化因素什么意思_取值_33,那么我们就将这些累积回报的均值表示为我们的状态价值,即强化学习因果图 强化因素什么意思_采样方式_34

8. 状态-行为值函数 强化学习因果图 强化因素什么意思_取值_35

我们上面对状态本身价值进行了评估,但这个还是不够,我们其实更希望得到的是我们在这个状态下干什么,会产生什么样的结果,以及对后续的影响,这才是支持我们进行策略选择的基础。因此,这里引入状态-行为值函数对上述状态和行为对进行评估,具体可表示为:强化学习因果图 强化因素什么意思_强化学习因果图_36。同理,与前面价值函数不同,这个可以认为是对“君子不立危墙之下”这句话整个的评估。可能有童鞋要问,上面的式子为什么还是使用的均值,我理解虽然这一步强化学习因果图 强化因素什么意思_强化学习_37确定了,但后续的强化学习因果图 强化因素什么意思_强化学习因果图_10还是随机的,因此这里还是要使用均值来进行描述。

以上8个就是强化学习最基本的要素,有了这些,我们下面就可以尝试对强化学习的过程进行描述了。