详解神经网络中反向传播和梯度下降

时间:2021-04-28 00:45:41
摘要:反向传播指的是计算神经网络参数梯度的方法。

本文分享自华为云社区《反向传播与梯度下降详解》,作者:嵌入式视觉 。

一,前向传播与反向传播

1.1,神经网络训练过程

神经网络训练过程是:

  1. 先通过随机参数“猜“一个结果(模型前向传播过程),这里称为预测结果 a
  2. 然后计算 a 与样本标签值 y 的差距(即损失函数的计算过程);
  3. 随后通过反向传播算法更新神经元参数,使用新的参数再试一次,这一次就不是“猜”了,而是有依据地向正确的方向靠近,毕竟参数的调整是有策略的(基于梯度下降策略)。

以上步骤如此反复多次,一直到预测结果和真实结果之间相差无几,亦即 ∣a−y∣→0,则训练结束。

1.2,前向传播

前向传播(forward propagation 或 forward pass)指的是: 按顺序(从输入层到输出层)计算和存储神经网络中每层的结果。

为了更深入理解前向传播的计算过程,我们可以根据网络结构绘制网络的前向传播计算图。下图是简单网络与对应的计算图示例:

详解神经网络中反向传播和梯度下降