0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么基于梯度的方法能够在深度学习的优化中行之有效

jmiy_worldofai 来源:cg 2018-12-24 09:41 次阅读

神经网络的优化本质上是一个非凸问题,而简单的基于梯度的算法在实践中似乎总是能够解决这类问题。这种现象是深度学习的核心支柱之一,而目前有许多理论科学家家正试图解开这个谜:为什么基于梯度的方法能够在深度学习的优化中行之有效。

一篇来自 offconvex.org博客的文章对最近一些试图解决这个问题的工作进行了综述,并且在最后讨论了作者本人与 Sanjeev Arora,Noah Golowich 以及 Wei Hu 等人一起撰写的新论文(https://arxiv.org/pdf/1810.02281.pdf)。在这篇论文中,他们针对深度线性神经网络中的梯度下降问题,提出了一种能够保证以线性速率收敛到全局最小值的方法。关于深度学习应用的论文多如牛毛,而关于基础工作原理的文章弥足珍贵。雷锋网 AI 科技评论全文编译如下。

函数图像曲面方法及其局限性

许多关于深度学习优化的论文都隐含着这样一种假设,即通过建立损失函数图像的曲面(landscape)的几何特性(特别是在临界点,也就是梯度开始消失的点),可以严谨地理解这种优化方法。例如,通过与凝聚态物理中的球形自旋玻璃模型进行类比,Choromanska等人在2015年提出了一个现已在深度学习领域广为人知的观点:

函数曲面猜想(Landscape Conjecture):

在神经网络优化问题中,次优临界点的 Hessian(二阶导矩阵)的特征值很可能存在负数。换而言之,几乎没有糟糕的局部最小值(让梯度下降算法误认为局部最小值是全局最小值的点),而且几乎所有的鞍点都是严格的。

该猜想的对于各种包括浅层(2 层)模型在内的简单问题的损失函数图像的曲面的强形式已经得到了证明,这样的问题包括矩阵感知(https://papers.nips.cc/paper/6271-global-optimality-of-local-search-for-low-rank-matrix-recovery.pdf )、矩阵补全(https://papers.nips.cc/paper/6048-matrix-completion-has-no-spurious-local-minimum.pdf )、正交张量分解(http://proceedings.mlr.press/v40/Ge15.pdf )、相位反演(https://arxiv.org/pdf/1602.06664.pdf )以及带二次激活的神经网络(http://proceedings.mlr.press/v80/du18a/du18a.pdf )等。目前已经有一些工作针对当函数曲面猜想成立时如何实现梯度下降收敛到全局最小值进行了一些研究。例如,Rong Ge(http://www.offconvex.org/2016/03/22/saddlepoints/ )、Ben Recht(http://www.offconvex.org/2016/03/24/saddles-again/ )、Chi Jin 和 Michael Jordan(http://www.offconvex.org/2017/07/19/saddle-efficiency/ )等人的博客中有一些在这类工作方面非常棒的介绍文章。他们介绍了梯度下降可以如何通过逃离所有严格的鞍点来达到二阶局部最小值(Hessian 为正半定的临界点),以及当将我们对算法添加扰动时这个过程将如何起作用。请注意,在函数曲面猜想下,即当没有糟糕的局部最小值、也没有非严格鞍点时,二阶局部最小值也就是全局最小值。

然而,出于很多原因,函数曲面方法(和函数曲面猜想)显然不能像这样被应用到深度(三层或更多层)的网络上。首先,深度网络通常会引入非严格鞍点(例如,在所有权重都为零的点,详情请参阅 Kawaguchi 等人在2016发表的论文「Deep Learning without Poor Local Minima」:https://papers.nips.cc/paper/6112-deep-learning-without-poor-local-minima.pdf )。其次,函数曲面方法的观点很大程度上忽视了算法层面上的因素,而在实践中算法层面的因素对深度网络的收敛有很大的影响——比如初始化方法的类型(http://proceedings.mlr.press/v28/sutskever13.html )或批量归一化(http://proceedings.mlr.press/v37/ioffe15.pdf )。最后,正如我在之前的文章(http://www.offconvex.org/2018/03/02/acceleration-overparameterization/ )中谈到的,基于 SanjeevArora和 Elad Hazan(http://proceedings.mlr.press/v80/arora18a/arora18a.pdf )的工作,为经典线性模型添加(冗余)线性层有时可以加速基于梯度的优化过程,这样做尽管会为之前的凸优化问题引入一定的非凸性,但是不会增强模型的表现能力。任何只依赖于临界点属性的函数曲面分析都难以解释这样的现象,因为通过这样的方法,没有什么比优化一个具有全局最小值的临界点的凸目标函数更简单的了。

另一种可能的解决方案?

函数曲面方法在分析深度学习中的优化问题时的局限性说明它可能忽略了太多重要的细节。也许,与其思考「函数曲面方法是否是一种优雅的方法?」不如把问题转向「由特定的初始化方法得到的特定优化器的轨迹有怎样的行为?」

尽管基于轨迹的方法似乎比函数曲面分析更加复杂,但是这种方法已经取得了显著的进展。最近的一些论文(如 Brutzkus and Globerson 2017(http://proceedings.mlr.press/v70/brutzkus17a/brutzkus17a.pdf );Li and Yuan 2017(https://papers.nips.cc/paper/6662-convergence-analysis-of-two-layer-neural-networks-with-relu-activation.pdf )、Zhong et al. 2017(http://proceedings.mlr.press/v70/zhong17a/zhong17a.pdf );Tian 2017(http://proceedings.mlr.press/v70/tian17a/tian17a.pdf );Brutzkus et al. 2018(https://openreview.net/pdf?id=rJ33wwxRb );Li et al. 2018(http://proceedings.mlr.press/v75/li18a/li18a.pdf );Du et al. 2018(https://arxiv.org/pdf/1806.00900.pdf );Liao et al. 2018(http://romaincouillet.hebfree.org/docs/conf/nips_GDD.pdf ))已经采用了这种策略,成功地分析了不同类型的浅层模型。此外,基于轨迹的分析也正开始涉足函数曲面方法之外的领域,他们已经针对线性神经网络的情况,成功地实现了在任意深度下使用梯度下降方法收敛到全局最小值。

针对深度线性神经网络的基于轨迹的分析

线性神经网络是带有(或不带有)线性激活函数的全连接神经网络。具体而言,一个输入维度为d0、输出维度为dN、隐层维度为 d1,d2,...,dN-1,深度为 N 的线性网络是一个从 Rd_0到 Rd_N的线性映射,它被参数化为

其中

可以被看作第j层的权值矩阵。尽管这样的表示方法看起来没有什么特别,但线性神经网络优化过程的复杂度却让人有些惊讶,它们会导致具有多个最小值和鞍点的非凸训练问题。用于线性神经网络的基于梯度的算法被人们认为是一种深度学习中的优化问题理论上的替代品,近一段时间,它们在线性神经网络上的应用受到了极大的关注。

据我所知,Saxe et al.2014(https://arxiv.org/pdf/1312.6120.pdf )的工作首次对深度(三层或更多层)的线性网络进行了基于轨迹的分析,在白化后的数据上处理最小化 L2 损失的梯度流(学习率极小的梯度下降)。尽管这个分析有很重要的贡献,但却并未正式实现收敛到全局最小值,也没有考虑计算复杂度方面的因素(收敛所需的迭代次数)。近期研究 Bartlett et al. 2018(http://proceedings.mlr.press/v80/bartlett18a.html )的研究在解决这些问题的工作上取得了进展,通过将基于轨迹的分析用于线性残差网络的特定环境的梯度下降,即在所有层中统一宽度(d0=d1=d2=...=dN)及初始化方式(对于任意的 j,有 Wj=I)的线性网络。考虑到不同的数据-标签分布(他们将其归纳为「targets」),Bartlett 等人展示了可证明的梯度下降以线性速率收敛到全局最小值的情况——损失函数值在经过O(log1/ε)次迭代后与最优值的差小于ε(大于 0)。

在本文作者与 Sanjeev Arora、Noah Golowich 以及 Wei Hu 合作撰写的一篇新论文(https://arxiv.org/pdf/1810.02281.pdf )中,我们在发挥基于轨迹的方法的功效方面又向前迈进了一步。具体而言,我们分析了任意不包含「瓶颈层」的线性神经网络梯度下降的轨迹,瓶颈层的隐藏维度不小于输入和输出维度之间的最小值(对于任意的 j,有 dj≥min{d0,dN});我们还证明了以线性速率到全局最小值的收敛性。我们指出了初始化方法需要满足下面两个条件:(1)近似平衡度:对于任意的 j,有 WTj+1Wj+1≈WjWjT;(2)缺失边界:初始损失小于任意秩缺亏缺解的损失。我们证明这两个条件都是必要条件,不满足其中任意一个都可能导致轨迹不收敛。在线性残差网络的特例中,初始化时的近似平衡度很容易满足,而且对于通过以零为中心的微小随机扰动进行初始化的常见设定也同样成立。后者也会导致出现具有正概率的缺失边界。对于 dN=1 的情况(即标量回归),我们提供了一个能同时满足这两个条件的随机初始化方案,因此能在恒定概率下以线性速率收敛到全局最小值。

我们的分析的关键在于观察「如果权重被初始化到了近似平衡的状态,它们是否会在梯度下降的整个迭代中一直这样保持」。换句话说,优化方法所采取的轨迹遵循下面的特性:

也就是说,在整个时间轴上,所有的层(近似地)都有相同的奇异值集合,每一层的左奇异向量(近似地)与下一层的右奇异向量相同。我们说明了这种规律性意味着梯度下降的稳定地运行下去,从而证明,即使在损失函数图像整体上来说十分复杂时(包括许多非严格鞍点),它可能在优化器所采取的特定轨迹周围表现得尤为良好。

结语

通过函数图像方法解决深度学习中优化问题,即分析与训练使用的算法无关的目标函数的几何性质,从概念上来说十分吸引人。但是这一策略存在固有的局限性,主要是因为它要求整个目标函数都要很优雅,这似乎是一个过于严格的要求。替代函数图像的一种方法是考虑优化器及其初始化方法,并且仅仅沿着所得到的轨迹关注其函数图像。这种替代方法正得到越来越多的关注。函数图像分析目前仅限于浅层(两层)模型,而基于轨迹的方法最近已经可以处理任意深度的模型,证明了梯度下降能以线性速率收敛到全局最小值。但是,由于基于轨迹的分析方法仅仅在线性神经网络上取得了成功,仍有还有很多工作有待完成。在我看来,基于轨迹的方法也将成为我们正式理解深度非线性网络的基于梯度的优化方法的关键。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4562

    浏览量

    98643
  • 深度学习
    +关注

    关注

    73

    文章

    5219

    浏览量

    119863

原文标题:分析梯度下降的轨迹,更好地理解深度学习中的优化问题

文章出处:【微信号:worldofai,微信公众号:worldofai】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    28035的解密广告已经遍布大街小巷,请问有没有什么当前能够行之有效的反解密方法

    本帖最后由 一只耳朵怪 于 2018-6-12 11:27 编辑 眼下28035的解密广告已经遍布大街小巷了,TI给的硬件加密形同虚设。。。请问有没有什么当前能够行之有效的反解密方法?想写个软件加密算法来的,但28035又
    发表于 06-11 00:46

    AI工程师 10 个深度学习方法

    ),那么算法总是能够找到最优点。进行最优化时,遇到这些特殊的地形(凸函数)自然是最好的。另外,山顶初始位置(即函数的初始值)不同,最终到达山底的路径也完全不同。同样,不同的流速(即梯度
    发表于 03-07 20:17

    深度学习汽车中的应用

    未来的某个时候,人们必定能够相对自如地运用人工智能,安全地驾车出行。这个时刻何时到来我无法预见;但我相信,彼时“智能”会显现出更“切实”的意义。与此同时,通过深度学习方法,人工智能的实际应用
    发表于 03-13 06:45

    几种常用的、行之有效的抗干扰技术是什么

    几种常用的、行之有效的抗干扰技术是什么
    发表于 06-08 06:20

    基于深度学习的异常检测的研究方法

    的研究方法进行了系统而全面的综述。此外,我们回顾了这些方法不同应用领域中的应用,并评估了它们的有效性。我们根据所采用的基本假设和方法,将最
    发表于 07-12 07:10

    基于深度学习的异常检测的研究方法

    ABSTRACT1.基于深度学习的异常检测的研究方法进行结构化和全面的概述2.回顾这些方法各个领域这个中的应用情况,并评估他们的
    发表于 07-12 06:36

    低功耗深度休眠后无法唤醒烧录程序的解决办法是什么?

    使用复位按键唤醒,碰运气烧录程序,未果,查找资料、联系华大代理,寻得以下行之有效方法。解决方法:华大半导体单片机资料包:仿真及编程工具中:CCID在线离线编程器、Cortex-M离线编程器和...
    发表于 12-06 07:06

    深度学习技术的开发与应用

    时间安排大纲具体内容实操案例三天关键点1.强化学习的发展历程2.马尔可夫决策过程3.动态规划4.无模型预测学习5.无模型控制学习6.价值函数逼近7.策略梯度
    发表于 04-21 14:57

    什么是深度学习?使用FPGA进行深度学习的好处?

    FPGA实现。易于适应新的神经网络结构深度学习是一个非常活跃的研究领域,每天都在设计新的 DNN。其中许多结合了现有的标准计算,但有些需要全新的计算方法。特别是具有特殊结构的网络难以
    发表于 02-17 16:56

    ATX电源电路的分析

    检修atx开关电源,从+5vsb、ps-on和pw-ok信号入手来定位故障区域,是快速检修中行之有效方法
    发表于 06-28 17:33 853次下载

    深度学习优化方法学习率衰减方式的详细资料概述

    深度学习作为现今机器学习领域中的重要的技术手段,在图像识别、机器翻译、自然语言处理等领域都已经很成熟,并获得了很好的成果。文中针对深度学习
    发表于 12-18 16:47 9次下载

    深度学习中多种优化算法

    深度学习中,有很多种优化算法,这些算法需要在极高维度(通常参数有数百万个以上)也即数百万维的空间进行梯度下降,从最开始的初始点开始,寻找最优化
    的头像 发表于 08-28 09:52 2300次阅读
    <b class='flag-5'>深度</b><b class='flag-5'>学习</b>中多种<b class='flag-5'>优化</b>算法

    基于深度学习的自适应梯度阀值判别方法

    深度学习的自适应梯度阈值判别方法。对海温梯度图进行标注,通过 Mask r-CNN训练得到海洋锋像素级识别模型,统计每一类锋特有的
    发表于 03-19 16:18 17次下载
    基于<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的自适应<b class='flag-5'>梯度</b>阀值判别<b class='flag-5'>方法</b>

    几种行之有效的集成电路拆卸方法资料下载

    电子发烧友网为你提供几种行之有效的集成电路拆卸方法资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
    发表于 04-11 08:52 10次下载
    几种<b class='flag-5'>行之有效</b>的集成电路拆卸<b class='flag-5'>方法</b>资料下载

    人工智能领域的梯度学习研究

    前向梯度学习通常用于计算含有噪声的方向梯度,是一种符合生物学机制、可替代反向传播的深度神经网络学习方法。然而,当要
    发表于 05-30 10:34 222次阅读
    人工智能领域的<b class='flag-5'>梯度</b><b class='flag-5'>学习</b>研究