网络结构

AC 结构,一个策略网络,一个 V 价值评估网络

价值评估网络使用 TD 目标价值作为目标来学习

策略网络更新,需要满足 KL 散度限制和学习 采用共轭梯度来方法来搜索最优的参数更新方向,共轭梯度保证更新不会影响之前的学习,新的学习方向通过 ration 系数保证和之前的学习方向正交,不影响之前的学习方向,避免学习倒退

共轭梯度

正常找更新方向,可以把整个黑赛矩阵计算出来(多变量函数二阶导)找一个最优方向,但是这样对于一个神经网络来说计算量过大。因此需要一些技巧优化计算量

首先黑赛矩阵乘上一个变量,代表黑赛矩阵在这个向量方向上的投影,代表在这个方向上的曲率。二阶导数数很难算(复杂度 ),可以先计算一阶导数,一阶导数乘上这个向量,可以把黑赛矩阵维度降低变成标量,然后对标量再求导数,得到在这个方向上的二阶导。

通过这样的方式可以评估一个学习方向,再加上多次迭代优化这个初始方向,可以得到一个更优化的方向。这样可以通过计算有限次单个方向的曲率得到优化方向,而计算黑赛矩阵是把所有维度都计算。

线性搜索

得到方向之后,网络更新还需要步长(对应深度学习的学习率),因为需要满足 KL 散度限制,网络更新不能太大,我们要让网络参数更新步长在限制的范围里面学习的尽量大,所有会有一个最大的步长向量限制,可以通过公式计算出。对用 缩放的最大步长向量更新,找到合适的 i。这样得到更新后的网络参数,用新的网络参数来输出结果,比对输出的动作分布的 KL 散度,和策略评估结果,散度需要在限制范围内,评估值需要优于之前的旧网络。

这样可以更新网络为新的网络参数