为什么“梯度下降法的神经网络容易收敛到局部最优”是个错觉--笔记

论坛 期权论坛     
选择匿名的用户   2021-5-23 01:20   0   0
<p> </p>
<h1>一、 我们可能从来没有找到过“局部最优”,更别说全局最优了。</h1>
<p>作者:五楼whearer<br> 链接:https://www.zhihu.com/question/68109802/answer/262143638</p>
<p>深度神经网络“容易收敛到局部最优”,很可能是一种想象,实际情况是,我们可能从来没有找到过“局部最优”,更别说全局最优了。</p>
<p>很多人都有一种看法,就是“局部最优是神经网络优化的主要难点”。这来源于一维优化问题的直观想象。在单变量的情形下,优化问题最直观的困难就是有很多局部极值,如</p>
<p><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-85d43b02fc79787b2e3c6290ed9362ac" width="480"></p>
<p>人们直观的想象,高维的时候这样的局部极值会更多,指数级的增加,于是优化到全局最优就更难了。然而单变量到多变量一个重要差异是,单变量的时候,Hessian矩阵只有一个特征值,于是无论这个特征值的符号正负,一个临界点都是局部极值。但是在多变量的时候,Hessian有多个不同的特征值,这时候各个特征值就可能会有更复杂的分布,如有正有负的不定型和有多个退化特征值(零特征值)的半定型</p>
<p><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-dc7ebadad14bfde123a4998854acaab2" width="487"></p>
<p> </p>
<p>在后两种情况下,是很难找到局部极值的,更别说全局最优了。</p>
<p> </p>
<p>前面很多回答说了,现在看来神经网络的训练的困难主要是<strong>鞍点的问题</strong>。在实际中,我们很可能也从来没有真的遇到过局部极值。Bengio组这篇文章<a href="https://link.zhihu.com/?target&#61;https%3A//arxiv.org/abs/1611.07476">Eigenvalues of the Hessian in Deep Learning</a>里面的实验研究给出以下的结论:</p>
<blockquote>
  Training stops at a point that has a small gradient. The norm of the gradient is not zero, therefore it does not, technically speaking, converge to a critical point.
<br>  There are still negative eigenvalues even when they are small in magnitude.
</blockquote>
<p> </p>
<p>另一方面,一个好消息是,<strong>即使有局部极值,具有较差的loss的局部极值的吸引域也是很小</strong>的<a href="https://link.zhihu.com/?target&#61;https%3A//arxiv.org/abs/1706.10239">Towards Understanding Generalization of Deep Learning: Perspective of Loss Landscapes</a>。</p>
<blockquote>
For the landscape of loss function for deep networks, the volume of basin of attraction of good minima dominates over that of poor minima, which guarantees optimization methods with random initialization to converge to good minima.
</blockquote>
<p>所以,<strong>很可能我们实际上是在“什么也没找到”的情况下就停止了训练,然后拿到测试集上试试,“咦,效果还不错</strong>”。</p>
<p> </p>
<p>补充说明,这些都是<strong>实验研究结果</strong>。<strong>理论</strong>方面,<strong>在各种假设下,深度神经网络的Landscape 的鞍点数目指数增加,而具有较差loss的局部极值非常少。</strong></p>
<p><strong>SGD收敛性</strong>的很多结论都是经验性的。在loss function landscape是退化的情况下<strong>loss 停滞在某个数值上训练不动的</strong>原因,很大程度上不是因为停在某个点不动了,是<strong>停在某个区域不动了</strong>。over-parameterized的神经网络有大片的平坦区域,这里一阶二阶乃至更高阶都是退化的,甚至有实验说这样的区域时dominant的(虽然我觉得那个结论有点大)。这时候可以说反复迭代也没啥改进,但是这反过来说算法无需太多迭代就能找到这样一个平坦区域,这里loss 和其中的local minima (可能也是退化的)相差不大,是不是真的找到local minima也没那么重要了。</p>
<p> </p>
<p>相关的回答:</p>
<p><a href="https://www.zhihu.com/question/53218358/answer/138894281?group_id&#61;915582584831213568">神经网络的训练可以采用二阶优化方法吗(如Newton, Quasi Newton)?</a></p>
<p> </p>
<h1>二、真的结束于最优点吗?</h1>
<p><br> 链接:https://www.zhihu.com/question/68109802/answer/263503269<br>  </p>
<p>我们知道,在局部最优点附近,各个维度的导数都接近0,而我们训练模型最常用的梯度下降法又是基于导数与步长的乘积去更新模型参数的,因此一旦陷入了局部最优点,就像掉进了一口井,你是无法直着跳出去的,你只有连续不间断的依托四周的井壁努力向上爬才有可能爬出去。更何况梯度下降法的每一步对梯度正确的估计都在试图让你坠入井底,因此势必要对梯度“估计错很多次”才可能侥幸逃出去。那么从数学上看,什么才是局部最优点呢?</p>
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP