论文笔记:Densely Connected Convolutional Networks

Dense Block: 每一层只增加 k = 4 个feature map 然后跟前面的所有concat,再 BN-->ReLU-->Conv   (一般k = 12)

论文笔记:Densely Connected Convolutional Networks

 

整体结构: Dense Block之间是Conv和Pooling

论文笔记:Densely Connected Convolutional Networks

 

Bottleneck layers:

尽管每次只增加k个,但是到后来还是很大,所以,采用Bottleneck,即BN-ReLU-Conv变成 BN-ReLU-Conv(1×1)-BN-ReLU-Conv(3×3),中间用1×1来降维,通常变成4k

 

Compression

中间是BN-Conv(1×1)- AverPooling(2×2)组成的。这里也可以降维 比如降维一半。

 

Discuss

考察filter在不同channel上的绝对值平均值,来看filter是否足够中意这个feature map:

论文笔记:Densely Connected Convolutional Networks

1.同一block中的每一层在多个输入上都有权值。这说明在同一个block中,最早期提取的特征也会被最后的层直接利用到。

2.transition layers在几乎所有输入上都有权值。这说明DenseNet网络中第一层的信息也可以间接传输到最后一层。

3.第二和第三个block中的层都在前面transition layers产生的特征上分配了最少的权重。这说明transition layers的输出中有很多冗余特征,DenseNet-BC通过压缩这些输出获得了更好的性能也说明了这一点。

4.最终的分类层更多的利用了最后的一些特征图,这可能是因为最后部分的层会生成更高层的特征(更具有区分能力)。