论文整理 Noisy Natural Gradientas Va
1. Fisher Information Matrix (费雪信息矩阵)
假设某概率似然分布,我们对参数求最大似然估计,定义score function(得分函数)如下:
定理: score function对似然分布求期望为0.
证明:
为了评估score function,定义Fisher Information Matrix为score function协方差矩阵的期望:
实际中我们通过多次采样平均的方法获得其估计值:
定理:Fisher Information Matrix 是和的KL距离在这一点上的Hessian矩阵。
证明:
对求一阶和二阶导数:
在这一点上的Hessian矩阵:
【注:Hessian矩阵被定义为实值函数的所有二阶偏导数组成的方块矩阵,】
2. Natrual Gradient Desent (自然梯度下降)
对于任意损失函数,在取值时其梯度最优方向为:
定理:当时,KL散度的二阶泰勒展开为
证明:将简写为,
第一项等于0,第二项由上面的定理可知等于0。只剩下第三项。
由该定理,我们得到最优的梯度下降向量d:
其中为常数。把KL设为常数,意思是下降速率恒定不变,而不考虑空间曲率的影响。
用Lagrangian form(拉格朗日法)展开上述优化问题:
我们让其对d求导等于0:
如果把吸收到学习率中,那么最优的梯度下降向量等于Fisher矩阵的逆乘以损失的梯度。
定义:Natural Gradient(自然梯度)定义为
3.高斯分布的梯度估计
在变分推断中,贝叶斯网络的损失常常被设定为,即后验概率的估计值引发的损失:
其中,表示训练数据。
我们令参数集合分别代表高斯分布的均值和方差,那么其高斯分布的梯度估计为:
其中表示神经网络的权值矩阵。
这个数学技巧叫做“reprameterization trick(重参数化)”。应用该技巧,我们得到下面的方法。
4. Noisy Natrual Gradient (带噪自然梯度)
这里的,表示自然梯度,。
为了计算上面的式子,对于神经网络的某层考察,设输入为,权重矩阵,输出为,忽略偏置项,即。设任意向量,记
,记,于是。
该层的Fisher information matrix
这里有个有趣的观察,从,我们得到不动点:
如果,则,这和Newton-Raphson更新是一致的。【即牛顿法,】
简单起见,我们选取为先验,得到和。每次迭代,我们随机选择数据,采样 ,
其中和是学习率。
进一步简化更新规则,