理解“几乎所有局部最小值都具有与全局最优值非常相似的函数值”
最近的一篇论文The Loss Surfaces of Multilayer Networks对此提供了一些可能的解释。从他们的摘要(粗体是我的):
“我们推测模拟退火和 SGD 都收敛到低临界点带,并且所有发现的临界点都存在由测试误差测量的高质量局部最小值。这强调了大型和小型网络之间的主要区别对于后一种质量较差的局部最小值,恢复的概率不为零。 最后,我们证明随着网络规模的增加,恢复全局最小值变得更加困难,并且在实践中它是无关紧要的,因为全局最小值通常会导致过度拟合。
深度学习领域的许多有影响力的人(Yann LeCunn 和 Yoshua Bengio 仅举几例)和一些更多来自数学角度的研究人员(Gong Ge 和其他 Sanjeev Arora 合作者)一直在讨论和探索这些想法。
在上述参考论文中,参见图 3,该图显示了局部最小值的条带/集中现象,因为网络具有更多隐藏单元。条带/浓度代表了一些经验证据,即对于更深或更大的模型,局部最小值“足够好”,因为它们的损失值大致相似。最重要的是,随着模型变得更复杂(在这种情况下更广泛,但实际上更深),它们的损失更接近全局最小值。
此外,他们使用自旋玻璃模型,他们甚至表示这只是一个模型,不一定表示真实情况,以表明从局部最小值到达全局最小值可能需要指数级的时间:
“为了找到一个更低的最小值,我们必须通过一个鞍点。因此,我们必须至少上升到有相同数量的鞍点的水平,以便有机会找到可能采取的路径我们到另一个局部最小值。这个过程需要很长的时间,所以在实践中找到全局最小值是不可行的。
荣格的研究围绕着突破鞍点展开。Yoshua Bengio 和他的合作者提出了一个非常大胆的鞍点假设:
在这里,我们基于统计物理学、随机矩阵理论、神经网络理论和经验证据的结果认为,更深层次的困难源于鞍点的扩散,而不是局部最小值,尤其是在实际感兴趣的高维问题中. 这样的鞍点被高误差平台所包围,这会显着减慢学习速度,并给人一种存在局部最小值的错觉。
在某种程度上,上述两种方法并不完全相同(鞍点假设可能会质疑什么是真正的局部最小值,什么仅仅是一个条件很差的鞍点,具有很长的高原区域?)。鞍点假设背后的想法是,可以设计优化方法来突破鞍点,例如 Bengio 文章中的无鞍牛顿,以潜在地加速收敛,甚至可能达到全局最优。第一篇 Multilayer Loss Surface 文章并不真正关心达到全局最优,实际上认为它具有一些不良的过拟合特性。奇怪的是,这两篇文章都使用了来自统计物理学和自旋玻璃模型的想法。
但它们有点相关,因为两篇文章都认为,为了达到全局最小化,必须克服鞍点的优化挑战。第一篇文章只是认为局部最小值就足够了。
想知道动量方法和其他新的优化算法是否可以估计一些二阶曲率属性可以逃脱鞍点是公平的。亚历克雷德福的著名动画在这里。
回答你的问题:“这种信念来自哪里”我个人认为这是因为可以使用不同的随机种子来学习不同的权重,但相应的网络具有相似的定量性能。例如,如果您为 Glorot 权重初始化设置两个不同的随机种子,您可能会学习到不同的权重,但如果您使用相似的优化方法进行训练,网络将具有相似的性能。一个常见的民间传说是优化景观类似于鸡蛋盒,另一个很好的博客文章在这里:没有更多的局部最小值?用鸡蛋盒类比。
编辑:我只是想清楚鸡蛋盒的类比是不正确的,否则就不需要动量或其他更高级的优化技术。但众所周知,SGD 的性能不如 SGD+Momentum 或更现代的优化算法,这可能是由于鞍点的存在。