Neural network 随机梯度下降基本上是普通梯度下降?

Neural network 随机梯度下降基本上是普通梯度下降?,neural-network,Neural Network,我做了一些延伸和计算,如果我理解正确,随机梯度下降——“Adam Optimizer”基本上是普通的梯度下降,有一个具体的例子,它选择了一个随机数据,与训练数据集的比例较小,以避免NN陷入差距,哪些可能不需要反映下降函数中的最小值?谢谢随机梯度下降通常与批量梯度下降并列。 在批处理模式下,要更新输入特征向量X的每个特征系数,需要对训练数据集的所有记录进行求和, 资料来源: 这里重要的一点是,对所有记录的求和是针对每个特性进行的,因此,如果您有5000个特性/属性/数据列,那么每次运行都要执行50

我做了一些延伸和计算,如果我理解正确,随机梯度下降——“Adam Optimizer”基本上是普通的梯度下降,有一个具体的例子,它选择了一个随机数据,与训练数据集的比例较小,以避免NN陷入差距,哪些可能不需要反映下降函数中的最小值?谢谢

随机梯度下降
通常与
批量梯度下降
并列。 在批处理模式下,要更新输入特征向量X的每个特征系数,需要对训练数据集的所有记录进行求和, 资料来源:

这里重要的一点是,对所有记录的求和是针对每个特性进行的,因此,如果您有5000个特性/属性/数据列,那么每次运行都要执行5000次求和

相反,如果你看随机的

本质上,对于每个j,只考虑X的特定特征或值。 这就快了。
缺点是,它可能没有与批处理相同的最小值,或者可能无法达到全局最小值,但在实践中,它确实更有效。

随机梯度下降
通常与
批处理梯度下降
并列。 在批处理模式下,要更新输入特征向量X的每个特征系数,需要对训练数据集的所有记录进行求和, 资料来源:

这里重要的一点是,对所有记录的求和是针对每个特性进行的,因此,如果您有5000个特性/属性/数据列,那么每次运行都要执行5000次求和

相反,如果你看随机的

本质上,对于每个j,只考虑X的特定特征或值。 这就快了。
缺点是,它可能没有与批处理相同的最小值,或者可能无法达到全局最小值,但在实践中,它的效果确实会更好。

维基百科是否没有介绍您的问题
避免NN陷入间隙
是使用此方法的最起码原因。不同的收敛特性和内存使用更为重要(从理论上讲,您的beeing-catch-in-gap还没有得到很好的理解,尽管对于一般的非凸损失收敛也是如此)。亚当也不是香草新元。这是一种尝试在某些假设(或多或少是某种过滤器)下改进收敛性的变体(如经典动量和co.)。谢谢Sascha。我没有考虑过内存的使用。正确。维基百科没有涵盖你的问题吗
避免NN陷入间隙
是使用此方法的最起码原因。不同的收敛特性和内存使用更为重要(从理论上讲,您的beeing-catch-in-gap还没有得到很好的理解,尽管对于一般的非凸损失收敛也是如此)。亚当也不是香草新元。这是一种尝试在某些假设(或多或少是某种过滤器)下改进收敛性的变体(如经典动量和co.)。谢谢Sascha。我没有考虑过内存的使用。对的
Repeat until convergence 
{
  θj := θj + α * summation(i=1 to m) ( y - h(x) ) x_j  --> for every j
}
Loop
{
    for i=1 to m, {
         θj := θj + α(  y(i) − h(x(i))  x(i) j (for every j).
    }
 }