DenseNet

发布时间:2020-11-23  栏目:人工智能, 深度学习  评论:0 Comments

DenseNet模型,它的基本思路与ResNet一致,但是它建立的是前面所有层与后面层的密集连接(dense connection),它的名称也是由此而来。DenseNet的另一大特色是通过特征在channel上的连接来实现特征重用(feature reuse)。这些特点让DenseNet在参数和计算成本更少的情形下实现比ResNet更优的性能,DenseNet也因此斩获CVPR 2017的最佳论文奖。

DenseNet

DenseNet的网络结构主要由DenseBlock和Transition组成,如下图所示:

DenseNet2

在DenseBlock中,各个层的特征图大小一致,可以在channel维度上连接。DenseBlock中的非线性组合函数 [公式] 采用的是BN+ReLU+3×3 Conv的结构,如图所示。另外值得注意的一点是,与ResNet不同,所有DenseBlock中各个层卷积之后均输出 [公式] 个特征图,即得到的特征图的channel数为 [公式] ,或者说采用 [公式] 个卷积核。 [公式] 在DenseNet称为growth rate,这是一个超参数。一般情况下使用较小的 [公式] (比如12),就可以得到较佳的性能。假定输入层的特征图的channel数为 [公式] ,那么 [公式] 层输入的channel数为 [公式] ,因此随着层数增加,尽管 [公式] 设定得较小,DenseBlock的输入会非常多,不过这是由于特征重用所造成的,每个层仅有 [公式] 个特征是自己独有的。

对于Transition层,它主要是连接两个相邻的DenseBlock,并且降低特征图大小。Transition层包括一个1×1的卷积和2×2的AvgPooling,结构为BN+ReLU+1×1 Conv+2×2 AvgPooling。另外,Transition层可以起到压缩模型的作用。假定Transition的上接DenseBlock得到的特征图channels数为 [公式] ,Transition层可以产生 [公式] 个特征(通过卷积层),其中 [公式] 是压缩系数(compression rate)。当 [公式] 时,特征个数经过Transition层没有变化,即无压缩,而当压缩系数小于1时,这种结构称为DenseNet-C,文中使用 [公式] 。对于使用bottleneck层的DenseBlock结构和压缩系数小于1的Transition组合结构称为DenseNet-BC。

Comments are closed.

相册集

pix pix pix pix pix pix

关于自己

杨文龙,微软Principal Engineering Manager, 曾在各家公司担任影像技术资深总监、数据科学团队资深经理、ADAS算法总监、资深深度学习工程师等职位,热爱创新发明,专注于人工智能、深度学习、图像处理、机器学习、算法、自然语言处理及软件等领域,目前发明有国际专利19篇,中国专利28篇。

联系我

个人技术笔记

welonshen@gmail.com

2015 in Shanghai