Raul Rojas 的神经网络系统介绍,第 8.1.2 节将离线反向传播和在线反向传播与 Gauss-Jacobi 和 Gauss-Seidel 方法联系起来,以找到两条线的交点。
我无法理解的是在线反向传播的迭代如何垂直于(当前)约束。更具体地说,如何的梯度,, 垂直于约束?
Raul Rojas 的神经网络系统介绍,第 8.1.2 节将离线反向传播和在线反向传播与 Gauss-Jacobi 和 Gauss-Seidel 方法联系起来,以找到两条线的交点。
我无法理解的是在线反向传播的迭代如何垂直于(当前)约束。更具体地说,如何的梯度,, 垂直于约束?
Theo Bandit 在 maths stackexchange 上的回答
如果选择两点沿着这条线,那么
也就是方向垂直于沿线的任何向量,即是正常的线。
方程被称为(假设是连续的,这在分类器的情况下不是这样)。如果你在物理或数学中写下这个方程,它代表 4D 曲线族(曲线是连续的,但为了可视化,我们假设它是曲线族)。
这是一个有代表性的方程式,如果错误是3D 曲线。
这是一个标量,表示不同位置的误差值对于不同的值和. 现在标量的梯度定义为, 在哪里是一个标量,在做这个操作时你会得到一个向量,它垂直于等势或更合适的等误差表面,即如果你追踪所有给出相同误差的点,你会得到一条曲线,它的任何点的梯度是垂直于该给定点的曲线的向量。这有很多证明,但这里有一个非常简单且很好的证明。
现在让我们看看约束方程. 在 3D 误差曲线的情况下,约束为我们提供了一个平面,该平面与给定点处的等误差曲面的切平面平行。您可以查看如何找到切平面并自己推导出平面的这种方法,其中和和是你的和.
因此很明显,梯度将垂直于约束,这就是我们使用梯度的原因,因为根据数学,如果您沿垂直于等势面的方向移动,您将获得比任何其他方向的最大变化相同的移动。
我强烈建议您查看可汗学院的渐变视频。这有望让您更直观地了解我们为什么要在神经网络中做这些事情。