梯度下降存在局部最小值问题。我们需要运行梯度下降指数时间来找到全局最小值。
谁能告诉我梯度下降的任何替代方案及其优缺点。
谢谢。
梯度下降存在局部最小值问题。我们需要运行梯度下降指数时间来找到全局最小值。
谁能告诉我梯度下降的任何替代方案及其优缺点。
谢谢。
与使用的方法相比,与最小化函数有关的问题更多,如果找到真正的全局最小值很重要,则使用模拟退火等方法。这将能够找到全局最小值,但这样做可能需要很长时间。
在神经网络的情况下,局部最小值不一定是个大问题。一些局部最小值是由于您可以通过置换隐藏层单元或否定网络的输入和输出权重等来获得功能相同的模型。此外,如果局部最小值只是略微非最优,那么性能上的差异将很小,因此并不重要。最后,这是很重要的一点,拟合神经网络的关键问题是过拟合,因此积极寻找成本函数的全局最小值可能会导致过拟合和模型表现不佳。
添加一个正则化项,例如权重衰减,可以帮助平滑成本函数,这可以稍微减少局部最小值的问题,无论如何我都会推荐它作为避免过度拟合的一种方法。
然而,在神经网络中避免局部最小值的最佳方法是使用高斯过程模型(或径向基函数神经网络),其局部最小值问题较少。
局部最小值是解空间的属性,而不是优化方法。这是一般神经网络的问题。凸方法(例如 SVM)之所以流行,主要是因为它。
已经证明,在高维空间中被困在局部最小值中的可能性很小,因为在每个维度上所有导数都为零是不太可能的。(来源 Andrew NG Coursera DeepLearning Specialization)这也解释了为什么梯度下降如此有效。
极限学习机本质上它们是一个神经网络,其中将输入连接到隐藏节点的权重是随机分配的,并且永远不会更新。通过使用矩阵求逆求解线性方程,一步即可学习隐藏节点和输出之间的权重。