码迷,mamicode.com
首页 > Web开发 > 详细

DenseNet

时间:2018-03-17 19:49:17      阅读:459      评论:0      收藏:0      [点我收藏+]

标签:http   需要   ons   存在   github   logs   features   git   ras   

特点: dense shortcut connections
结构: DenseNet 是一种具有密集连接的卷积神经网络。在该网络中,任何两层之间都有直接的连接,也就是说,网络每一层的输入都是前面所有层输出的并集,而该层所学习的特征图也会被直接传给其后面所有层作为输入
源码: DenseNet

技术分享图片?

简介

DenseNet 引人注目的好处:

  1. 缓解了深层网络梯度消失的问题
  2. 加强了 feature propagation
  3. 支持 feature reuse
  4. 大量的减少了参数数量(DenseNet非常窄,即 channel 少)
  5. Dense Connections 具有正则化效果

研究表明: 输入或者梯度信息经过多层神经网络传递之后,在到达网络的尾部或者首部时,可能会消失(即变成零)。

与 ResNet 的比较:

Crucially, in contrast to ResNets, we never combine features through summation before they are passed into a layer; instead, we combine features by concatenating them.

Stochastic depth 通过在训练期间随机丢弃层来改善 ResNet 的训练过程,这表明并非所有层都可能是需要的,从而说明了 ResNet 中存在大量的冗余。

DenseNet 结构

技术分享图片?

down-sampling 是卷积网络中必要的操作,而它会改变 feature map 的尺寸,所以将网络划分为多个 Dense Block, 每个 Block 中的 feature map 大小相同。

1.合成函数:

\[ \begin{align} x_l &= H_l([x_0, x_1, \cdots,x_{l-1}]) \H_l &= BN→ReLU→Conv(1\times1)→BN→ReLU→Conv(3\times3) \\end{align} \]

2.池化层:

\[BN→ReLU→Conv(1\times1) → AvePooling\]

3.Growth rate

即 Dense Block 中每层输出的 feature maps 的 Channel 数, eg, k=12

4.压缩

设通常池化层的输出 Channel 个数为 \(m\),我们通过参数 \(θ\),调节池化层输出 Channel 的个数为 \(θm\)

5.执行细节:
Conv(3×3), s=1, zero-padding
Avg_Pool, 2×2

技术分享图片?

DenseNet

标签:http   需要   ons   存在   github   logs   features   git   ras   

原文地址:https://www.cnblogs.com/nowgood/p/DenseNet.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!