深度学习:DenseNet思想总结

前言

论文中提出的架构为了确保网络层之间的最大信息流,将所有层直接彼此连接。为了保持前馈特性,每个层从前面的所有层获得额外的输入,并将自己的特征映射传递到后面的所有层。该论文基于这个观察提出了以前馈的方式将每个层与其他层连接的密集卷积网络(DenseNet)。

DenseNet

ResNet

在原始的神经网络中,假设第l层的function 为 H l H_l Hl,那么第l层的output x l = H l ( x l − 1 ) x_l=H_l(x_{l-1}) xl=Hl(xl1),ResNet在网络中加入了identity mapping的机制,于是 x l = H ( x l − 1 ) + x l − 1 x_l = H(x_{l-1})+x_{l-1} xl=H(xl1)+xl1
ResNet的优势是缓解了梯度消失,让训练更稳定,但是 identity mapping 采用了add 融合的机制,可能会阻碍信息流动。

Dense connection

在这里插入图片描述

为了进一步的优化信息流动,作者提出了不同的连接形式如上图,每一层的输出都会直接传递到的后面所有网络,每一层的输入汇聚了前层所有的输出,这也是densenet的dense的由来,公式如下:
x l = H l ( [ x 0 , x 1 . . . . . . x l − 1 ] ) x_l= H_l([x_0,x_1......x_{l-1}]) xl=Hl([x0,x1......xl1])
其中跨层连接不在像ResNet采用add融合而是Concat融合,feature map

Composite function

这里作者对H()做了一个解释:这个函数分为三个操作,包括BN层,ReLU激活函数,3 * 3 Conv。

Pooling layers

在这里插入图片描述
由于跨层连接要求feature map的宽高一致,但是down- sampling在网络中也是必不可少的,所以引入了pooling layer(也叫做 transition layer)来对feature map下采样,这个网络层由 BN层 +1 * 1Conv +2 * 2 的average pooling layers。

Growth rate

这里我们定义了一个超参数k,他表示dense block中每层的channels数(也是卷积核的数量),假设dense block中input channels 为 k0,那么这个block第 l层的channels为k0+k(l-1)。k越大,代表每一层可以获得多少新的信息,block最后output的channels也就越大,于是我们把 k也叫做 growth rate。

Bottleneck layers

bottleneck 与resent的基本一致,没3 * 3 的Conv前面引入了 1 * 1的 Conv,那么我们定一个新的结构:
BN+ReLU+ 1 * 1Conv + BN +ReLU +Conv3 * 3叫做DenseNet-B。

Compression

没了进一步压缩模型,我们可以减少feature map的数量在 transition层,如果densenet block的output为 m 个feature map,那么通过transition后,channels变为theta * m,其中 theta为0到1之间的数。作者在实验中theta设置为0.5,把bottleneck+transition 叫做 DenseNet -BC。

Implementation Details

在这里插入图片描述

总结

  1. DenseNet的跨层连接为concat,ResNet为add。
  2. DenseNet提升了梯度的利用率,loss可以获得前面每一层的梯度,网络的层数更多了。
  3. DenseNet致力于特征reuse,提高网络性能。
  4. DenseNet的dense connection有正则化的作用。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HanZee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值