MNIST for ML Beginners教程错误

时间:2016-08-15 18:52:47

标签: tensorflow

MNIST for LM Beginners教程中,我认为有一个错误。我认为这部分不准确:

  

使用小批量的随机数据称为随机训练 - 在这种情况下,是随机梯度下降。

随机梯度下降用于更新每个训练样例的参数(http://sebastianruder.com/optimizing-gradient-descent/index.html#gradientdescentvariants),在教程中使用大小为100的批次,我相信这将是小批量梯度下降。

我可能错了,但不应该改变吗?

1 个答案:

答案 0 :(得分:0)

确实,随机梯度下降(SGD)被称为维基百科上的单个数据样本(https://en.wikipedia.org/wiki/Stochastic_gradient_descent)和Sebastian Ruder的调查中的梯度下降。然而,在机器学习者中也很受欢迎,也使用术语进行小批量梯度下降。

当使用随机梯度下降时,您假设梯度可以使用单个数据样本通过梯度合理地近似,这可能是相当重的假设,这取决于数据的波动。如果您使用小批量的小批量梯度下降(对于某些问题,100可能是小批量),您仍然依赖于单个批次,尽管这种依赖性通常小于单个样本(因为您有这里至少有一点平均值)。

因此,梯度本身(或更新规则,如果您更喜欢这种观点)是随机变量,因为它围绕完整数据集的平均值波动。因此,许多人使用小批量梯度下降和随机梯度下降作为同义词。