WEBVTT

00:00.180 --> 00:04.930
大家好, 欢迎来到第一个模块“自动驾驶汽车”的有趣教程｡ 

00:04.950 --> 00:06.160
这将是史诗般的｡ 

00:06.180 --> 00:11.600
我们将测试我们对环境的观察力, 我们将在四个不同的层面上进行测试｡ 

00:11.610 --> 00:13.290
也就是说, 我们要玩一个游戏｡ 

00:13.290 --> 00:18.150
游戏将有完整的难度级别, AI将必须通过这四个级别｡ 

00:18.160 --> 00:20.460
那么这四个层次会是什么呢？

00:20.460 --> 00:29.100
第一个阶段, 第一个阶段是到达机场, 然后在机场和市中心之间进行往返｡

00:29.100 --> 00:34.470
所以当我们看到汽车做这些往返时, 我们通过第一级, 然后是第二级｡ 

00:34.470 --> 00:40.920
第二个阶段仍然是做这些往返, 但是在我们自己画的一条特定的道路上｡ 

00:40.920 --> 00:48.960
但这将是一个容易的道路, 因为它的二级, 当然, 汽车将不得不自己驾驶留在这条路上｡

00:48.960 --> 00:53.190
因此, 这将是一条从机场到市中心, 然后另一条路｡ 

00:53.190 --> 00:56.970
所以汽车必须在这条路上来回行驶｡ 

00:57.000 --> 01:00.810
如果是的话, 我们会通过第二关, 然后是第三关｡ 

01:00.810 --> 01:08.640
第三级将在地图上画一些障碍物, 看看汽车是否设法避开障碍物并仍然达到目标｡

01:08.640 --> 01:09.540
所以不用担心｡ 

01:09.540 --> 01:14.280
我们将画一些困难的障碍, 汽车将不得不避免,

01:14.280 --> 01:16.650
我们将看到它是否设法到达机场和市中心｡

01:16.830 --> 01:25.170
最后, 第四关, 对汽车来说最具挑战性的一关是画一条非常困难的路到达市中心｡

01:25.170 --> 01:28.020
所以我不知道, 你知道, 这将是一个道路像一些锯齿形｡ 

01:28.020 --> 01:31.560
我不是一个出色的建筑师, 但我会努力做出一条具有挑战性的道路｡ 

01:31.650 --> 01:35.220
所以希望我们至少能通过第一关｡ 

01:35.220 --> 01:36.150
那就太好了

01:36.150 --> 01:39.120
那就希望我们也能通过第二关和第三关｡ 

01:39.120 --> 01:41.880
如果我们通过了第四关, 那就太好了｡ 

01:41.880 --> 01:43.080
所以我们开始吧｡ 

01:43.080 --> 01:44.400
让我们接受挑战吧｡ 

01:44.400 --> 01:49.290
实际上, 自动驾驶汽车将接受挑战, 但我们是这背后的大脑,

01:49.290 --> 01:51.630
所以让我们仍然希望它能起作用｡

01:51.900 --> 01:52.410
好吧, 我会的

01:52.410 --> 01:57.060
首先我要给予你们一个关于地图的快速提示｡ 

01:57.060 --> 01:58.950
这就是地图｡ 

01:58.950 --> 02:00.870
首先, 我们要看一下地图｡ 

02:00.870 --> 02:03.930
我们要看看没有人工智能的自动驾驶汽车｡ 

02:03.960 --> 02:09.240
它只是一辆车, 具有本单元开始时看到的随机动作｡ 

02:09.330 --> 02:10.830
我们该如何看待这个问题呢？

02:10.830 --> 02:19.380
我们必须关闭人工智能, 而要激活人工智能, 我们只需要将温度设置为零｡

02:19.380 --> 02:24.090
记住这里的参数是温度, 现在它等于7｡ 

02:24.090 --> 02:25.560
所以这是低温｡ 

02:25.560 --> 02:27.270
我们以后会增加的｡ 

02:27.270 --> 02:32.520
但如果我们不想让汽车有大脑, 也就是说, 如果我们不想激活人工智能, 我们只需要把温度设置为零,

02:32.520 --> 02:35.970
t等于零｡

02:35.970 --> 02:36.810
这里也一样｡ 

02:36.810 --> 02:39.600
当然, 这是代码中的真实的温度｡ 

02:39.600 --> 02:40.380
好了, 我们走吧｡ 

02:40.380 --> 02:45.390
然后, 我们一定不要忘记保存, 因为否则将不包括更改｡ 

02:45.630 --> 02:47.400
现在我们没有人工智能了｡ 

02:47.430 --> 02:49.020
AI被激活｡ 

02:49.020 --> 02:55.260
让我们看一下地图, 给予我们快速复习一下, 快速提醒一下它的样子｡

02:55.260 --> 03:00.030
我将选择所有内容, 然后按Enter键｡ 

03:00.960 --> 03:01.470
好吧, 我会的

03:01.470 --> 03:03.630
这是我们的地图和车｡ 

03:03.630 --> 03:10.020
正如你所看到的, 汽车的行为完全是随机的, 你知道, 左转, 直行或右转｡

03:10.020 --> 03:17.430
因此, 它没有到达机场, 这是我提醒在地图的左上角, 没有达到｡

03:17.430 --> 03:18.210
好吧, 它刚刚做到了｡ 

03:18.210 --> 03:19.620
但这完全是随机的｡ 

03:20.130 --> 03:28.110
你看, 现在它在机场, 它没有达到另一个目标, 这是市中心的右下角的地图｡

03:28.200 --> 03:29.670
所以我们就像在这里｡ 

03:29.670 --> 03:33.900
但我们现在可以清楚地看到, 这些行为完全是随机的｡ 

03:33.900 --> 03:39.240
它是无处可去的, 绝对没有人工智能｡ 

03:39.240 --> 03:40.170
但别担心｡ 

03:40.170 --> 03:41.880
我们现在就激活它｡ 

03:42.090 --> 03:44.400
我要关闭地图｡ 

03:45.100 --> 03:49.450
然后我要重新启动内核, 重新启动内核｡ 

03:49.480 --> 03:51.460
您可以在这里单击此工具按钮, 然后｡ 

03:51.460 --> 03:54.550
是的, 现在是表演时间｡ 

03:54.590 --> 04:01.360
我们终于要把我们做的这个大脑放在车里, 激活人工智能｡ 

04:01.480 --> 04:03.920
我超级兴奋地想看看会发生什么｡ 

04:03.940 --> 04:08.920
我们现在要激活人工智能, 要做到这一点, 我们需要提高温度｡ 

04:09.280 --> 04:17.220
所以要改变温度, 我们只需要把这个0替换成, 我们从之前的7开始｡

04:17.230 --> 04:19.450
所以我们在这里指定7｡ 

04:19.480 --> 04:20.050
好吧, 我会的

04:20.050 --> 04:21.430
咱们别忘了保存｡ 

04:21.430 --> 04:23.380
现在让我们回到我们的地图｡ 

04:23.380 --> 04:27.460
现在我们可以再次重新执行, 因为我们重新启动了内核｡ 

04:27.640 --> 04:30.670
我们开始执行吧｡ 

04:30.670 --> 04:33.490
我们有车, 它在做什么？

04:33.580 --> 04:36.550
嗯, 它正在努力寻找自己的路｡ 

04:36.550 --> 04:39.700
它是探索, 它是理解它必须做什么｡ 

04:39.700 --> 04:41.920
马上就要到机场了｡ 

04:41.920 --> 04:43.090
好了

04:43.090 --> 04:44.560
第一个目的已达成｡ 

04:44.560 --> 04:45.400
好极了｡ 

04:45.430 --> 04:47.920
现在下一个目标是到达市中心｡ 

04:47.920 --> 04:50.500
它确实到达了市中心｡ 

04:50.500 --> 04:54.070
而现在它正试图找回机场, 去机场｡ 

04:54.070 --> 04:55.660
又来了｡ 

04:55.660 --> 04:56.380
好极了｡ 

04:56.380 --> 04:57.310
所以这是可行的｡ 

04:57.310 --> 05:01.150
实际上, 从错误中探索和学习并不需要时间｡ 

05:01.150 --> 05:04.270
你知道, 这里的错误是离目标更远｡ 

05:04.300 --> 05:08.680
这就是我们惩罚汽车的地方, 给它一个轻微的负面奖励｡ 

05:08.890 --> 05:10.240
是-0｡  2.

05:10.240 --> 05:12.430
所以它从那个错误中吸取了教训｡ 

05:12.430 --> 05:18.850
通过从错误中吸取教训, 它成功地通过接近目标来获得积极的回报｡

05:19.060 --> 05:21.760
而现在它终于明白了它要做什么｡ 

05:21.760 --> 05:27.740
它肯定是到达机场, 然后到达市中心, 然后做这些往返旅行｡ 

05:28.230 --> 05:29.620
那就完美了｡ 

05:29.740 --> 05:35.800
我们有一辆自动驾驶汽车, 但我忍不住注意到它看起来像一只昆虫｡ 

05:35.980 --> 05:40.480
这辆车看起来并不自信, 你知道, 它没有一个非常自信的运动｡ 

05:40.480 --> 05:42.520
就像左拐右拐｡ 

05:42.520 --> 05:44.500
这看起来不像是汽车运动｡ 

05:44.500 --> 05:45.940
它看起来更像一只虫子｡ 

05:46.210 --> 05:47.710
所以我们要解决这个问题｡ 

05:47.710 --> 05:52.570
正如你可能已经猜到的, 解决这个问题的方法是提高温度｡ 

05:52.570 --> 05:57.880
因为记住, 温度是软mac函数中的参数, 我们可以增加它,

05:57.880 --> 06:00.430
以便更确定地返回操作｡

06:00.610 --> 06:05.200
所以如果我们提高温度, 这是有道理的, 嗯,

06:05.200 --> 06:09.610
我们最终可能会得到一辆对自己更有把握的车, 因为人工智能将更确定它应该采取什么行动｡

06:10.000 --> 06:15.070
记住, 这是因为这个动作会以更高的概率进行｡ 

06:15.100 --> 06:20.740
增加温度的唯一问题是, 请记住, AI较少探索其他动作,

06:20.740 --> 06:26.020
因为通过增加温度, 其他动作的概率将较低｡

06:26.140 --> 06:31.690
但现在这似乎不是一个问题, 因为汽车似乎没有问题, 达到它的目标,

06:31.690 --> 06:33.820
机场在市中心｡

06:33.820 --> 06:36.910
所以如果我们想的话, 完全可以提高温度｡ 

06:36.910 --> 06:40.930
这东西看起来像昆虫, 看起来像汽车｡ 

06:41.140 --> 06:42.400
所以我们开始吧｡ 

06:42.400 --> 06:44.800
我现在要把它关上｡ 

06:45.370 --> 06:46.180
我们走吧｡ 

06:46.180 --> 06:48.280
再次重新启动内核｡ 

06:49.300 --> 06:49.750
然后按｡ 

06:49.750 --> 06:50.350
是的, 我知道

06:50.530 --> 06:52.690
现在我们要提高温度｡ 

06:52.990 --> 06:53.950
所以我们开始吧｡ 

06:53.950 --> 06:56.290
我要回去看我的档案了｡ 

06:56.290 --> 06:59.980
然后用100代替t等于7｡ 

07:01.200 --> 07:02.090
我们走吧｡ 

07:02.100 --> 07:03.240
那我们就保存｡ 

07:03.450 --> 07:06.270
现在我们有了自动驾驶汽车｡ 

07:06.270 --> 07:07.590
肯定的本身｡ 

07:07.590 --> 07:11.850
所以我们可能会得到更好的结果, 我们可能会得到看起来更像汽车的东西｡ 

07:11.880 --> 07:15.630
现在, 我们单击一个地图, 然后再次执行该操作｡ 

07:16.480 --> 07:17.270
好吧, 我会的

07:17.290 --> 07:18.830
发生了什么事？

07:18.930 --> 07:21.190
噢, 它好像烧坏了｡ 

07:21.220 --> 07:25.850
不知道为什么, 但不管怎样, 现在我们有了看起来更像汽车的东西｡ 

07:25.870 --> 07:28.090
你可以看到它走得更直了｡ 

07:28.120 --> 07:30.960
它不会做这些快速的左右移动｡ 

07:30.970 --> 07:35.620
这是因为现在汽车更确定在每一次采取的方向｡ 

07:35.860 --> 07:40.600
它想采取最好的方向去机场, 然后去市中心｡ 

07:40.750 --> 07:44.260
很明显, 我们现在可以说我们通过了第一关｡ 

07:44.290 --> 07:47.770
这辆车在机场和市区之间来回行驶｡ 

07:47.770 --> 07:49.330
所以我们要保存它｡ 

07:49.630 --> 07:52.370
这就是我将向你们展示如何保存大脑.

07:52.390 --> 07:54.760
我们只需要点击这个保存按钮｡ 

07:54.880 --> 07:56.770
而如果我们｡ 

07:58.340 --> 07:59.450
看看这里发生了什么｡ 

07:59.450 --> 08:02.300
我们在一开始就有奖励曲线｡ 

08:02.300 --> 08:04.570
我们可以观察到它所犯的一些错误｡ 

08:04.580 --> 08:06.920
所以这就是回报是负的地方｡ 

08:06.920 --> 08:16.610
但后来它从错误中吸取了教训, 奖励一点一点地增加, 直到达到一个恒定的正奖励等于0｡

08:16.610 --> 08:16.610
1.

08:16.610 --> 08:21.410
但这是我们设定的最高奖励, 那是因为它最终进行了探索｡ 

08:21.650 --> 08:23.420
这是探索阶段｡ 

08:23.420 --> 08:25.910
然后它就知道该怎么做了｡ 

08:25.910 --> 08:32.000
这就是它在机场和市中心之间往返的地方, 没有任何错误｡ 

08:32.390 --> 08:33.350
好了, 我们走吧｡ 

08:33.350 --> 08:34.400
我们通过了第一关｡ 

08:34.400 --> 08:35.600
恭喜你啊

08:35.630 --> 08:38.000
现在让我们来看看更有挑战性的东西｡ 

08:38.000 --> 08:39.860
让我们进入下一个阶段｡ 

08:39.860 --> 08:46.970
让我们试着通过第二关, 我提醒你, 第二关是在我们自己画的一条特定的道路上做往返旅行｡

08:46.970 --> 08:49.010
让我们在下一个教程中了解一下｡ 

08:49.010 --> 08:50.840
在那之前, 好好享受我｡ 
