在训练过程中使用随机梯度下降,但没有解释它为什么起作用。为了澄清这一点,将继续更详细地说明随机梯度下降(stochastic gradient descent)。
%matplotlib inline
import math
from mxnet import np, npx
from d2l import mxnet as d2l
npx.set_np()
随机梯度更新
在深度学习中,目标函数通常是训练数据集中每个样本的损失函数的平均值。给定个样本的训练数据集,我们假设是关于索引的训练样本的损失函数,其中是参数向量。然后我们得到目标函数
的目标函数的梯度计算为
如果使用梯度下降法,则每个自变量迭代的计算代价为,它随线性增长。因此,当训练数据集较大时,每次迭代的梯度下降计算代价将较高。