大家好, 欢迎学习本教程｡
好吧, 我会的
我们将从模型的第一个文件开始, 也是基于PI建模的最重要的文件｡
在这个文件中, 我们将实现整个模型的大脑, 你知道,
大脑是a3c模型的核心｡
在这个文件中, 我们将创建神经网络, 其中当然会包含一些卷积神经网络,
因为当然, 我们还在做一些深度强化学习｡
所以我们的人工智能还有眼睛｡
在这个神经网络中, 我们将整合所有与主动批评模型相关的东西｡
而且还有奖金｡
正如我告诉你的, 我们正在实现三个最强大的C模型之一｡
它的强大之处在于它包含了神经网络的记录,
更准确地说是长期的, 长期的短期记忆, 这样我们就可以了解游戏中发生的事情的时间属性｡
这实际上是输入的时间属性, 这样预测就可以更好｡
好了, 我们走吧｡
我们正在实现一个非常强大的模型, 它基本上结合了我们在深度学习课程中看到的所有神经网络｡
即人工神经网络､ 卷积神经网络和递归神经网络｡
在所有这些网络的核心, 当然有一个a3c模型, 它将使人工智能变得非常强大｡
所以我们开始吧｡
让我们攻击这个模型并实现它｡
所以我们要从两个函数开始, 这两个函数负责初始化权重, 因为我们有一些神经网络,
所以我们有权重｡
我们只想先做这两个函数这样我们就有了一个工具可以很容易地集成到整个模型中, 神经网络｡
所以这两个函数将被规范化列初始化｡
这基本上是一个函数, 它不仅可以初始化一些权重, 而且可以设置权重张量的特定方差｡
这正是我们现在要实现的｡
然后, 我们将实现第二个函数, 它将是IT函数中的权重,
它将以最佳的方式初始化权重, 以便于学习｡
好吧, 我会的
一旦我们完成了这两个函数, 我们将开始实现神经网络｡
那就开始吧｡
让我们快速地创建这两个函数｡
所以我从def开始｡
然后我会给予这个函数的名字, 这个函数是标准化的｡
下划线列, 下划线, 初始化它｡
我们走吧｡
这个函数只需要两个输入｡
首先是我们要初始化的权重和标准差, 因为正如我刚才所说,
我们要为张量权重设置一个特定的方差｡
如果你想知道我们为什么要这么做, 那是因为, 当我们制作神经网络的时候,
根据3C模型, 会有演员和评论家, 我们会制作两个独立的, 完全连接的层,
一个给演员, 一个给评论家｡
这两个完全相连的层都有权值, 我们将为这两组权值中的每一组设置一个标准差｡
所以我们要做的就是为参与者设定一个小的标准差｡
大约在0左右｡ 01和一个很大的标准差的评论家, 这将是大约一, 我想｡
这就是为什么我们要做这个函数, 这样我们就可以很容易地设置标准差,
我们稍后会初始化演员和评论家的权重｡
所以我们才这么做｡
现在我们只需要设置一个默认值, 但在初始化权重时, 这个值会发生变化｡
所以让我们选择1｡ 0.
好吧, 我会的
现在我们准备定义这个函数里面的内容了｡
我们首先要准备的是我们要调用的输出｡
所以这个out变量就是这个函数返回的结果｡
首先, 我们要做的是初始化它｡
正如你们所理解的, 这个输出将是一个权重张量, 它将有一个特定的标准差｡
但是在我们设置标准差之前, 我们只需要初始化它, 然后我们在这里设置标准差,
它是这个函数的输入参数｡
因此, 在初始化其敏感权重时, 您可能知道如何进行｡
我们已经做过了｡
我们将使用我们的火炬库, 并从存储库中取兰德M函数, 该函数将初始化火炬张量,
其随机权重遵循正态分布｡
所以这就是为什么它被称为运行西北和正常｡
所以现在我们只需要输入这个张量包含的元素个数｡
这个元素的数量当然就是权重的数量, 因为我们实际上是在为这些权重初始化张量｡
为了得到这个元素的数量, 我们可以简单地取权重｡
并加上点以得到带括号的大小｡
这将给予权重中元素的数量, 这样它将创建一个火炬张量, 所有权重中元素的数量都相同,
并且它将被初始化为服从正态分布的随机权重｡
好吧, 我会的
现在是时候设定我们想要的标准差了｡
这是这里的标准差｡
所以我们现在要做的是一个简单的标准化｡
我们有一个权重的火炬张量, 现在我们想把它归一化｡
为了规范化它, 我们只需要写显式计算｡
所以我们现在要做的就是把我们的输出, 乘以标准差,
然后再除以我刚才提到的和.
为了得到这个和, 我们要用火炬函数的平方根｡
这就是我在这里得到的, 偏态或DT, 这是平方根函数｡
在里面我们要输入平方根, 向量的一些权值｡
所以我们得到输出, 然后我们使用幂函数, 我们输入, 因为我们想得到和的平方｡
然后我们取和｡
在里面, 我们要指定列的索引, 该列包含要求和的权重｡
然后分别得到这些权重, 因为我们想把它们加起来｡
我们使用乐谱上的扩展作为输出的函数｡
好吧, 我会的
这将得到alt的权重, 到目前为止, 它被初始化为一个触摸敏感权重｡
这样就得到了所有的权重｡
我们取平方和, 然后取平方根, 进行归一化｡
事实上, 我们在分子上有这个标准差, 这就确保了它可以写在这里｡
alt的方差将等于标准差的平方｡
这个公式可以保证, 我们初始化的权重张量的方差,
等于我们输入的标准差的平方｡
这就是我们如何为未来的演员和评论家设定一个具体的标准差, 我们很快就会做出｡
我们会为演员选择一个小的标准差, 为评论家选择一个大的标准差｡
我们将非常容易地做到这一点感谢这个函数｡
好吧, 我会的
所以现在我们只有一件事要做｡
当然, 留下它是为了返回现在用这个特定标准差归一化的输出｡
好吧, 我会的
太完美了｡
这是我们要做的第一个函数｡
这是第一个我们很乐意用来制造a3c大脑的工具｡
我们现在还有一个功能要做｡
它是这个函数中的权重, 这个函数我会提醒你初始化权重, 使学习达到最优.
我们将在下一个教程中进行此操作｡
在那之前, 好好享受吧｡
一､