神经网络训练过程概述

一、神经网络训练过程

  • 前向传播,计算损失
  • 反向传播,更新参数
  • 循环往复,损失最小

模型训练的过程,就是通过SGD、Adam等优化算法指导模型进行参数更新的过程

二、前向传播

  前向传播(forward propagation)的过程就是按照从输入到输出的顺序,计算存储神经网络中每一层的结果,即中间变量。

在这里插入图片描述

网络结构与前向计算图

三、反向传播

  反向传播(Backward Propagation)的过程就是按照从输出到输入的顺序,依次计算和存储神经网络的中间变量和参数的梯度,原理是链式法则。

  反向传播过程中会重复利用前向传播中存储的中间值,以避免重复计算。因此,需要保留前向传播过程中的中间结果,这会导致模型训练比模型预测需要更多的内存(显存)

四、梯度下降

  沿梯度下降的方向更新权重和偏置的值,沿梯度方向会增加损失函数的值,学习率为 η η η

在这里插入图片描述

  学习率不能太大也不能太小,否则会出现下图所示情况:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/python_plus/article/details/130715981