我做了一些触及和计算,如果我理解正确,随机梯度下降 - "亚当优化"基本上是普通的梯度下降,其中一个特定的是它用训练数据集选择较小比例的随机数据,以避免NN陷入间隙,这可能不一定反映下降函数的最小值?谢谢
答案 0 :(得分:0)
Stochastic Gradient Descent
通常与Batch Gradient Descent
并列。
在批量模式下,要更新输入要素向量 X 的每个要素系数,您需要对 ALL 的总结进行总结训练数据集,
来源:http://cs229.stanford.edu/notes/cs229-notes1.pdf
Repeat until convergence
{
θj := θj + α * summation(i=1 to m) ( y - h(x) ) x_j --> for every j
}
这里重要的是对所有记录的总和都是针对每个特征完成的,所以如果你有5000个特征/属性/列的数据,那么你每次运行的总和就是5000次。
相反,如果你看随机,
Loop
{
for i=1 to m, {
θj := θj + α( y(i) − h(x(i)) x(i) j (for every j).
}
}
基本上,对于每个j,只考虑X的特定特征或值。 这让它很快。 可能的是,它可能没有与批次相同的最小值,或者可能无法实现全局最小值,但在实践中它确实可以更好地工作。