人工智能导论 第 3 章 · 第六节
课程 › 第 3 章 › 第六节 强化学习从做题到试错五个要素状态与动作空间策略回报与折扣价值函数最优策略贝尔曼方程
第 3 章 机器学习基础 · 第六节

强化学习基础

没有标准答案,只有做完之后的奖励
本 节 知 识 点
  1. 46强化学习基础
  2. 47从做题到试错
  3. 48强化学习的基本要素
  4. 49状态空间与动作空间
  5. 50策略:每个状态下动作的概率
  6. 51幕、回报与折扣因子
  7. 52价值函数:给状态和动作打分
  8. 53最优策略与最优价值函数
  9. 54贝尔曼最优方程
46
第 3 章 · 第六节

强化学习基础

从这一节开始,机器不再照着答案学,而是自己去试。

第 46 页课件

知道更多第 1 章提过的那条路线

第 1 章讲过行为主义,主张智能来自和环境打交道时的反复试错。强化学习就是这条路线在机器学习里的做法。AlphaGo 下围棋、机器人学走路,都用到了它。

47
第 3 章 · 第六节

从做题到试错

监督学习有老师给答案,强化学习只有环境给的奖励。

第 47 页课件

重 点两行图的区别

上面一行,每张照片都标好了猫或狗,机器照着答案学。下面一行,小机器人跳了四次,前几次掉下去或者跳过了头,第四次才成功。没有人告诉它每一跳该用多大的力,它只知道结果好不好。

打个比方

学骑自行车时,教练说不出“车身歪了 5 度,车把该转几度”。你只能自己骑,摔了就知道刚才不对,骑稳了就知道这样可以。骑稳像是加分,摔倒像是扣分,这就是环境给你的奖励。

48
第 3 章 · 第六节

强化学习的基本要素

看局面,做动作,拿奖励,再看新局面,一直循环下去。

第 48 页 强化学习的基本要素

一个循环,五个要素

看状态现在是
什么局面
→
选动作按策略决定
做什么
→
得奖励环境打分:
做得好不好
→
新状态局面变了,
进入下一轮
要素回答的问题在走迷宫里是什么
状态现在是什么局面站在哪一格
动作下一步做什么往上、下、左、右哪边走
策略怎样选动作每一格该往哪走的规则
奖励刚才做得好不好到终点加分,掉进陷阱扣分
状态转移做完动作,局面怎么变往右走一步,就到了右边那格
学习的目标:学会在每种状态下该做什么动作,让拿到的奖励加起来最多。

关键术语

智能体Agent
做决定、采取行动的那一方,比如走迷宫的小机器人。
环境Environment
智能体所处的外部世界,它对动作做出反应,并给出奖励。

打个比方

玩游戏时,屏幕上的画面是状态,按哪个键是动作,你心里那套“什么时候该跳”的经验是策略,分数的变化是奖励,按键之后画面怎么变是状态转移。

随堂练习

下面哪一项由智能体自己决定?

  1. 奖励
  2. 动作
  3. 状态转移
  4. 下一个状态
查看答案
答案 B。智能体按自己的策略决定做什么动作。动作做出去以后,得几分、局面变成什么样,都由环境说了算。
49
第 3 章 · 第六节

状态空间与动作空间

所有可能的局面合起来叫状态空间,每个局面下能做的动作叫动作空间。

第 49 页课件

重 点看这个迷宫

左图每个白格是一个状态,用行号和列号标出,比如 (1,1) 是第 1 行第 1 列。斜线格是墙,走不进去。右图每格里的箭头,是站在这一格时能走的方向。

知道更多不同的格子,能走的方向不一样

靠墙和角落的格子能走的方向少,比如 (2,1) 只能往上走。课件底部举的例子:从 (1,1) 往右走到 (1,2),能走的方向就从“下、右”变成了“左、右”。

随堂练习

这个 4 × 4 的迷宫一共有多少个状态?

  1. 16
  2. 13
  3. 12
  4. 4
查看答案
答案 B。16 个格子里有 3 个是墙,剩下 13 个格子都能站人,每一个都是一个状态。
50
第 3 章 · 第六节

策略:每个状态下动作的概率

策略写的是在每一格里,往各个方向走的可能性各有多大。

第 50 页课件

关键术语

策略Policy
在每个状态下怎样选动作的规则,通常写成每个动作的概率。

重 点两张图对着看

左边的策略 A,每格里各个方向都是 1/2、1/3 这样平均分配,等于闭着眼睛乱走。右边的策略 B,大多数格子里朝向目标的方向变成 1,其余变成 0。有两个方向一样近时,就各占 1/2。学习的过程,就是把左边这张表一点点改成右边那张。

打个比方

策略像一本行动手册。新手的手册上每一页都写着“随便选”,老手的手册上大多数情况都写明了“就这么走”。

51
第 3 章 · 第六节

幕、回报与折扣因子

把以后能拿到的奖励都加起来,越晚拿到的打折越多。

第 51 页 幕、回报与折扣因子

同样是 10 分,越晚拿到越不值钱

出发从起点开始
→
一步步走每一步都可能
拿到奖励
→
结束走到终点
或掉进陷阱
这 10 分在第几步拿到折扣因子 γ 取 0.9 时,现在看值多少
第 1 步就拿到10
第 2 步拿到10 × 0.9 = 9
第 3 步拿到10 × 0.9 × 0.9 = 8.1
第 6 步拿到约 5.9
第 21 步拿到约 1.2
回报,就是把以后每一步的奖励都按上表的方式打完折,再全部加起来。从出发到结束的这一整局叫一幕。

关键术语

幕Episode
从开始到结束的一整局,比如走完一次迷宫。
回报Return
从现在起,以后所有奖励打完折的总和。
折扣因子Discount Factor
课件里的 γ,取 0 到 1 之间。奖励每晚一步拿到,就要多乘一次 γ。

重 点为什么要打折

越远的事越不确定,不能和眼前的分数同样看待。另外,一局如果能无限走下去,不打折的话分数会越加越大,没法比较。

打个比方

今天拿到一百块,和一年后才拿到一百块,多数人更想要今天的。γ 接近 1,表示很有耐心,看重长远。γ 接近 0,表示只顾眼前。

52
第 3 章 · 第六节

价值函数:给状态和动作打分

价值说的是:站在这里,或者在这里这样走,以后平均能拿到多少回报。

第 52 页 价值函数

给迷宫里的每一格打个分

5.96.67.38.15.39.010.0目标10.08.19.010.09.011223344行\列
状态价值 v(s)

站在这一格,按当前的策略一直走下去,平均能拿到多少回报。

动作价值 q(s, a)

站在这一格,先往某个方向走一步,再接着走下去,平均能拿到多少回报。

图中假设走进目标得 10 分,其余每一步 0 分,γ 取 0.9。图里的数按最好的走法来算,也就是下一页要讲的最优价值。

重 点看格子里的数

到目标要走的步数越少,价值越高。(2,1) 被墙挡住,要绕一大圈,所以价值最低。站在任何一格,一直往价值更高的相邻格子走,就能走到目标旁边,再一步走进目标。

打个比方

下象棋时判断“这个局面对我有没有利”,是在估状态价值。判断“这个局面下跳马好不好”,是在估动作价值。

知道更多为什么说“平均”

环境里常有随机性,从同一格出发,每次的结果可能不一样。价值说的是平均能拿多少,不是保证能拿多少。

53
第 3 章 · 第六节

最优策略与最优价值函数

在每一格都不比别的走法差,这样的策略就是最优策略。

第 53 页课件

重 点定义那一行的意思

拿最优策略和任何别的策略比,在每一个格子上,它能拿到的回报都不会更少。要求的是每一格都不差,不是平均下来更好。

知道更多最优的路可以不止一条

这一页的终点换到了右上角 (1,4),起点在左下角 (4,1)。右边两张图里,红色路线和蓝色路线都走 6 步,两条都是最优策略。可是“最少要走 6 步”这个答案只有一个,这就是课件说的最优价值函数是唯一的。

54
第 3 章 · 第六节

贝尔曼最优方程

一步值多少,看它马上带来什么,再加上它通往的地方值多少。

第 54 页 贝尔曼最优方程

这一步的价值 = 眼前的甜头 + 打折后的未来的盼头

这一步的价值 = 马上拿到的奖励 + γ × 走到的那一格的价值
  • 站在 (3,4),往左走进目标:10 + 0.9 × 0 = 10
  • 站在 (2,4),往下走到 (3,4):0 + 0.9 × 10 = 9
  • 站在 (2,4),往上走到 (1,4):0 + 0.9 × 8.1 ≈ 7.3
  • 往下的 9 比往上的 7.3 大,所以 (2,4) 这一格的价值是 9,最好往下走。
每一格都这样算:几个方向各算一遍,取其中最大的。把这句话写成数学式子,就是课件上的贝尔曼最优方程。
数字沿用第 52 页那张迷宫图:走进目标得 10 分,γ 取 0.9。走进目标这一局就结束了,以后不会再有奖励,所以目标格按 0 算。

重 点课件上的两个词

式子右边分两部分。前一部分是马上拿到的奖励,课件叫“眼前的甜头”。后一部分是下一个位置的价值再乘上折扣,叫“未来的盼头”。两者相加,就是这一步的价值。

打个比方

下象棋时吃掉对方一个车,吃子本身是眼前的甜头。吃完以后局面对你好不好,是未来的盼头。有时吃了车反被将死,两部分加起来,才是这步棋值多少。

知道更多它为什么重要

它把“让以后的奖励总和最大”这个笼统的目标,变成了每一格都能动手算的一个式子。下一节的动态规划和 Q 学习,都是在反复使用它。

保山学院·人工智能教研室·曹鼎鼎