大家好, 欢迎学习本教程｡
现在, 代理已经完成了它的探索, 接下来他要做的是更新共享网络｡
所以我们要做的第一件事就是初始化累积奖励｡
我们把它叫做大写的R, 我们把它初始化为火炬张量｡
但是它会有一个接一个的维度, 因为它只是一个值｡
但我们希望它是张量｡
所以我在这里用了点0和一｡
所以基本上, 累积奖励初始化为0, 如果我们还没有完成, 也是一样的｡
如果游戏还没有结束的话｡
我们现在想要的是, 累积奖励等于共享网络最后一次达到的价值｡
我们得到的是价值输出, 我们模型的V函数输出的值, 这是我们给予累积奖励的值｡
我们先得到这个值｡
我们可以这样得到它的值, 因为我们只需要在这里加上一个值, 加下划线,
然后再加下划线, 然后我们得到我们的模型, 因为它会输出这个值, 但只是模型的第一个输出｡
感谢这里和这里的双下划线, 我们可以复制粘贴这里的内容｡
这是具有输入､ 图像和所有隐藏状态和单元状态的模型的输入｡
我把它贴上去, 就可以得到值了｡
现在我们要做的就是把这个值赋给｡
所以一切将等于价值和能够获得的价值｡
我们在这里添加这些数据｡
好吧, 我会的
现在if条件已经完成了, 接下来我们要做的是,
因为我们刚刚得到了一个新值, 通过得到模型的输出, 模型的第一个输出, 我们把这个新值附加到值列表中.
因此, 我们可以直接获取值列表, 然后点追加并输入变量｡
啊, 因为我们的这最后一个价值包含得如此之大, 以致于被完成了｡
现在, 我们将初始化损失, 并记住直觉讲座｡
你有两个损失｡
你有保单的损失｡
那是最后一个与预言有关的代理人｡
然后是价值的损失, 这是与批评者的预测相关的损失｡
所以我们要引入这两个变量, 并将它们初始化为零｡
因此, 我先取保单变量保单损失, 将其初始化为零, 然后取值损失,
值损失和相同, 将其初始化为零｡
我们不要忘了把累积奖励设为火炬变量因为我们需要把它设为总变量因为我们要计算它的梯度, 因为累积奖励是价值损失的一个项.
因此, 通过这个变量, 它现在被附加到带有梯度的动态图上｡
最后, 在开始大训练循环之前,
我们需要做的最后一件事是,
当我们在这种意义上应用随机网格来减少预测和目标之间的损失时, 我们需要将初始化为广义优势估计, 而不是自动编码｡
小心点｡
我们现在要初始化的变量是广义优势估计｡
因此, 作为提醒, 广义优势估计的定义是,
通过观察状态来进行行动A的优势｡
所以它是动作的函数｡
答：还有国家｡
它等于Q值q a s和V函数的值之差｡
所以我可以写在这里｡
广义优势估计是动作和状态s的函数a, 它等于动作的Q值｡
答：还有国家｡
S减去应用于该状态的V函数的值｡
这是广义优势估计, 这就是我们现在要初始化的｡
我们将它初始化为零｡
但必须是个火炬舞者｡
所以我们要用和刚才一样的技巧｡
我们将使用火炬库, 并应用零的函数, 将其设置为只有一个值的张量, 也就是零｡
我们将引入一个新的变量, G, 它将等于手电筒, 当初始化为0时｡
因此, 它将被初始化为零｡
从而决定了动作的Q值｡
A并且状态将等于状态的V函数的值｡
好吧, 我会的
现在我们准备开始for循环｡
所以我们要在这里进行一些冒险｡
所以, 好好休息一下, 我会在下一个教程中看到你来解决这个问题｡
在那之前, 好好享受吧｡
一､