本文主要是介绍[深度学习]暴走的残差深度学习网络家族!加深了网络还是隐式多网络叠加?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在2015年残差网络Deep Residual Learning for Image Recognition出来之后,2016年出现了大批量的达到与之相应效果的加深网络的方法。加深网络会带来如下三大类问题:1. 后向传播梯度消失;2. 前向传播信息量减少;3. 训练时间加长。为了缓解以上三大类问题,2016上半年已经有各式各样的加深网络的方法,让我们来看下下面五篇文章,前四篇文章主要注重与如何去使用各种方法加深网络,最后一篇文章对最近出现的残差网络家族做了一个深入的分析与思考,指出残差与其说是加深网络不如说是隐式的多网络叠加。
一、Deep Networks with Stochastic Depth
该文章将CIFAR-100刷到了24.58。代码:https://github.com/yueatsprograms/Stochastic_Depth。该文章基于Deep Residual Learning for Image Recognition做了实验,提升效果如下表所示(重点看constant与stochastic的比较):
文章提出在层出现概率是线性衰减到0.5的情况下,如下图所示:
则有L个block的network每次训练时有期望3/4L个block参与训练。在预测端也相应的需要做些改变如下:
。该加深网络方法的缺点是:虽然减少了训练的时间,但确不能减少前向的时间。不过它是一个非常有效的类似于dropout、drop connection的regularization的方法,能有效采用这样的加深网络的方式来提升模型性能。
二、FractalNet:Ultra-Deep Neural Networks without Residuals
该文章将CIFAR-100刷到了22.85。该文章不同与第一篇drop layer,它提出了分形网络(fractal network)的概念,基于fractal network的基础上,采用drop path来进行训练。其样例结构如下:
文章提出了的drop path方法如下:
1. local:join模块一定概率drop每个输入,但确保每个join至少一个输入留下。
2. global:对分形网络(fractal network)只留下一列
其示意图如下:
三、Identity Mappings in Deep Residual Networks
该文将CIFAR-100刷到了22.71。代码:https://github.com/KaimingHe/resnet-1k-layers。该文章主要对原文Deep Residual Learning for Image Recognition的残差单元做了两方面做了详尽的实验:1. shortcut类型 2. 激活函数顺序。shortcut类型的实验如下:
最后证明还是原先的第一种更好。激活函数顺序的实验如下:
最后证明是最后一种好,将激活函数都放在weight之前。
四、RESNET IN RESNET:GENERALIZING RESIDUAL ARCHITECTURES
该文章将CIFAR-100刷到了22.90。其核心结构如下:
五、Residual Networks are Exponential Ensembles of Relatively Shallow Networks
该文章提出了在残差网络风行的时候,给出了一个创新的观点,并附上了一些理论+实验观测上的证明。具体的观点如下:残差网络并不是一个真正意义上极深的网络,而是隐式地由指数个大部分为浅层网络叠加而成的。由此该论文指出,查看网络之后除了可以看width和depth,其实还有另外一个维度就是multiplicity。该文章中比较关键的一个理论证明插图如下:
这篇关于[深度学习]暴走的残差深度学习网络家族!加深了网络还是隐式多网络叠加?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!