WEBVTT

00:00.910 --> 00:04.540
大家好, 欢迎回到人工智能课程｡ 

00:04.810 --> 00:12.100
之前我们有一个关于马尔可夫决策过程的很长很长的教程, 希望你们能沿着得很好,

00:12.130 --> 00:18.950
也希望我能用一种平易近人和吸引人的方式来解释事情｡

00:18.970 --> 00:22.630
今天我们要讨论的是政策与计划｡ 

00:22.660 --> 00:27.160
这将是一个快速和有趣的教程, 因为现在我们进入了一个新的世界｡ 

00:27.160 --> 00:33.160
我们正在进入随机搜索的世界, 非确定性搜索, 当它不仅仅是关于通过迷宫, 而且还考虑到随机因素,

00:33.160 --> 00:37.630
当你通过迷宫时, 这些随机因素可能会击中你的头部,

00:37.660 --> 00:41.050
你需要为它们做好准备｡

00:41.050 --> 00:44.440
我们的探员就生活在这样的世界里｡ 

00:44.440 --> 00:46.750
这样更有趣, 但也更危险｡ 

00:46.750 --> 00:47.260
它的更多｡ 

00:47.260 --> 00:48.460
这是不可预测的｡ 

00:48.460 --> 00:50.800
那我们的探员会怎么做

00:50.830 --> 00:51.670
我们来看看｡ 

00:52.000 --> 00:57.730
这是我们的马尔可夫决策过程框架, 也是我们最喜欢的贝尔曼方程｡ 

00:58.090 --> 01:01.960
然而, 我们正在研究的贝尔曼方程的更高级版本｡ 

01:01.960 --> 01:04.360
所以从现在开始, 我们就把这个发展方程叫做｡ 

01:04.480 --> 01:07.810
这里我们得到了所有操作的最大值｡ 

01:07.810 --> 01:13.960
因此, 状态和状态的值是代理在该状态下可能执行的所有操作的最大值｡

01:13.960 --> 01:25.570
而最大值取自代理在状态中执行动作a将获得的奖励, 加上折扣因子乘以新状态的期望值｡

01:25.570 --> 01:31.810
它将在这里取预期值, 因为它不知道最终会处于什么状态｡

01:31.810 --> 01:42.550
环境中存在一些随机效应, 可能会改变状态, 而不是你可能不会最终处于期望的状态｡

01:42.550 --> 01:44.080
你可能会在一个不同的状态结束｡ 

01:44.080 --> 01:47.380
这就是为什么我们要取这里的期望值, 这里的和｡ 

01:47.830 --> 01:53.590
让我们来看看这个例子或者迷宫的例子.

01:53.590 --> 01:56.650
这就是我们之前的结果｡ 

01:56.650 --> 02:01.780
之前我们讨论的是确定性搜索, 所以我们知道｡ 

02:01.780 --> 02:04.750
好吧, 既然我在这儿, 我肯定得去这儿｡ 

02:04.750 --> 02:06.550
如果我在这里, 我一定要去这里｡ 

02:06.550 --> 02:08.120
如果我在这里, 我一定要去这里｡ 

02:08.140 --> 02:08.920
如果我在这里, 我就在这里｡ 

02:08.920 --> 02:11.230
所以一切都很简单｡ 

02:11.230 --> 02:14.560
一旦你有了这张地图, 记住我们称之为计划｡ 

02:14.560 --> 02:17.350
一旦你有了计划, 你需要做的事情就很简单了｡ 

02:17.830 --> 02:18.930
有错误｡ 

02:18.940 --> 02:20.380
这就是箭的计划｡ 

02:20.380 --> 02:23.140
从这里看, 这是非常简单的｡ 

02:23.140 --> 02:24.700
这些是探员会采取的路线｡ 

02:24.700 --> 02:27.850
无论你从这条蓝线上的哪一个地方开始, 那就是你要走的路.

02:28.510 --> 02:31.060
不过, 现在我们再也没有计划了｡ 

02:31.060 --> 02:36.490
我们不能有一个计划, 因为, 你知道, 无论我们计划可能不会发生｡ 

02:36.490 --> 02:37.600
这不是我们能控制的｡ 

02:37.600 --> 02:40.840
计划就是你确切地知道下一步要做什么｡ 

02:40.840 --> 02:41.710
你知道舞步｡ 

02:41.710 --> 02:46.990
所以你有你有一个起点, 你有一个目标, 你知道每一个步骤, 所以你可以计划出来｡

02:46.990 --> 02:48.850
你会说, 我来做这个, 我来做这个, 我来做这个｡ 

02:49.000 --> 02:50.350
就像你的生活, 就像一个计划｡ 

02:50.350 --> 02:54.790
但同时, 也有太多的随机性｡ 

02:54.790 --> 03:00.490
你不可能有一个计划, 因为如果你到了这里, 然后你点击右边, 实际上把你打倒了？

03:00.490 --> 03:01.990
所以这不是你计划的一部分｡ 

03:02.050 --> 03:03.880
所以现在不叫计划了｡ 

03:03.880 --> 03:11.800
这里我们要计算出这些值, 或者我们只看一下这个问题的计算值｡

03:11.800 --> 03:18.220
但基本上, 考虑到我们内部有这种随机性, 所以这些是新的值｡ 

03:18.610 --> 03:21.040
那么, 为什么这些价值观是不同的呢？

03:21.040 --> 03:22.810
让我们把它和之前的做个比较｡ 

03:22.810 --> 03:24.220
这是我们以前的情况｡ 

03:24.550 --> 03:25.600
这些是新值｡ 

03:25.600 --> 03:33.850
所以再一次, 我们先前你们可以看到10｡  九比零｡  81, 73, 66这就是我们现在的86.

03:33.850 --> 03:36.650
第一课, 第74课, 第71课, 第63课等等.

03:36.670 --> 03:43.540
顺便说一下, 这些并不是我头脑中的正确值, 但如果我们要运行一个代理,

03:43.540 --> 03:46.300
值应该是类似于这个的东西｡

03:46.810 --> 03:51.850
这些值可能会改变, 因为取决于我们选择0的伽玛｡  9或其它值｡ 

03:51.850 --> 03:56.230
但不管怎样, 为了讨论的缘故, 这些是我们现在要讨论的价值观｡ 

03:56.350 --> 03:57.730
它们是近似值｡ 

03:57.730 --> 04:00.970
他们以正确的方式传达了整个概念｡ 

04:00.970 --> 04:02.200
让我们来看看它们｡ 

04:02.200 --> 04:03.160
他们为什么改变了？

04:03.160 --> 04:05.620
好吧, 为什么在这里让我们从这个开始｡ 

04:05.620 --> 04:07.210
这里的值是1｡ 

04:07.210 --> 04:09.400
为什么一下子0｡  八十六？

04:09.400 --> 04:10.240
为什么小于1？

04:10.240 --> 04:11.140
我们能从这里走吗？

04:11.140 --> 04:11.650
在这里吗？

04:11.650 --> 04:18.280
实际上我们称之为, 因为从这里开始, 如果我们向右走, 这是我们的意图,

04:18.280 --> 04:22.270
如果我们是对的, 我们就有10%的可能性我们会在这里结束｡

04:22.270 --> 04:27.190
所以我们会撞到墙, 然后回到这个状态, 记住, 我们有一个gamma,

04:27.190 --> 04:32.080
所以价值会被打折, 或者有10%的几率会在这个状态下结束｡

04:32.080 --> 04:34.870
所以我不是100%有可能会到这里｡ 

04:34.870 --> 04:37.360
所以这个值不能再是1｡ 

04:37.360 --> 04:41.290
它是一个更小的数, 假设是0. 86.

04:41.290 --> 04:43.720
这就是为什么会这样的一个例子

04:43.720 --> 04:49.660
如果你计算贝尔蒙特方程, 你就能得到确切的值, 就是我们现在得到的完整的贝尔蒙特方程｡

04:49.690 --> 04:55.780
唯一的问题是会有一些递归, 因为你需要知道这个的值, 然后你需要知道这个的值｡

04:55.810 --> 04:59.050
这是相当复杂的, 这就是为什么我们在这里没有手动进行计算｡ 

04:59.050 --> 05:00.160
这就是为什么一但｡ 

05:00.420 --> 05:03.000
我可以做他们, 因为它正在经历这一切｡ 

05:03.050 --> 05:07.650
就好像人工智能计算这些东西并不复杂｡ 

05:08.400 --> 05:09.990
这就是我们这里的值｡ 

05:09.990 --> 05:11.460
但让我们来看看不同的｡ 

05:11.460 --> 05:14.520
所以这里它曾经是0｡  9只是因为贴现因素｡ 

05:14.520 --> 05:19.770
记住, 从这里再到这里, 现在从这里, 我们不能从这里跳到这里,

05:19.770 --> 05:23.720
因为即使我们这样跳, 我们也可能回到这里｡

05:23.730 --> 05:24.870
在后面, 对｡ 

05:24.870 --> 05:29.640
我们有20%的可能会继续待在广场上, 因为我们会撞到墙, 如此反复.

05:29.670 --> 05:32.640
所以在这里的价值是0｡  71.

05:32.640 --> 05:39.780
同样, 这是贴现因子, 你可能会觉得奇怪, 这与贴现因子是相等的, 这太高了｡

05:39.810 --> 05:44.550
在这个例子中, 贴现因子可能不是0｡  9, 也许是0｡  99或类似的东西｡ 

05:44.550 --> 05:46.230
所以不用担心这个｡ 

05:46.230 --> 05:48.420
就像专注于那个｡ 

05:48.420 --> 05:58.860
数值确实发生了变化, 数值变小了, 主要是因为你不是100%有可能达到你想要的状态.

05:58.980 --> 06:05.220
你会发现一个有趣的结果, 它曾经是0｡  9, 实际上已经下降了很多｡

06:05.230 --> 06:06.420
已经大幅下降了｡ 

06:06.420 --> 06:07.020
为什么会这样呢？

06:07.020 --> 06:12.090
因为如果你从这里往上走,

06:12.090 --> 06:18.600
这也是我们的意图, 有10%的机会撞到墙上, 但也有10%的机会真正结束在火坑和失去负一的奖励｡

06:18.600 --> 06:22.620
基本上, 这意味着对经纪人来说, 这就是游戏的结束｡ 

06:22.980 --> 06:25.530
所以这是一个非常糟糕的状态｡ 

06:25.530 --> 06:28.670
所以突然之间, 记住, 我们有0｡  9这里一分｡ 

06:28.680 --> 06:29.810
所以它们是等价的｡ 

06:29.830 --> 06:34.710
不管你在这里还是在这里, 它们在这两种状态下的价值几乎是相等的｡

06:34.710 --> 06:41.340
但现在突然之间, 砰, 这个状态就像是这个的两倍好｡ 

06:41.340 --> 06:46.800
只是因为在这里, 如果你直接去你, 去你想去的地方｡ 

06:46.800 --> 06:51.180
随机性发生的后果就是你呆在这里｡ 

06:51.180 --> 06:51.510
给你

06:51.750 --> 06:54.600
其中一个后果, 10%的机会是你最终在坑｡ 

06:54.810 --> 07:03.180
正如你所看到的, 这不再是一个好的状态了, 仅仅是因为一些可能发生的波动｡

07:03.270 --> 07:09.090
正如你所看到的, 这个也很糟糕, 因为它和这个一样糟糕, 因为它最后只有10%的机会,

07:09.090 --> 07:12.390
10%的机会被堵在墙上.

07:12.390 --> 07:14.940
但与此同时, 还有一个折扣因素｡ 

07:14.940 --> 07:20.220
首先是贴现系数, 然后是这里｡ 

07:20.400 --> 07:23.820
即使你假设去了这里, 你也可能再次陷入困境｡ 

07:23.820 --> 07:28.620
所以这个概率也会被考虑进去, 因为记住, 这个值是从这个值推导出来的,

07:28.620 --> 07:32.190
这个值也是从这个值推导出来的, 对吗？

07:32.190 --> 07:34.020
因此它很小｡ 

07:34.020 --> 07:37.290
但在现实中, 其实我说的有错｡ 

07:37.290 --> 07:39.540
此值不是从此值派生的｡ 

07:39.540 --> 07:47.190
如果你现在看一下, 你会注意到这个值V0实际上大于这个值｡

07:47.340 --> 07:53.670
你会注意到, 对于代理来说, 这样走比这样走更好｡ 

07:53.670 --> 07:54.690
这是有道理的, 对吧？

07:54.690 --> 07:56.970
因为这样它就不会输｡ 

07:57.150 --> 07:58.530
没有机会得到坑｡ 

07:58.530 --> 07:59.700
是的, 有点长｡ 

07:59.700 --> 08:03.300
因此, 贴现因子的影响更大｡ 

08:03.300 --> 08:07.410
但与此同时, 仅仅因为这里有一个进入坑的机会, 如果它是直的,

08:07.410 --> 08:09.000
它就有一个超过跳跃的机会｡

08:09.180 --> 08:15.480
所以它会花时间, 而不是花时间, 它只会到处走, 因为这样的话, 得到它的机会就小得多了｡

08:15.630 --> 08:16.350
现在还有｡ 

08:16.350 --> 08:18.090
所以从这里到那里｡ 

08:18.570 --> 08:19.530
从这里到那里｡ 

08:19.530 --> 08:23.340
它有可能会掉进坑里, 因为它可能会在那里结束, 然后可能会在坑里结束, 但尽管如此,

08:23.460 --> 08:25.590
这是一个较小的机会｡

08:25.590 --> 08:27.270
所以它会像这样转来转去｡ 

08:27.270 --> 08:30.150
所以很有意思的是看它们是如何变化的｡ 

08:30.150 --> 08:32.370
记住以前从这里你会这样去｡ 

08:32.370 --> 08:34.710
从这里开始, 你要像这样, 从这里开始, 你要像这样｡ 

08:34.710 --> 08:36.750
现在突然之间你可以看到它的变化｡ 

08:36.750 --> 08:38.580
我们来画箭头看看现在的样子｡ 

08:39.300 --> 08:43.680
瞧, 你甚至看到了一个更随机的东西, 对吧？

08:43.680 --> 08:45.180
所以, 是的, 这是真的｡ 

08:45.180 --> 08:46.440
但看看这里发生了什么｡ 

08:46.440 --> 08:47.520
看看这个｡ 

08:47.550 --> 08:48.600
看看这个｡ 

08:48.810 --> 08:50.400
你希望这样吗？

08:50.400 --> 08:54.480
这绝对是我第一次看到这个的时候, 我印象深刻｡ 

08:54.480 --> 08:55.320
我一点也不惊讶｡ 

08:55.320 --> 08:57.120
我不是我很惊讶｡ 

08:57.120 --> 08:59.430
我完全没想到会这样｡ 

08:59.700 --> 09:04.620
这是我能智胜人类的一个例子｡ 

09:05.070 --> 09:08.250
这不是你无法预测的事｡ 

09:08.250 --> 09:12.210
但A. 一､ 

09:12.210 --> 09:18.660
, 通过强化学习, 记住那些狗的例子, 它们有时实际上比正常真实的生活中的狗或预先编程的机器狗工作得更好,

09:18.660 --> 09:22.200
或者可以踢足球, 仅仅是因为它们想出了这些连我们都看不到的想法｡

09:22.200 --> 09:23.580
这是一个很好的例子｡ 

09:23.580 --> 09:23.730
好吧, 我知道了

09:23.730 --> 09:28.800
所以你可能也没想到, 经纪人, 而不是去了, 就像,

09:28.800 --> 09:33.060
为什么我喜欢如果我去了, 那么有10%的机会, 我会跳进坑｡

09:33.060 --> 09:35.040
但是, 通过进入墙壁, 它实现了什么？

09:35.040 --> 09:41.910
80%的情况下它会反弹并保持在这个状态, 但10%的情况下它会在这里, 10%的情况下它会在这里.

09:42.090 --> 09:48.930
所以突然之间你可以看到现在它实际上是在这种新的方法跳到墙上｡ 

09:48.930 --> 09:52.980
有0%的几率会从这个位置进入火坑｡ 

09:52.980 --> 09:55.500
所以, 它好像真的不想进入火坑｡ 

09:55.500 --> 09:59.610
所以它吸引了债券反弹到墙上几次, 然后它就会｡ 

09:59.880 --> 10:03.000
在某个点向左或向右, 因为随机性会发生｡ 

10:03.000 --> 10:05.640
所以它通过实验学到了这一点｡ 

10:05.640 --> 10:11.310
它了解到, 当我往前走的时候, 结果还不如我往墙上走的时候｡ 

10:11.310 --> 10:15.770
如果你想一想, 它就像这个机器人, 如果你想一想,

10:15.780 --> 10:19.470
它就像一个火坑, 它是一个非常这个是这个就像一个这个正方形就像一个非常小的突出部分｡

10:19.590 --> 10:21.510
然后这就像一座山, 像一座悬崖｡ 

10:21.510 --> 10:27.330
而这个机器人只是紧紧地抱着悬崖, 就像在等待, 直到它, 像, 把它推向右边或左边, 因为,

10:27.330 --> 10:31.080
嗯, 作为一个人类, 你可能也会这样做｡

10:31.080 --> 10:32.400
你就不会站在那边了｡ 

10:32.400 --> 10:34.890
这样你就能抱着悬崖了, 对吧｡ 

10:34.890 --> 10:35.760
或者类似的东西｡ 

10:35.760 --> 10:39.510
希望你永远不需要结束你永远不会结束在这样的情况下｡ 

10:39.510 --> 10:43.500
但是就像视觉上, 视觉上, 如果你仔细想想, 这里也是一样的｡ 

10:43.500 --> 10:46.380
所以这是相当激烈的, 对不对？

10:46.380 --> 10:51.630
所以我想出了这个主意和这里一样, 我不想往左走, 冒着打架的危险, 我只是想从墙上弹开,

10:51.630 --> 10:56.850
就像拥抱墙一样, 在某个时候跳进墙里.

10:56.850 --> 11:00.840
我只知道有10%的可能性｡ 

11:00.840 --> 11:04.350
每次我这样做, 我会去这里, 有时它会发生, 我会结束在这里, 我会很安全,

11:04.350 --> 11:05.700
然后我会继续这样做｡

11:06.570 --> 11:13.020
非常非常有趣的方法, 我在这里采用了, 正如你所看到的, 根是这样的｡

11:13.020 --> 11:17.370
所以从这里它可能向右然后向右到出口,

11:17.370 --> 11:22.140
或者在这里它会像这样向左, 然后在这里它会在某个点它会向左, 然后再像这样｡

11:22.140 --> 11:23.340
了解这一点很重要｡ 

11:23.340 --> 11:24.030
这不是规定

11:24.030 --> 11:28.110
所以即使它从这里跳出来, 它也可能会跳到这里｡ 

11:28.110 --> 11:31.770
然后从这里它可能实际上, 而不是直行, 它可能实际上回到右边, 然后从这里可能去左边,

11:31.770 --> 11:33.930
它去｡

11:33.930 --> 11:34.290
好吧, 我会的

11:34.290 --> 11:36.390
所以有很多不同的选择｡ 

11:36.390 --> 11:37.710
所以它可能不会完全遵循这个｡ 

11:37.710 --> 11:38.640
我可能会走另一条路｡ 

11:38.670 --> 11:42.360
这只是它为自己设计的理想路线｡ 

11:42.360 --> 11:44.610
但解决问题的方式实际上可能会有所不同｡ 

11:44.610 --> 11:46.050
这取决于真实的世界｡ 

11:46.050 --> 11:46.860
好了, 我们走吧｡ 

11:46.860 --> 11:50.010
这就是人工智能的世界｡ 

11:50.010 --> 11:52.350
这就是政策和计划的区别

11:52.470 --> 12:01.170
希望你慢慢地对人工智能的能力感到兴奋, 特别是考虑到我们在这里看到的｡

12:01.170 --> 12:07.410
这些都是人工智能正在做出的一些非常大师级的决定｡ 

12:07.410 --> 12:12.720
正如你所看到的, 当你应用人工智能的时候,

12:12.720 --> 12:19.170
即使从这个小例子中, 你也可以看到当你在现实世界中玩人工智能的时候, 也许你会想出一些甚至有时候人类都无法想出的想法和决定｡

12:19.170 --> 12:32.250
这和谷歌AlphaGo对阵韩国围棋冠军李世石时的情形一模一样, 当时的世界围棋冠军是李世石｡

12:32.250 --> 12:36.870
他们在韩国比赛, 回到2016年, 我想是2016年3月｡ 

12:36.870 --> 12:42.300
它想出了一些人类3000年来从未玩过或者人类不习惯玩的招式｡ 

12:42.300 --> 12:45.450
这就是一个例子｡ 

12:45.450 --> 12:50.160
所以我再次希望你们对这门课和我们将要创造的东西感到兴奋和兴奋｡

12:50.160 --> 12:52.590
我期待着下次见到你｡ 

12:52.590 --> 12:54.150
在那之前, 好好享受吧｡ 

12:54.180 --> 12:54.720
一､ 
