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

简介: 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





相关文章
|
前端开发 JavaScript UED
Svelte:下一代前端框架的革命性选择
Svelte:下一代前端框架的革命性选择
492 0
Svelte:下一代前端框架的革命性选择
|
存储 移动开发 Android开发
HarmonyOS应用开发者高级认证(88分答案)
HarmonyOS应用开发者高级认证(88分答案)
5026 0
|
6月前
|
人工智能 弹性计算 机器人
炸了!OpenClaw部署钉钉AI员工,新手 5 分钟一次成功
OpenClaw(Clawdbot)是现代化RPA平台,支持零代码部署钉钉AI员工。新手5分钟即可完成配置,实现自动化任务与智能群聊交互。一键部署链接
1078 3
|
缓存 Java Sentinel
Springboot 中使用 Redisson+AOP+自定义注解 实现访问限流与黑名单拦截
Springboot 中使用 Redisson+AOP+自定义注解 实现访问限流与黑名单拦截
|
容器
99. [HarmonyOS NEXT 实战案例:音乐播放器] 基础篇 - 水平分割布局打造音乐播放器界面
在移动应用开发中,音乐播放器是一个经典的应用场景。一个好的音乐播放器界面不仅需要美观,还需要功能区域划分清晰,操作便捷。本教程将详细讲解如何使用HarmonyOS NEXT的`RowSplit`组件构建一个音乐播放器界面,通过水平分割布局将界面分为专辑封面区域和播放控制区域。
363 3
|
机器学习/深度学习 小程序 安全
让小程序开口说话:DeepSeek语音交互开发指南
本文介绍如何利用DeepSeek语音交互技术构建智能语音助手,涵盖从安装声音采集设备、训练语言理解模型到设计语音控制界面的全过程。通过生活化场景,如深夜查找教程、旅行中寻找餐厅等,展示如何实现自然对话。此外,还深入探讨多轮对话记忆、情感计算及智能家居控制等进阶功能,帮助开发者创建会倾听、善思考的语音应用。最后,提供性能优化与安全防护建议,引领读者进入人机共生的新时代。
|
数据安全/隐私保护 开发者
p文件 破解与防破解技术
p文件 解密机主要功能包括pcode解密、p文件解码、p文件还原m文件、p转m文件、exe文件解密,exe文件还原为m文件
p文件 破解与防破解技术
|
人工智能 缓存 Java
深入解析Spring AI框架:在Java应用中实现智能化交互的关键
【10月更文挑战第12天】Spring AI 是 Spring 框架家族的新成员,旨在满足 Java 应用程序对人工智能集成的需求。它支持自然语言处理、图像识别等多种 AI 技术,并提供与云服务(如 OpenAI、Azure Cognitive Services)及本地模型的无缝集成。通过简单的配置和编码,开发者可轻松实现 AI 功能,同时应对模型切换、数据安全及性能优化等挑战。
1369 4
|
前端开发 PHP
ThinkPHP6布局的方式之模板布局,全局配置方式,模板标签方式,动态方法布局
本文介绍了ThinkPHP6中实现模板布局的三种方式:全局配置方式、模板标签方式和动态方法布局,并通过示例代码展示了如何在项目中应用这些布局方式。
ThinkPHP6布局的方式之模板布局,全局配置方式,模板标签方式,动态方法布局
|
SQL 关系型数据库 MySQL
MySQL - IS NOT NULL 和 != NULL 的区别?
MySQL - IS NOT NULL 和 != NULL 的区别?
1305 0

热门文章

最新文章