DenseNet 论文阅读笔记

Densely Connected Convolutional Networks

原文链接

摘要

研究表明,如果卷积网络在接近输入和接近输出地层之间包含较短地连接,那么,该网络可以显著地加深,变得更精确并且能够更有效地训练。该论文基于这个观察提出了以前馈地方式将每个层与其它层连接地密集卷积网络(DenseNet)

如上所述,所提出的网络架构中,两个层之间都有直接的连接,因此该网络的直接连接个数为\(\frac{L(L+1)}{2}\)。对于每一层,使用前面所有层的特征映射作为输入,并且使用其自身的特征映射作为所有后续层的输入

DenseNet的优点: 缓解了消失梯度问题,加强了特征传播,鼓励特征重用,并大大减少了参数的数量

引言

当CNNs增加深度的时候,就会出现一个紧要的问题:当输入或者梯度的信息通过很多层之后,它可能会消失或过度膨胀。在本研究中提出的架构为了确保网络层之间的最大信息流,将所有层直接彼此连接。为了保持前馈特性,每个层从前面的所有层获得额外的输入,并将自己的特征映射传递给后面的所有层

示例(一个5层的密集块)

DenseNet 论文阅读笔记

该架构与ResNet相比,在将特性传递到层之前,没有通过求和来组合特性,而是通过连接它们的方式来组合特性。因此第x层(输入层不算在内)将有x个输入,这些输入是之前所有层提取出的特征信息。因为它的密集连接特性,研究人员将其称为Dense Convolutional Network (DenseNet)

因为不需要重新学习冗余特征图,这种密集连接模式相对于传统的卷积网络只需要更少的参数。传统的前馈体系结构可以看作是具有一种状态的算法,这种状态从一个层传递到另一个层。每个层从其前一层读取状态并将其写入后续层。它改变状态,但也传递需要保留的信息。研究提出的密集网络体系结构明确区分了添加到网络的信息和保留的信息。密集网层非常窄(例如,每层12个过滤器),仅向网络的“集体知识”添加一小组特征映射,并且保持其余特征映射不变,并且最终分类器基于网络中的所有特征映射做出决策
想法:能不能先学习图像中能够区别分类的地方,然后将该图像信息提取进行学习

除了参数更少,另一个DenseNets的优点是改进了整个网络的信息流和梯度,这使得它们易于训练。每个层直接访问来自损失函数和原始输入信号的梯度,带来了隐式深度监控。这使得训练深层网络变得更简单。此外,研究人员观察到密集连接具有规则化效果,这减少了对训练集较小的任务的过拟合

相关工作

Highway 网络是第一批提供了有效训练具有100多个层的端到端网络的架构之一。利用旁路和门控单元,可以毫无困难地优化具有数百层的Highway网络。旁路路径被认为是简化这些深层网络训练的关键因素。ResNets进一步支持这一点,其中纯identity映射用作旁路路径。ResNet表明随机深度是训练成功的一种方法,随机深度通过在训练过程中随机丢弃层来改进深度残差网络的训练。这表明,并非所有层都是需要的,并强调在深(剩余)网络中存在大量的冗余,该研究深受此想法的启发。使网络更深(例如,在跳过连接的帮助下)的正交方法是增加网络宽度,如GoogLeNet

DenseNets没有从极深或极宽的体系结构中汲取表示能力,而是通过特征重用来开发网络的潜力,从而产生易于训练和高参数效率的浓缩模型。由不同层学习的连接特征图增加了后续层输入的变化,提高了效率。这构成了DenseNets和ResNets之间的主要区别

DenseNets

对于一个卷积网络,假设输入图像\(x_0\)。该网络包含 \(L\) 层,每一层都实现了一个非线性变换\(H_i(.)\),其中\(i\)表示第\(i\)层。\(H_i(.)\)可以是一个组合操作,如:BN,ReLU,Pooling或者Conv。将第i层的输出记作\(x_i\)

Dense connectivity

为了进一步改善层之间的信息流,研究者提出了不同的连接模式:引入从任何层到所有后续层的直接连接

结果,第 \(i\) 层得到了之前所有层的特征映射\(x_0, x_1, ... ,x_{i-1}\)作为输入
\[ x_i = H_i([x_0, x_1, ... , x_{i-1}]) \]
\([x_0, x_1, ... , x_{i-1}]\)表示特征映射的级联

Composite function

定义\(H_i(.)\)为一个三个连续操作的组合函数:BN, ReLU, 3*3卷积(Conv)

Pooling Layers

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zydxps.html