文章目录
网络结构总结
Resnet → Densenet → Senet → ResNeXt
1、Resnet
ResNet模型的核心是通过建立前面层与后面层之间的“短路连接”,这有助于训练过程中梯度的反向传播,从而能训练出更深的CNN网络。
更多的层不一定有更好的acc,会出现两个问题:
- 梯度消失和梯度爆炸:对输入数据和中间层的数据进行归一化操作即可
- 退化问题:网络层深度开始增加时候,acc达到饱和状态然后迅速下降。也就是说,在我们的网络达到某一个深度的时候,咱们的网络已经达到最优状态了,再加深网络就会出现退化问题。
但是使用残差网络就能很好的解决这个问题。假设当前网络的深度能够使得错误率最低,如果继续增加咱们的ResNet,为了保证下一层的网络状态仍然是最优状态,咱们只需要令F(x) = 0即可。真实情况虽很难达到最优,但是总会有那么一个时刻它能无限接近,采用resnet的话,也只用小小的更新F(x)部分的权重值就行了,不用像一般的卷积层一样大动干戈。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w2LEcWc0-1608002365424)(/Users/jiangchaohui/Library/Application Support/typora-user-images/image-20201202170152038.png)]](https://i-blog.csdnimg.cn/blog_migrate/9a260ba1f70f028a233a18a420a70c79.png)
2、Densenet
与Resnet相比,没有采用合并之前所有层的特征到一层的方法,densenet是连接起来结合所有层的特点。DenseNet模型建立的是前面所有层和后面层的密集连接,通过特征在channel上的连接来实现特征重用(Feature reuse)。这些特点让DenseNet在参数和计算成本更少的情形下实现比ResNet更优的性能。相比ResNet,DenseNet提出了一个更激进的密集连接机制,即互相连接所有的层,具体来说就是每个层都会接受其前面所有层作为其额外的输入。下面两张图可以看出其区别。

上图是ResNet网络的短路连接机制(其中+代表的是元素级相加操作)

上图是DenseNet网络的密集连接机制(其中c代表的是channel级连接操作)
在Densenet中,会连接前面所有层作为输入。比如下图中h3的输入不仅包括来自h2的x2,还包括前面两层的x1和x2,它们是在channel维度上连接在一起的。

本文详细总结了深度学习中几种重要的网络结构,包括Resnet、Densenet、Efficient Implementation of DenseNets以及Squeeze-and-Excitation Networks(Senet)和ResNeXt。Resnet通过短路连接解决了深度网络的退化问题,Densenet则采用密集连接实现特征重用。Efficient Implementation of DenseNets针对DenseNet的显存问题提出优化。Senet通过Squeeze和Excitation操作进行特征通道的自适应校准。ResNeXt在不增加参数复杂度的前提下提高了准确率,通过aggregated transformations实现网络性能提升。
最低0.47元/天 解锁文章
11万+

被折叠的 条评论
为什么被折叠?



