DenseNet

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

屏幕快照 2018-03-17 下午4.13.08-w551

简介

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

屏幕快照 2018-03-17 下午5.25.10-w1058

posted @ 2018-03-17 18:28  nowgood  阅读(1380)  评论(0编辑  收藏  举报