DenseNet、MobileNet、DPN…你都掌握了吗?一文总结图像分类必备经典模型(三)

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: DenseNet、MobileNet、DPN…你都掌握了吗?一文总结图像分类必备经典模型

SENet


SENet 是 ImageNet 2017 的冠军模型,正式论文发表在 CVPR 2018。SENet 引入通道注意力机制,对通道进行加权,这不是引入一个新的空间维度来进行特征通道间的融合,而是采用了一种全新的“特征重标定”策略,此外,SENet 是即插即用的。因此,和ResNet 的出现类似,SENet 在很大程度上减小了之前模型的错误率,并且降低了复杂度,新增参数和计算量小。SENet的全称是 Squeeze-and-Excitation Networks,即压缩和激励网络。

SENet 和 ResNet 很相似,但比 ResNet 做得更多。ResNet 只是增加了一个跳跃连接(skip connection),而 SENet 在相邻两层之间加入了处理,使得通道之间的信息交互成为可能,进一步提高了网络的准确率。此外,SENet 可以随意插入到任何网络中,提升效果非常显著。

SENet 主要由两部分组成:

  1. Squeeze 部分。即为压缩部分,原始 feature map 的维度为 H x W x C,其中 H 是高度(Height),W 是宽度(width),C 是通道数(channel)。Squeeze 做的事情是把 H x W x C 压缩为 1x1xC,相当于把 HW 压缩成一维了,实际中一般是用global average pooling 实现的。HW 压缩成一维后,相当于这一维参数获得了之前 HW 全局的视野,感受区域更广。
  2. Excitation 部分。得到 Squeeze 的 1x1xC 的表示后,加入一个 FC 全连接层(Fully Connected),对每个通道的重要性进行预测,得到不同通道的重要性大小后再作用(激励)到之前的 feature map 的对应通道上,再进行后续操作。

这两部分的作用分别是:

  1. Squeeze 的影响。我们观察到,全局信息的使用对模型的性能有很大的影响,强调了 squeeze 操作的重要性。此外,与 NoSqueeze 设计相比,SENet 的 SE(Squeeze-and-Excitation)块允许以一种计算简单的方式使用这种全局信息。
  2. Excitation 的作用。SE 块产生了特定于实例的反应,但其功能是支持模型在架构中不同层的越来越多的特定类别需求。

图 7 给出了 SE 构建块的结构。对于任何给定的转换 F_tr 将输入 X 映射到特征图 U。U 首先通过挤压(Squeeze)操作,通过在其空间维度(H×W)上聚集特征图,产生一个通道描述符。这个描述符的功能是产生一个通道式特征响应的全局分布的嵌入,使网络的全局感应域的信息能够被其所有层使用。聚合之后是激励(Excitation)操作,其形式是一个简单的自门控机制,将嵌入作为输入,并产生一个每个通道调制权重的集合。这些权重被应用于特征图 U,以产生 SE 块的输出,可以直接输入网络的后续层。


图7 Squeeze-and-Excitation(SE)块


通过简单地堆叠 SE 块的集合,就可以构建一个 SE 网络(SENet)。此外,这些SE块还可以在网络结构中的一系列深度上作为原始块的投放替代物。虽然构件的模板是通用的,但它在整个网络的不同深度所发挥的作用是不同的。在早期层中,它以一种与类别无关的方式激发信息特征,加强共享的低层次表征。在后面的层中,SE 块变得越来越专门化,并以高度特定的方式对不同的输入作出反应。因此,由 SE 块执行的特征重新校准的好处可以通过网络累积。

通过在每次卷积之后的非线性变换之后插入,可以将SE块集成到很多模型中,例如VGGNet。而且,SE 块的灵活性意味着它可以直接应用于标准卷积以外的转换。为了说明这一点,作者通过将 SE 块合并到一些更复杂的体系结构示例中来开发 SENet,如图18 和图 19 所示。



图8 原始 Inception 模块(左)和 SEInception 模块(右)的模式


图9 原始的 Residual 模块(左)和 SEResNet 模块(右)


对 Inception 网络的 SE 块的构造。只需将转换 F_tr 作为整个 Inception 模块(见图18),通过对架构中的每一个这样的模块做这样的改变,可以得到一个 SE-Inception 网络。SE 块也可以直接用于 Residual 网络(图 9 描述了一个 SE-ResNet 模块的模式)。这里,SE 块变换 F_tr 被认为是一个 Residual 模块的非同一性分支。挤压和激励都是在与身份分支相加之前发生作用。


当前 SOTA!平台收录 SENet 共 15 个模型实现资源,支持的主流框架包含 CANN、PyTorch、MindSpore、PaddlePaddle、TensorFlow 等。


模型 SOTA!平台模型详情页
SENet 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/models/models/c7dfc0ec-ee5d-4d85-866d-0b4ac306e1ff





相关文章
|
4月前
|
机器学习/深度学习 PyTorch 算法框架/工具
Pytorch CIFAR10图像分类 Swin Transformer篇(一)
Pytorch CIFAR10图像分类 Swin Transformer篇(一)
|
4月前
|
机器学习/深度学习 数据可视化 算法
Pytorch CIFAR10图像分类 Swin Transformer篇(二)
Pytorch CIFAR10图像分类 Swin Transformer篇(二)
|
9月前
|
机器学习/深度学习 数据挖掘 PyTorch
图像分类经典神经网络大总结(AlexNet、VGG 、GoogLeNet 、ResNet、 DenseNet、SENet、ResNeXt )
图像分类经典神经网络大总结(AlexNet、VGG 、GoogLeNet 、ResNet、 DenseNet、SENet、ResNeXt )
1147 0
图像分类经典神经网络大总结(AlexNet、VGG 、GoogLeNet 、ResNet、 DenseNet、SENet、ResNeXt )
|
11月前
|
机器学习/深度学习 人工智能 并行计算
深度学习应用篇-计算机视觉-图像分类[2]:LeNet、AlexNet、VGG、GoogleNet、DarkNet模型结构、实现、模型特点详细介绍
深度学习应用篇-计算机视觉-图像分类[2]:LeNet、AlexNet、VGG、GoogleNet、DarkNet模型结构、实现、模型特点详细介绍
深度学习应用篇-计算机视觉-图像分类[2]:LeNet、AlexNet、VGG、GoogleNet、DarkNet模型结构、实现、模型特点详细介绍
|
11月前
|
PyTorch 算法框架/工具 异构计算
Pytorch实现经典模型AlexNet模型
Pytorch实现经典模型AlexNet模型
70 0
|
12月前
|
机器学习/深度学习 人工智能 搜索推荐
DenseNet、MobileNet、DPN…你都掌握了吗?一文总结图像分类必备经典模型(四)
DenseNet、MobileNet、DPN…你都掌握了吗?一文总结图像分类必备经典模型
137 0
|
12月前
|
机器学习/深度学习 编解码 PyTorch
DenseNet、MobileNet、DPN…你都掌握了吗?一文总结图像分类必备经典模型(二)
DenseNet、MobileNet、DPN…你都掌握了吗?一文总结图像分类必备经典模型(二)
123 0
|
12月前
|
机器学习/深度学习 编解码 人工智能
EfficientNet、ShuffleNet、NFNet…你都掌握了吗?一文总结图像分类必备经典模型(五)
EfficientNet、ShuffleNet、NFNet…你都掌握了吗?一文总结图像分类必备经典模型
314 0
|
12月前
|
机器学习/深度学习 编解码 自然语言处理
EfficientNet、ShuffleNet、NFNet…你都掌握了吗?一文总结图像分类必备经典模型(三)
EfficientNet、ShuffleNet、NFNet…你都掌握了吗?一文总结图像分类必备经典模型(三)
151 0
EfficientNet、ShuffleNet、NFNet…你都掌握了吗?一文总结图像分类必备经典模型(三)
|
12月前
|
机器学习/深度学习 编解码 算法
EfficientNet、ShuffleNet、NFNet…你都掌握了吗?一文总结图像分类必备经典模型(四)
EfficientNet、ShuffleNet、NFNet…你都掌握了吗?一文总结图像分类必备经典模型(三)
196 0