从频率角度理解为什么深度可以加速神经网络的训练

2020 年 12 月 22 日 PaperWeekly


©PaperWeekly 原创 · 作者|周瀚旭、许志钦

单位|上海交通大学

研究方向|深度学习理论



深度加速训练的效应

近些年来,随着深度学习的发展,其已经在图像、语音、自然语言处理等各个不同的领域展现出了优异的性能。在运用中,人们发现,更深层的神经网络往往比隐藏层较少的神经网络训练得快,也有更好的泛化性能。虽然,随着神经网络的加深,可能会出现梯度消失的问题,但是通过例如 Resnet 残差的手段,不仅能解决梯度消失的问题,还能够提升网络的训练速度与泛化性能。

比如何恺明在《Deep Residual Learning for Image Recognition》的实验,由于加入了残差块,34 层的卷积神经网络的泛化性和训练速度都比 18 层的卷积神经网络要好。


泛化的问题往往还与数据集本身有密切的关系。因此,我们首先关注为什么加深网络可以加快训练。为避免歧义,我们定义训练快慢是通过看网络达到一个固定误差所需要的训练步数。尽管更深的网络每步需要的计算量更大,但这里我们先忽略这个因素。

为了研究这个问题,首先我们用一个简单的实验来重现这个现象。下图是用不同层数但每层大小一致的 DNN 学习目标函数 cos(3x)+cos(5x),训练到一个固定精度所需要的步数图。我们发现,越深层的神经网络,需要越少的步数,就能够完成任务。


即使是对于这么简单的任务,几乎没有文章能够通过数学理论来解释这样的问题;尽管有一些工作开始分析深度线性网络,但仍然几乎没有文章能够从一个比较清晰的视角,通过实验或理论,来解释这样一个非线性神经网络的现象。

因此,即使提供一个可能的理解视角,也是十分必要的。我们工作提出了一个深度频率原则来解释深度带来的加速效应。在这之前,我们首先来看一下什么叫频率原则。


频率原则(Frequency Principle)


频率原则可以用一句话概括:深度学习倾向于优先拟合目标函数的低频部分。

我们先用一个简单的例子来理解 F-Principle。用一个深度神经网络(DNN)去拟合如下的红色实线函数。训练完成后,函数能被深度网络(蓝色点)很好地拟合。


我们想要从频域的角度,观察 DNN 的训练过程。如下图动画所示,红色为目标函数的 FT(傅里叶变换),蓝色为网络输出的FT,每一帧表示一个训练步,横坐标是频率,纵坐标是振幅。我们发现,随着训练的进行,DNN 表示的函数在频域空间显现出了清晰的规律,即频率从低到高依次收敛。


频率原则虽然简单,但它为理解深度学习的泛化以及设计高效的神经网络结构提供了非常重要的基础,并且现在已经有一系列理论为频率原则提供了支撑。


深度频率原则


接下来,我们将从频率视角来看深度的影响。对于隐藏层 hi,它的输入是它前一层的输出。在神经网络优化过程中,梯度是反向传播的,也就是说,当我们在更新隐藏层 hi 的参数时,误差的信号是从真实标签和神经网络输出的差异开始向前传播的。

因此,对于子网络(从隐藏层 hi 到输出层),它的等效目标函数是由隐藏层 hi 的前一层的输出和真实的标签构成。基于此,我们在分析阶段将整个多层的神经网络分成两个部分,pre-condition component 和 learning component,并将着重分析 learning component 的等效目标函数在不同条件下的表现。注意,训练时,我们仍然像往常一样,训练所有的参数。


假设两个不同的神经网络有相同的 learning component,即它们的最后若干层是相同的。若其中一个 learning component 的等效目标函数更加低频,那这个神经网络的 learning component会学得更快。

显然,learning component 学得更快,自然整个网络也就学得更快。特别地,当 learning component 学好的时候,整个神经网络也就学好了。因此,这给了我们充分的理由相信,通过研究 learning component 的性质,从这个角度出发,能够对多层神经网络的本质窥探一二。

现在我们需要做的就是找到一个可以刻画高维函数频率分布的量,再利用 F-principle 低频先收敛的特性,我们就可以研究深度带来的效应了。因此,我们定义了 Ratio Density Function (RDF)。

本质上,我们首先通过在傅立叶空间画半径为 r 的球,定义目标函数在 r 球内的能量(L2 积分)占整个函数的能量比(通过高斯滤波获得),即低频能量比(Low frequency ratio,LFR)。这类似于概率的累积分布函数。下左图,就是以 k 为半径,函数的 低频部分与高频部分。

然后我们对 LFR 在 r 方向上求导数得到 RDF,这可以解释为函数在每个频率上的能量密度。下右图即是, sin(kπx) 的 RDF ,1/δ 就是半径 r,并对峰值做了归一化。不难看出,高频函数的峰值在 r 较大的位置,低频函数的峰值在 r 较小的位置。因此,RDF 适合用来刻画高维函数的频率分布。



最后,我们需要研究 learning component 的等效目标函数的 RDF。如果 learning component 的等效目标函数的 RDF 趋近于低频,那么通过 F-principle,我们就知道其收敛得会比较快;相反,若其趋近于高频,则其收敛得就会比较慢。

实验上,我们先做了关于 Resnet18 的实验,保持全连接层不变,改变 Resnet 卷积模块的个数,定义最后三层为 learning component。


整个训练和往常一样,训练所有的参数。在下图中,-1、-2、-3、-4 的残差块依次减少,不难发现,拥有更多残差块的网络不仅收敛速度更快,同时泛化性能也更好。


观察其 learning component 的等效目标函数的 RDF,我们发现,拥有更多隐藏层(也就是网络更深)的神经网络其 learning component 相比浅网络会更趋于低频,并最后保持在更加低频处。我们得到了 Deep Frequency Principle——更深层神经网络的有效目标函数在训练的过程中会更趋近于低频。

再基于 F-principle——低频先收敛,我们就能够得到更深层的神经网络收敛得更快的结果。尽管频率是一个相对可以定量和容易分析的量,但当前实验跨越了多个不同结构的网络,也会给未来理论分析造成困难。因此,我们后面研究单个神经网络中的 Deep Frequency Principle。
 


于是,我们探究同一个深度神经网络内不同隐藏层的等效目标函数的 RDF,即改变 pre-condition 和 learning component 的层数(但保持网络的结构和总层数不变)。这个实验是在 MNIST 上的,深度神经网络(DNN),并取了 5 个相同大小的隐藏层。

在下图中,我们发现,虽然初始时神经网络更深层的等效目标函数的 RDF 聚集于较高频处,但随着训练,更深层的 RDF 会快速地趋于更低频的地方,并保持在低频处。这也是 Deep Frequency Principle——更深层的神经网络的有效目标函数会在训练的过程中会更趋近于低频。
 
在该工作中,基于傅里叶分析以及对 F-principle 的理解,我们给出了一个新的角度来处理和看待多层、深层的前馈神经网络,即通过分成 pre-condition component 和 learning component 两个部分,研究 learning component 的等效目标函数的 RDF,得到 Deep frequency principle,并最终提供了一种可能的角度来解释为何多层的网络能够训练得更快!相信这个工作会为未来的理论分析提供重要的实验基础。
 
关于作者:
周瀚旭,许志钦 上海交通大学
联系: xuzhiqin@sjtu.edu.cn
https://ins.sjtu.edu.cn/people/xuzhiqin/


参考文献

[1] Deep frequency principle towards understanding why deeper learning is faster.  Zhi-Qin John Xu and Hanxu Zhou, arXiv: 2007.14313. (to apear in AAAI-2021)

[2] Zhi-Qin John Xu; Yaoyu Zhang; Tao Luo; Yanyang Xiao, Zheng Ma , ‘Frequency principle: Fourier analysis sheds light on deep neural networks’, arXiv:1901.06523. (2020, CiCP)

[3] Zhi-Qin John Xu; Yaoyu Zhang; Yanyang Xiao, Training behavior of deep neural network in frequency domain, arXiv preprint arXiv: 1807.01251. International Conference on Neural Information Processing.



更多阅读




#投 稿 通 道#

 让你的论文被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。


📝 来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志


📬 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



关于PaperWeekly


PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。



登录查看更多
1

相关内容

我们给定x,函数都会输出一个f(X),这个输出的f(X)与真实值Y可能是相同的,也可能是不同的,为了表示拟合的好坏,就用一个函数来度量拟合的程度。这个函数就称为损失函数(loss function),或者叫代价函数(cost function)
专知会员服务
73+阅读 · 2020年5月21日
【Nature论文】深度网络中的梯度下降复杂度控制
专知会员服务
38+阅读 · 2020年3月9日
网络宽度对深度学习模型性能有什么影响?
极市平台
15+阅读 · 2019年7月7日
从动力学角度看优化算法:一个更整体的视角
黑龙江大学自然语言处理实验室
8+阅读 · 2019年1月28日
如何训练你的ResNet(三):正则化
论智
5+阅读 · 2018年11月13日
从傅里叶分析角度解读深度学习的泛化能力
PaperWeekly
7+阅读 · 2018年8月24日
如何改进梯度下降算法
论智
9+阅读 · 2018年4月19日
理解神经网络的激活函数
论智
7+阅读 · 2018年1月8日
深度 | 为什么要利用NLP做情感分析?
大数据文摘
4+阅读 · 2017年12月22日
从零开始:教你如何训练神经网络
机器之心
5+阅读 · 2017年12月11日
变种神经网络的典型代表:深度残差网络
机器学习研究会
9+阅读 · 2017年10月20日
Fast AutoAugment
Arxiv
5+阅读 · 2019年5月1日
Deep Learning
Arxiv
6+阅读 · 2018年8月3日
VIP会员
相关资讯
网络宽度对深度学习模型性能有什么影响?
极市平台
15+阅读 · 2019年7月7日
从动力学角度看优化算法:一个更整体的视角
黑龙江大学自然语言处理实验室
8+阅读 · 2019年1月28日
如何训练你的ResNet(三):正则化
论智
5+阅读 · 2018年11月13日
从傅里叶分析角度解读深度学习的泛化能力
PaperWeekly
7+阅读 · 2018年8月24日
如何改进梯度下降算法
论智
9+阅读 · 2018年4月19日
理解神经网络的激活函数
论智
7+阅读 · 2018年1月8日
深度 | 为什么要利用NLP做情感分析?
大数据文摘
4+阅读 · 2017年12月22日
从零开始:教你如何训练神经网络
机器之心
5+阅读 · 2017年12月11日
变种神经网络的典型代表:深度残差网络
机器学习研究会
9+阅读 · 2017年10月20日
Top
微信扫码咨询专知VIP会员