链接:https://www.zhihu.com/question/462218901
编辑:深度学习与计算机视觉
声明:仅做学术分享,侵删
作为一个未入门的研究生小白,一方面为深度学习的实际效果和应用价值而感到兴奋,另一方面也会担忧自己的个人能力的发展。个人目前浅薄的看法是,调模型的强应用向的研究工作,由于深度学习目前的黑箱性,对于个人似乎只能积累应用经验,但在数理工具,开发能力等等方面的训练和提升似乎不强。所以希望自己在调模型以外,打开视野看看一些更有见地的工作。总之,到目前为止,深度学习领域的发展趋势是什么?有哪些值得关注的新动向?在应用领域,诸如cv,nlp等,研究思路是否有新的变化?
作者:知乎用户
https://www.zhihu.com/question/462218901/answer/1925000483
目录
随机初始模型到最终模型之间的插值情况
最终模型之间的插值情况
神经网络损失面的全貌
不知道算不算硬核,不过我觉得关于Loss Landscape的研究很值得关注,对理解神经网络的一些特性很有帮助。相关的研究很多,每一个研究都研究了损失面的一个或若干个特性,把他们拢在一起,会发现神经网络的损失面会变得很清晰。
首先有几个基本概念普及一下,一个是所谓“flat wide minima”,极小值所在的损失面越平坦,越宽,泛化性能越好,所以优化的最终目标就是追求flat wide minima。
还有一个就是所谓的线性插值,就是说两个模型,一样的网络结构,不同的参数,对这两个权重进行粗暴的线性加权平均,得到一个新的模型,这个操作就叫线性插值。
通过对模型进行线性插值来观察损失的变化,可以了解损失面的几何结构,这是一个经常使用的工具。
随机初始模型到最终模型之间的插值情况
可以想象一下,一个神经网络经过几十上百个epoch的训练,从随机的初始状态一直到最后的最小值,中间大约会经过各种跌宕起伏。如果粗暴地从随机初始状态到最终状态之间拉一根直线,对模型进行线性插值,然后这条插值的直线投射到损失面上,就得到了插值过程中的损失变化曲线,如果损失面起伏很复杂的话,那这条从直线投射而来的曲线应该也是上下起伏的吧?然后根据Goodfellow在2014年的发现,很多时候这个曲线是单调递减的:
黄线是训练时候跟着梯度在损失面上走出来的损失曲线,蓝线和红线是从不同的初始点到最终模型拉一根直线投射到损失面上的损失曲线。可以看到,这条损失曲线是单调递减的。
这篇文章 Analyzing Monotonic Linear Interpolation in Neural Network Loss Landscapes 管这个特性叫“单调线性插值”。
文章发现从不同的初始值可以走到同一个模型,殊路同归,而且模型符合单调线性插值,如左图。而这个情况文章 Linear Mode Connectivity and the Lottery Ticket Hypothesis 也说了,随机初始化位置不同,模型经常就会掉到同一个局部极小值,而这个趋势在训练很早期就已经确定了。
有时候不同的初始值会走到不同的模型,这种情况如果你从init1到opt2拉一根直线去投射,就不是单调的了,也很好理解,因为要翻过一个小山坡,这个情况是右图:
作者发现,如果初始值和终值权重之间的距离越远,单调线性插值就越难。而导致这种情况的因素有:使用大的训练步长,使用Adam优化器和使用Batch Norm。比如使用Adam,经常就会遇到小山峰:
这意味着大的步长和Adam优化器都会促使模型越过山峰。
最终模型之间的插值情况
也有一些论文研究最终模型之间的插值情况,上文说了,从两个初始值出发到达两个极小值,之间可能会有山坡,所以如果对这两个极小值之间进行插值,会投射出这样一条损失线:
这很好理解,但这却不是真相的全部。
文章 Essentially No Barriers in Neural Network Energy Landscape 发现,这些极小值之间是可以通过一段一段的直线连接起来的:
如果你直接走直线,就是越过山坡,会跌宕起伏,但如果使用文章中的优化方法,绕着走,肯定可以到达另一个极小值。也就是说,局部极小值之间都可以通过线段连接起来,而且一路上损失都很低(上图右边那条黄线,沿着山谷走,损失一直很低,一直都保持极小值状态)。
而文章 On Connected Sublevel Sets in Deep Learning 则证明,如果使用分段线性激活函数,比如ReLu,那么这个神经网络模型的所有局部极小值其实都是连在一块儿的,他们其实都属于同一个全局最小值。
文章 Landscape Connectivity and Dropout Stability of SGD Solutions for Over-parameterized Neural Networks 告诉我们,神经网络参数量越大,局部极小值之间的连接性越强。
神经网络损失面的全貌
那么综合以上各种论文的结论,基本可以描绘出神经网络损失面的全貌,应该长这样:
极小值都处于同一个高度,属于同一个全局最小值,而且互相之间是连在一起的。那么很容易想到了,如果你往这个沙盘随机扔弹子,是不是更容易掉到那种特别宽的flat minima?没错,文章 The large learning rate phase of deep learning:the catapult mechanism 发现,使用大的学习率更容易掉到平坦的极小值(flat wide minima),也就是说,学习率一大,相当于在这些山之间乱跳,当然更容易掉到flat wide minima咯。
大胆猜测,根据Lottery Ticket假设那篇论文描述的现象,这里面每一个小山都是一个sub-network
另外还有很多研究表现resnet和mish激活函数可以让损失面更平滑,而Relu会让极小值变得很尖很崎岖。
作者:天穹上的软光子
https://www.zhihu.com/question/462218901/answer/1913971701
纯外行(指没有cs背景仅关注物理和机器学习的交叉)说一下最近听到的一个和物理相关的小方向,感觉虽然不是那么"doable",但想法很自然并且看起来有趣。
出发点是中心极限定理意味着全连接神经网络的large width极限下可以被一个Gaussian分布所描述,例如https://arxiv.org/pdf/1711.00165.pdf 。
另一方面我们知道场论中的mean field theory/generalized free theory就是Gaussian分布(当然更正式的叫法是Gaussian过程),两点函数就是这个多维分布的kernel。在物理中这些自由场的来源一般是对一族有效场论取一个精巧的极限,动机是从场论模空间(space of EFTs)的角度来看,强耦合场论A_1相对于自由场A_2至少有一个O(1)的距离,因此微扰计算是失效的,如果想解析的展开计算,自然的想法就是找到一族理论来interpolate A_1 and A_2,于是就有了各种large xx极限。这个在精神上和large width 极限是相似的。
于是一个自然的想法就是,那我能不能用有效场论来计算finite width NN?这篇文章https://arxiv.org/pdf/2008.08601.pdf就干了这件事情。
作者:大白杨
https://www.zhihu.com/question/462218901/answer/1949571829
我不太明白你说的调模型具体指什么,姑且认为是那种很motivation很weak但是取得了很好的效果的工作。
cv领域的话这半年最大的热点就是transformer,如果说今年年初还在各种CNN的framework中用transformer占坑的话,最近几个月的工作集中在设计具体的针对vision的transformer,比如两个最基本的问题,对于长sequence处理能力和变长position embedding的设计。对前者来说的话,一般就是继续把cnn或者cnn的思想用各种方法套回transformer中,也出现了一些很不错的工作(比如微软的swin)。但是到目前为止,我认为并没有出现一个真正意义上解决这个问题,或者说非常general的transformer框架,目前的框架依然有很多坑,谁要是能design出这个那就是下一个破万引用的工作。
我个人想法中这个框架应该是非常简单的修改了transformer本身的attention操作,使他同时兼备了local和global的能力,并且用很强的泛化性。过于复杂的修改和粗枝大叶的叠加都不太符合我的直觉。
还有就是对于弱label海量数据学习的工作,比如gpt-3那一个方向。这也是一个非常重要和热门的点,只是我这一块目前涉足不多,难以深入去讲自己的看法。但是我知道很多公司都在搞这个,而且某些头部已经有了一些成果就是不release。
不过你也发现了,学术这一块,对于钞票的需求越来越高,以上两个没个几台32G的dgx,想出货估计有难度。
作者:labview https://www.zhihu.com/question/462218901/answer/1917569014
我所关注到的方向有如下几个:
1、基于MLP的新型模型的发展与复兴
2、大规模模型的实施,比如MOE,ZERO
3、科学计算与DL的融合发展,比如传统仿真的AI加速
4 、自学习
☆ END ☆
如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「uncle_pn」,欢迎添加小编微信「 mthler」,每日朋友圈更新一篇高质量博文。
↓扫描二维码添加小编↓