神经网络的学习分成下面4个步骤:
- mini-batch
从训练数据中随机选出一部分数据,这部分数据称为mini-batch。目标是减小mini-batch的损失函数的值。 - 计算梯度
求损失函数关于各个权重参数的梯度。 - 更新参数
将权重参数沿梯度方向进行微小更新。 - 重复
重复步骤1、2、3
由于数据是随机选择的minibatch,所以这里的梯度下降法又称为“随机梯度下降法”(stochastic gradient descent),很多深度学习的框架中,随机梯度下降法一般由一个名为SGD(首字母缩写)的函数来实现。
epoch:是一个单位,代表学习中所有训练数据都被使用过一次时的更新次数。