如何理解深度学习的优化?通过分析梯度下降的轨迹

作者: 机器之心 2018-11-20 15:23:30

神经网络优化本质上是非凸的,但简单的基于梯度的方法似乎总是能解决这样的问题。这一现象是深度学习的核心支柱之一,并且也是我们很多理论学家试图揭示的谜题。这篇文章将总结一些试图攻克这一问题的近期研究,***还将讨论我与 Sanjeev Arora、Noah Golowich 和 Wei Hu 合作的一篇新论文(arXiv:1810.02281)。该论文研究了深度线性神经网络上梯度下降的情况,能保证以线性速率收敛到全局最小值。

深度学习的优化

图景(landscape)方法及其局限性

很多有关深度学习优化的论文都隐含地假设:在建立了损失图景(尤其是临界点的损失图景,临界点是指梯度消失的点)的几何性质之后,就会得到对其的严格理解。举个例子,通过类比凝聚态物理学的球形自旋玻璃模型,Choromanska et al. 2015 的论证变成了深度学习领域的一个猜想:

图景猜想:在神经网络优化问题中,次优的临界点的 Hessian 非常可能有负的特征值。换句话说,几乎没有糟糕的局部最小值,而且几乎所有的鞍点都是严格的。

针对多种不同的涉及浅(两层)模型的简单问题的损失图景,这一猜想的强形式已经得到了证明。这些简单问题包括矩阵感知、矩阵完成、正交张量分解、相位恢复和具有二次激活的神经网络。也有研究者在探究当图景猜想成立时实现梯度下降到全局最小值的收敛,Rong Ge、Ben Recht、Chi Jin 和 Michael Jordan 的博客已经给出了很好的描述:

  • https://www.offconvex.org/2016/03/22/saddlepoints/
  • https://www.offconvex.org/2016/03/24/saddles-again/
  • https://www.offconvex.org/2016/03/24/saddles-again/

他们描述了梯度下降可以如何通过逃避所有的严格鞍点来达到二阶局部最小值(Hessian 为正半定的临界点),并还描述了当将扰动加入到该算法时这个过程是如何有效的。注意这是在图景猜想下,即当没有糟糕的局部最小值和非严格鞍点时,二阶局部最小值可能也是全局最小值。

但是,很显然,图景方法(和图景猜想)不能以这种方式应用于深度(三层或更多层)网络。有多个原因。***,深度网络通常会引入非严格鞍点(比如,在所有权重都为零的点,参见 Kawaguchi 2016)。第二,图景角度很大程度上忽视了算法方面,而在实践中算法方面对深度网络的收敛有很大的影响——比如初始化或批归一化的类型。***,正如我在之前的文章中谈到的,基于 Sanjeev Arora 和 Elad Hazan 的研究,为经典线性模型添加(冗余的)线性层有时能为基于梯度的优化带来加速,而不会给模型的表现力带来任何增益,但是却会为之前的凸问题引入非凸性。任何仅依靠临界点性质的图景分析都难以解释这一现象,因为通过这样的方法,因为优化一个具有单个临界点且该临界点是全局最小值的凸目标是最困难的。

解决方案?

图景方法在分析深度学习优化上的局限性说明它可能抛弃了太多重要细节。比起「图景方法是否优雅」,也许更相关的问题是「来自特定初始化的特定优化器轨迹(trajectory)具有怎样的行为?」

尽管基于轨迹的方法看起来比图景方法繁重得多,但它已经带来了可观的进展。近期一些论文(比如 Brutzkus and Globerson 2017、Li and Yuan 2017、Zhong et al. 2017、Tian 2017、Brutzkus et al. 2018、Li et al. 2018、Du et al. 2018、Liao et al. 2018)已经采用了这一策略,并成功分析了不同类型的浅模型。此外,基于轨迹的分析也正开始涉足图景方法之外的领域——对于线性神经网络情况,他们已经成功确立在任意深度下梯度下降到全局最小值的收敛性。

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

线性神经网络是使用线性激活或不使用激活的全连接神经网络。具体来说,一个输入维度为 d_0,输出维度为 d_N 且隐藏维度为 d_1,d_2...d_{N-1} 的深度为 N 的线性网络是的线性映射,该映射被参数化为,其中是第 j 层的权重矩阵。尽管这样表示看起来很简单普通,但线性神经网络在优化方面在某种程度上复杂得让人惊讶——它们会导致具有多个最小值和鞍点的非凸训练问题。被视为深度学习中优化的替代理论,基于梯度的算法在线性神经网络上的应用在这段时间收到了极大的关注。

就我所知,Saxe et al. 2014 是***为深度(三或更多层)线性网络执行了基于轨迹的分析,在白化的数据上处理最小化 ℓ2 损失的梯度流(学习率极小的梯度下降)。尽管这个分析有很重要的贡献,但却并未正式确立到全局最小值的收敛性,也没有考虑计算复杂性方面(收敛所需的迭代次数)。近期研究 Bartlett et al. 2018 在填补这些空白上取得了进展,应用了基于轨迹的方法来分析用于线性残差网络特定案例的梯度下降,即所有层都有统一宽度(d_0=d_1=...=d_N)且同等初始化(W_j=I, ∀j)的线性网络。考虑到数据-标签分布各有不同(他们称之为「targets」),Bartlett 等人展示了可证明梯度下降以线性速率收敛到全局最小值的案例——在次迭代后与***的损失小于 ϵ>0;还展示了无法收敛的情况。

在我与 Sanjeev Arora、Noah Golowich 和 Wei Hu 合作的一篇新论文中,我们在使用基于轨迹的方法方面又向前迈进了一步。具体而言,我们分析了任意不包含「瓶颈层」的线性神经网络的梯度下降轨迹,瓶颈层是指其隐藏维度不小于输入和输出维度之间的最小值;还证明了以线性速率到全局最小值的收敛性。但初始化需要满足下面两个条件:(1)近似平衡度(approximate balancedness)——;(2)缺值余量(deficiency margin)——初始损失小于任意秩缺失解的损失。我们证明这两个条件都是必需的,违反其中任意一个都可能导致轨迹不收敛。在线性残差网络的特殊案例中,初始化时的近似平衡度很容易满足,而且对于以零为中心的小随机扰动进行初始化的自定义设置也同样容易满足。后者也会导致出现具有正概率的缺值余量。对于 d_N=1 的情况(即标量回归),我们提供了一个随机初始化方案,能同时满足这两个条件,因此能以恒定概率以线性速率收敛到全局最小值。

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

其意思是在整个时间线中,所有层都有(接近)一样的奇异值集合,而且每层的左侧奇异值向量都与其后一层的右侧奇异值向量(接近)一致。我们表明这种规律性意味着梯度下降能稳定运行,从而证明即使是在损失图景整体很复杂的案例中(包括很多非严格鞍点),它也可能会在优化器所取的特定轨迹周围表现得特别良好。

总结

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

原文链接:https://www.offconvex.org/2018/11/07/optimization-beyond-landscape/

【本文是51CTO专栏机构“机器之心”的原创译文,微信公众号“机器之心( id: almosthuman2014)”】

戳这里,看该作者更多好文

深度学习 梯度 神经网络
上一篇:深度策略梯度算法是真正的策略梯度算法吗? 下一篇:微软、FB联合开发人工智能软件挑战谷歌领先地位
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

百度CTO王海峰CNCC2019演讲:深度学习平台支撑产业智能化

百度CTO王海峰在会上发表题为《深度学习平台支撑产业智能化》的演讲,分享了百度关于深度学习技术推动人工智能发展及产业化应用的思考,并深度解读百度飞桨深度学习平台的优势,以及与百度智能云结合助力产业智能化的成果。

佚名 ·  1天前
深度学习/计算机视觉常见的8个错误总结及避坑指南

人类并不是完美的,我们经常在编写软件的时候犯错误。有时这些错误很容易找到:你的代码根本不工作,你的应用程序会崩溃。但有些 bug 是隐藏的,很难发现,这使它们更加危险。

skura ·  3天前
2019年深度学习自然语言处理十大发展趋势 精选

自然语言处理在深度学习浪潮下取得了巨大的发展,FloydHub 博客上Cathal Horan介绍了自然语言处理的10大发展趋势,是了解NLP发展的非常好的文章。

HU数据派 ·  4天前
图灵奖得主Yoshua Bengio:深度学习当务之急,是理解因果关系

深度学习擅长在大量数据中发现模式,但无法解释它们之间的联系,而图灵奖获得者Yoshua Bengio想要改变这一点。

佚名 ·  2019-10-15 05:15:00
18个挑战项目带你快速入门深度学习

AlphaGo 大战李世?h之后,深度学习技术便在国内变得异常火。吸引了大批的技术人员争相学习,那么到底如何才能更快速的入门深度学习呢?下面给大家介绍的 18 个挑战项目,通过实践动手带你快速入门深度学习!

实验楼 ·  2019-10-10 14:48:19
盘点 | 8个你可能不知道的深度学习应用案例

深度学习与传统机器学习系统的不同之处在于,它能够在分析大型数据集时进行自我学习和改进,因此能应用在许多不同的领域。

天极网 ·  2019-10-10 14:15:18
2019年较热门的5大深度学习课程

今天,我们将和大家盘点一下,当下较流行的深度学习资源/课程,可以帮助你们提升深度学习技能。

猿哥 ·  2019-09-26 05:16:24
DeepMind一次性开源3个新框架!深度强化学习应用落地即将迎来春天?

深度强化学习(Deep Reinforcement Learning,DRL)一直是近年来人工智能的一些重大突破的核心。然而,尽管 DRL 有了很大的进步,但由于缺乏工具和库,DRL 方法在主流解决方案中仍然难以应用。

杨鲤萍 ·  2019-09-20 09:38:18
Copyright©2005-2019 51CTO.COM 版权所有 未经许可 请勿转载