WEBVTT

00:00.330 --> 00:02.850
大家好, 欢迎学习本Python教程｡ 

00:03.000 --> 00:08.220
好了, 现在我们要做一个转发函数,

00:08.220 --> 00:13.530
它会把我们大脑的输出信号传播到人工智能的身体上, 这样它就能做出正确的动作, 到达背心｡

00:13.530 --> 00:17.160
但是还没有正确的行动, 因为还没有训练｡ 

00:17.160 --> 00:23.160
我们还没有训练眼睛,

00:23.160 --> 00:29.670
但这正是我们在第二部分实现深度卷积学习所要做的, 顺便说一句, 我将把它重新命名为“用深度卷积学习训练人工智能”｡

00:29.670 --> 00:35.220
但现在我们需要将信号从大脑的输出层转发到身体｡ 

00:35.220 --> 00:40.590
这正是我们要做的, 这个向前的功能, 也就是我们身体的最后一个功能｡

00:41.170 --> 00:42.460
所以我们开始吧｡ 

00:42.610 --> 00:45.640
我们从杰夫·福特开始｡ 

00:46.150 --> 00:50.020
根据你的说法, 你要用什么理由？

00:50.050 --> 00:53.050
当然, 这需要第一个自我｡ 

00:53.050 --> 00:54.940
然后还有另一个吗？

00:54.970 --> 00:56.680
嗯, 是的, 有｡ 

00:56.680 --> 00:58.030
那你打算怎么做？

00:58.060 --> 01:07.270
很自然地, 我们想把大脑的输出信号传递给身体, 因此输入信号就是大脑的输出信号｡

01:07.540 --> 01:10.390
现在我们需要给予这些输出信号命名｡ 

01:10.390 --> 01:14.260
所以我要在这里加上这个论证｡ 

01:14.380 --> 01:14.860
好吧, 我会的

01:14.860 --> 01:21.400
这对应的是大脑的输出信号, 输入图像通过大脑传播, 到达输出层,

01:21.400 --> 01:27.100
这里是X,

01:27.100 --> 01:34.750
通过大脑的前向函数返回, 现在大脑的输出信号将通过新的前向函数转发到身体, 我们在下一个柔体类中做了这个函数｡

01:35.260 --> 01:36.490
所以我们开始吧｡ 

01:36.490 --> 01:38.560
让我们在这里添加一些颜色｡ 

01:38.560 --> 01:43.870
现在, 正如你们所理解的, 我们将使用一个软max方法来播放这个动作｡ 

01:43.870 --> 01:51.230
这意味着我们的眼睛的身体, 在接收到大脑的输出信号后, 将发挥与软最大技术的行动｡

01:51.250 --> 01:56.310
所以现在我们要做的基本上和我们为自动驾驶汽车做的完全一样｡ 

01:56.320 --> 01:59.310
我们将得到概率分布｡ 

01:59.320 --> 02:05.730
这是第一步, 然后我们将根据概率分布对一个行为进行抽样.

02:05.740 --> 02:14.560
所以我们现在能做的基本上就是得到我们的自动驾驶汽车文件, 然后复制粘贴我们在自动驾驶汽车中实现的选择动作功能｡

02:14.560 --> 02:15.610
但我们再来一次｡ 

02:15.610 --> 02:19.390
这将是一个很好的练习, 实际上你可以试着在我之前打出来｡ 

02:20.020 --> 02:20.250
好吧, 我会的

02:20.260 --> 02:23.620
所以首先我们要做的是得到概率｡ 

02:23.620 --> 02:31.720
这是每个Q值的概率分布, 它取决于输入, 图像和每个动作｡

02:31.720 --> 02:39.700
所以我们有一个Q值对应于6或7种可能的行为, 因此我们得到了7种概率的分布｡

02:39.700 --> 02:44.920
我说七个是因为我认为有七个动作而不是六个, 因为除了向前､ 向左､ 向右或射击,

02:44.920 --> 02:48.190
我们还可以跑｡

02:48.250 --> 02:53.860
这就产生了七种可能的行为, 因此我们得到了七种概率的分布,

02:53.860 --> 02:56.680
每个行为对应一个Q值｡

02:57.010 --> 02:58.840
所以道具等于｡ 

02:58.840 --> 03:00.580
现在记住我们要做什么｡ 

03:00.610 --> 03:06.400
基本上, 我们必须使用函数模块中的set max函数｡ 

03:06.400 --> 03:07.330
所以这很简单｡ 

03:07.330 --> 03:13.630
我们先取函数模块, 然后是点, 最后是软最大函数｡ 

03:13.630 --> 03:14.380
在这里｡ 

03:14.380 --> 03:22.000
我们按下回车键, 现在我们输入max函数的参数, 我提醒你,

03:22.000 --> 03:25.270
这些参数是你想要创建概率分布的元素｡

03:25.270 --> 03:31.510
这当然就是Q值, 这是神经网络的输出, 这是神经网络的输出,

03:31.510 --> 03:35.770
你要为它创建概率分布｡

03:35.770 --> 03:41.200
我想提醒大家, 我们要创建这种概率分布, 以便能够探索不同的行为,

03:41.200 --> 03:45.730
而不是直接选择Q值最大的行为｡

03:45.730 --> 03:51.100
如果我们直接选择具有最大Q值的一个, 在那里我们没有探索太多的其他行为, 我们可能会错过一些东西,

03:51.100 --> 03:57.220
但是使用自我最大化方法, 我们可以做更多的探索, 因此可能会在模式中找到一些隐藏的解决方案,

03:57.220 --> 04:01.330
可能会更好｡

04:01.600 --> 04:07.720
再次强调, 我强烈建议使用self max, 因此现在我们要做的是输入Q值｡ 

04:07.720 --> 04:11.140
这是我们大脑的输出｡ 

04:11.140 --> 04:13.720
输出, 我们开始｡ 

04:13.720 --> 04:21.520
但是我们有这个温度参数, 我们可以使用它来配置, 以自定义探索｡ 

04:21.520 --> 04:27.190
请记住, 我们设置的温度越高,

04:27.190 --> 04:32.860
我们对其他行动的探索就越少, 因为最佳行动将以更高的概率被选择,

04:32.860 --> 04:35.740
而其他行动将以更低的概率被选择｡

04:35.740 --> 04:44.770
这与自动驾驶汽车完全一样, 因此我们必须将输出乘以温度参数自占空比｡

04:45.560 --> 04:46.310
我们走吧｡ 

04:47.140 --> 04:47.770
好极了｡ 

04:47.800 --> 04:53.050
现在我们得到了一个小警告, 因为我们还没有使用道具, 但我们现在就要使用它｡ 

04:53.050 --> 04:55.330
这就引出了我们接下来要做的事情｡ 

04:55.360 --> 04:57.640
我们要如何使用这些概率呢？

04:57.670 --> 05:03.460
我们将从这个概率分布中抽取最后一个行动.

05:03.460 --> 05:11.950
因此, 我们现在要做的就是使用多重正态函数, 根据这个概率分布, 对动作进行抽样｡

05:12.070 --> 05:14.710
现在我们可以开始行动了｡ 

05:14.950 --> 05:21.250
所以我在这里创造了一个新的变量, 因为它将成为我们眼睛的动作｡

05:21.280 --> 05:31.480
现在我们用概率的分布, 加上点的道具, 然后是多数字法｡

05:32.050 --> 05:32.680
好吧, 我会的

05:32.680 --> 05:34.870
现在我们开始最后的行动｡ 

05:34.870 --> 05:37.810
他们是从我们的道具分发中取样的｡ 

05:38.200 --> 05:39.400
好的, 很好｡ 

05:39.400 --> 05:42.220
所以现在我们准备归还我们想要的东西｡ 

05:42.220 --> 05:44.360
那就是要玩的动作｡ 

05:44.380 --> 05:46.870
当然, 这些都是行动｡ 

05:46.870 --> 05:48.580
现在警告应该消失了｡ 

05:48.580 --> 05:50.220
我们想用什么就用什么｡ 

05:50.230 --> 05:51.070
我们走吧｡ 

05:51.100 --> 05:51.900
好极了｡ 

05:51.910 --> 05:53.860
现在, 转发功能已经就绪｡ 

05:53.860 --> 05:55.630
恭喜你｡ 

05:55.630 --> 05:57.240
身体也准备好了｡ 

05:57.250 --> 05:58.960
现在我们有了大脑｡ 

05:58.960 --> 06:05.200
我们有我们的身体, 因此, 我们准备把它们组合起来, 使未来成为我们的未来｡ 

06:05.200 --> 06:08.740
我将只由一个大脑和一个身体组成｡ 

06:08.740 --> 06:16.390
所以它会有智慧和身体来进行动作, 这将是正确的动作, 因为它的智慧｡

06:16.390 --> 06:22.030
但请记住, 在我们必须训练它的智能之前, 这也是我们在第二部分要做的,

06:22.030 --> 06:24.400
用深度卷积学习来训练人工智能｡

06:25.030 --> 06:28.300
好的, 让我们在下一个教程中制作人工智能｡ 

06:28.300 --> 06:31.690
我想这也是一个两个函数的类｡ 

06:31.690 --> 06:34.390
所以这需要我们两三个教程｡ 

06:34.390 --> 06:35.520
所以我等不及了｡ 

06:35.530 --> 06:36.640
这将是令人兴奋的｡ 

06:36.640 --> 06:37.840
在那之前, 好好享受吧｡ 

06:37.840 --> 06:38.380
一､ 
