目前为止,我们已经考察了各种计算Hessian矩阵或逆矩阵的近似方法。对于一个任意的前馈拓扑结构的网络,Hessian矩阵也可以使用反向传播算法计算一阶导数的推广来精确的计算。这同时也保留了计算一阶导数的方法的许多良好的性质,包括计算效率(Bishop, 1991; Bishop, 1992)。这种方法可以应用于任何表示网络输出的的可微的误差函数,及任何具有可微的激活函数的神经网络。计算Hessian矩阵的复杂度为。类似的算法也可以参考Buntine and Weigend(1993)。

这里我们考虑具有两层权值(待求的方程很容易推导)的网络。我们将使用下标表示输入,用下标表示隐藏单元,用下标表示输出。首先定义

其中表示数据点对误差的贡献。这个网络的Hessian矩阵可以被看成三个独立的项:

  1. 两个权值都在第二层

  2. 两个权值都在第一层

  3. 权值分别在两层

这里是单位矩阵的第个元素。如果权值中的一个或两个是偏置项,那么只需将激活设为1就可以得到对应的表达式。很容易将这个结果推广到网络包含跨层连接的情形。

results matching ""

    No results matching ""