SENet(2017)

卷积核作为卷积神经网络的核心,通常被看作是在局部感受野上,将空间上(spatial)的信息和特征维度上(channel-wise)的信息进行聚合的信息聚合体。卷积神经网络由一系列卷积层、非线性层和下采样层构成,这样它们能够从全局感受野上去捕获图像的特征来进行图像的描述。
在这里插入图片描述
去学到一个性能非常强劲的网络是相当困难的,从空间维度层面来提升网络的性能,如Inception结构中嵌入了多尺度信息,聚合多种不同感受野上的特征来获得性能增益;在Inside-Outside网络中考虑了空间中的上下文信息;将Attention机制引入到空间维度上等。
在这里插入图片描述
Squeeze-and-Excitation Networks(简称 SENet)显示的建模特征通道之间的相互依赖关系。采用全新的特征重标定策略,即通过学习的方式来自动获取到每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大的特征。
在这里插入图片描述
Squeeze-and-Excitation(SE)block并不是一个完整的网络结构,而是一个子结构,可以嵌到其他分类或检测模型中,作者采用SENet block和ResNeXt结合在ILSVRC2017分类项目中拿到第一,在ImageNet数据集上将top-5 error降低到2.251%,原先的最好成绩是2.991%。

作者在文中将SENet block插入到现有的多种分类网络中,都取得了不错的效果。SENet的核心思想在于通过网络根据loss去学习特征权重,使得有效的feature map权重大,无效或效果小的feature map权重小的方式训练模型达到更好的结果。当然,SE block嵌在原有的一些分类网络中不可避免的增加了一些参数和计算量,但是在效果面前还是可以接受的。

下图是SE模块的示意图,给定一个输入 x x x,其特征通道数为 c 1 c_1 c1​,通过一系列卷积等一般变换后得到一个特征通道数为 c 2 c_2 c2​的特征。
在这里插入图片描述

Squeeze操作顺着空间维度来进行特征压缩,将每个二维的特征通道变成一个实数,这个实数某种程度上具有全局的感受野,并且输出的维度和输入的特征通道数像匹配。它表征着在特征通道上响应的全局分布,而且使得靠近输入的层也可以获得全局感受野,这在很多任务中都非常重要。
在这里插入图片描述

Excitation操作是一个类似于循环神经网络中门的机制。通过参数 w w w来为每个特征通道生成权重,其中参数 w w w被学习用来显示的建模特征通道间的相关性。
在这里插入图片描述

Reweight操作,将Excitation的输出的权重看作是进过特征选择后的每个特征通道的重要性,然后通过乘法逐通道加权到先前的特征上,完成在通道维度上的对原始特征的重标定。
在这里插入图片描述

在这里插入图片描述
下图是将SE模块嵌入到Inception结构的一个示例,方框旁边的维度信息代表该层的输出。这里使用global average pooling作为squeeze操作,紧接着两个Fully Connected层组成一个Bottleneck结构取构建通道间的相关性,并输出和输入特征同样数目的权重。

  • 首先将特征维度降低到输入的1/16。
  • 然后经过ReLU激活函数后再通过一个Fully Connected层升回到原来的维度。这样做比直接用一个Fully Connected层的好处在于:
    • 具有更多的非线性,可以更好的拟合通道间复杂的相关性;
    • 极大的减少了参数量和计算量。然后通过一个Sigmoid的门获得0~1之间归一化的权重。
  • 最后通过一个Scale的操作来将归一化后的权重加权到每个通道的特征上。

下图右图是将SE嵌入到ResNet模块中的一个例子,操作过程基本和SE-Inception一样,只不过是在Addition前对分支上Residual的特征进行了特征重标定。如果对Addition后主支上的特征进行重标定,由于在主干上存在0~1的scale操作,在网络较深BP优化时就会在靠近输入层容易出现梯度消散的情况,导致模型难以优化。
在这里插入图片描述

目前大多数的主流网络都是基于这两种类似的单元通过repeat方式叠加起来构造的。由此可见,SE模块可以嵌入到现在几乎所有的网络结构中。通过在原始网络结构的building block单元中嵌入SE模块,可以获得不同种类的SENet。
在这里插入图片描述
在这里插入图片描述
SE模块很容易嵌入到其它网络中,作者为了验证SE模块的作用,在其它流行网络如ResNet和VGG中引入SE模块,测试其在ImageNet上的效果,如下表所示:
在这里插入图片描述
可以看到所有网络在加入SE模块后分类准确度均有一定的提升。此外,作者还测试了SE模块在轻量级网络MobileNet和ShuffleNet上的效果,如下表所示,可以看到也是有效果提升的。
在这里插入图片描述
最终作者采用了一系列的SENet进行集成,在ImageNet测试集上的top-5 error为2.251%,赢得了2017年竞赛的冠军。其中最关键的模型是SENet-154,其建立在ResNeXt模型基础上,效果如下表所示:
在这里插入图片描述

另外,由于在现有的GPU实现中,都没有对global pooling和较小计算量的Fully Connected进行优化,这导致在GPU上的运行时间SE-ResNet-50相对于ResNet-50有着约10%的增长。尽管如此,其理论增长的额外计算量仅仅不到1%,这与其在CPU运行时间上的增长相匹配(~2%)。可以看出,在现有网络架构中嵌入SE模块而导致额外的参数和计算量的增长微乎其微。
在这里插入图片描述

class SELayer(nn.Module):
    def __init__(self, channel, recution=16):
        super(SELayer, self).__init__()
        self.avg_pool = nn.AdaptiveAvgPool2d(1)
        self.fc = nn.Sequential(
            nn.Linear(channel, channel // reduction, bias=False),
            nn.ReLU(inplace=True),
            nn.Linear(channel // reduction, channel, bias=False),
            nn.Sigmoid()
        )
    def forward(self, x):
        b, c, _, = x.size()
        y = self.avg_pool(x).view(b, c)
        y = self.fc(y).view(b, c, 1, 1)
        return x * y.expand_as(x)
class SEBottleneck(nn.Module):
    expansion = 4
    def __init__(self, inplanes, planes, stride=1, downsample=None, reduction=16):
        super(SEBottleneck, self).__init__()
        self.conv1 = nn.Conv2d(inplanes, planes, kernel_size=1, bias=False)
        self.bn1 = nn.BatchNorm2d(planes)
        self.conv2 = nn.Conv2d(planes, planes, kernel_size=3, stride=stride, padding=1, bias=False)
        self.bn2 = nn.BatchNorm2d(planes)
        self.conv3 = nn.Conv2d(planes, planes * 4, kernel_size=1, bias=False)
        self.bn3 = nn.BatchNorm2d(planes * 4)
        self.relu = nn.ReLU(inplace=True)
        self.se = SELayer(planes * 4, reduction)
        self.downsample = downsample
        self.stride = stride
    def foward(self, x):
        residual = x
        out = self.conv1(x)
        out = self.bn1(out)
        out = self.relu(out)
         
        out = self.conv2(out)
        out = self.bn2(out)
        out = self.relu(out)
        
        out = self.conv3(out)
        out = self.bn3(out)
        out = self.se(out)

        if self.downsample is not None:
            residual = self.downsample(x)

        out += residual
        out = self.relu(out)

        return out

参考资料
深度学习——分类之SENet
Momenta详解ImageNet 2017夺冠架构SENet
最后一届ImageNet冠军模型:SENet
SENet(Squeeze-and-Excitation Networks)算法笔记—通过学习的方式来自动获取到每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大…
Momenta详解ImageNet 2017夺冠架构SENet

SENet(ILSVRC2017-最后一个冠军) 1、论文信息 Squeeze-and-Excitation Networks JieHu&LiShen等 Momenta & University of Oxford (VGG组) CVPR2018 2、论文背景 【1】CVPR 2018引用第一的论文 【2】ILSVRC 2017分类冠军 cifar-10/100, Places365, COCO, ImageNet-l K数据集均超越主流模型 【3】较早的将注意力机制引入卷积神经网络, 并且该机制是一种即插即用的模块,可嵌 入任意主流的卷 阅读详情

相关推荐

OpenWRT端口转发与NAT环回冲突的排查与解决

本文详细解析了OpenWRT路由器中端口转发与NAT环回功能冲突导致的内网访问故障。通过生活化类比阐明两者工作原理,提供从基础诊断到内核参数调整、LuCI选项配置及手动编写iptables规则的多套解决方案,并给出进阶排查思路,帮助用户彻底解决内网无法通过公网地址访问服务的常见问题。

weixin_29243279的博客 506

senet

论文阅读笔记---senet_xys430381_1的博客-优快云博客 概要 论文的动机是从特征通道之间的关系入手,希望显式地建模特征通道之间的相互依赖关系。另外,没有引入一个新的空间维度来进行特征通道间的融合,而是采用了一种全新的“特征重标定”策略。 SENet的核心思想在于通过网络根据loss去学习特征权重,使得有效的feature map权重大,无效或效果小的feature map权重小的方式训练模型达到更好的结果。具体来说,就是通过学习的方式来自动获取到每个特征通道的重要程度,然后依照这

qq_24876435的博客 181

Java实现双色球&大乐透随机选号算法——原理详解与代码实战

掌握核心语法:集合操作、随机数生成、排序。贴近实际场景:将编程知识应用于生活问题的解决。

wangchl0932的博客 4974

SENet

SENet的提出动机非常简单,传统的方法是将网络的Feature Map等权重的传到下一层,SENet的核心思想在于建模通道之间的相互依赖关系,通过网络的全局损失函数自适应的重新矫正通道之间的特征相应强度。 SENet由一些列SE block组成,一个SE block的过程分为Squeeze(压缩)和Excitation(激发)两个步骤。其中Squeeze通过在Feature Map层上执行Global Average Pooling得到当前Feature Map的全局压缩特征向量,Excitation通

qq_38701321的博客 290

基于OpenMV与双舵机云台的激光追踪系统实战解析

本文详细解析了基于OpenMV摄像头与双舵机云台的激光追踪系统设计与实现。从硬件选型、图像识别算法到PID控制逻辑,全面介绍了如何构建一个高效稳定的激光追踪系统,并分享了电子设计竞赛中的实战经验与调试技巧。该系统在智能玩具、安防监控及教学演示等领域具有广泛应用前景。

prometheus9mon的博客 261

无人机信号干扰系统设计方案

设计定向阻塞干扰器需要结合射频(RF)技术、功率放大技术和定向天线技术,核心目标是向特定方向发射高功率噪声信号,覆盖目标频段,阻断无人机的通信或导航信号。实际设计中需平衡功率、效率、散热和便携性,同时需考虑抗干扰技术的快速演进(如无人机加密通信和AI避障)。在合法框架下,此类设备可有效应对“黑飞”威胁,但技术滥用风险需严格管控。定向阻塞干扰器的硬件设计核心在于。

wanghao312的博客 3060

SENet解析

1 前言 在深度学习领域,CNN分类网络的发展对其它计算机视觉任务如目标检测和语义分割都起到至关重要的作用,因为检测和分割模型通常是构建在CNN分类网络(称为backbone)之上。提到CNN分类网络,我们所熟知的是VGG,ResNet,Inception,DenseNet等模型,它们的效果已经被充分验证,而且被广泛应用在各类计算机视觉任务上。这里我们介绍一篇CVPR2017的文章SENet,它赢得了最后一届ImageNet 2017竞赛分类任务的冠军。重要的一点是SENet思路很简单,很容易扩展在已有网络

m0_56192771的博客 9157

《物联网技术》课程笔记——第二章 物联网技术架构

文章目录第二章:物联网技术架构1 物联网技术体系(C3SD)2 系统体系结构的基本概念3 物联网体系结构——信息传递视角3.1物联网感知层3.1.1 感知层要解决的问题3.1.2 感知层的形态3.1.3 节点的感知能力与控制能力3.1.4 感知层实例3.2 物联网网络层3.2.1 网络相关概念3.2.2 IPV6与IPV4相比互联网协议的升级3.2.3 计算机网络的逻辑层次3.2.4 传输网的拓扑结构3.2.4.1 举例:智能小区的三表采集系统3.2.4.2 接入层3.2.4.2 汇聚层3.2.4.2 核心

南京大学软件工程硕士在读 2503

详解ImageNet 2017夺冠架构SENet

本文转载至机器之心专栏,作者:胡杰,原文地址:http://www.sohu.com/a/161633191_465975       本届 CVPR 2017大会上出现了很多值得关注的精彩论文,国内自动驾驶创业公司 Momenta 联合机器之心推出 CVPR 2017 精彩论文解读专栏。除此之外,Momenta 还受邀在 CVPR 2017 的 ImageNet Workshop 中发表演讲,介

Sweet_Harbour的博客 4986

基于大模型的自动驾驶智能体:Agent-Driver架构、训练与实战指南

自动驾驶系统正从传统的模块化流水线向以智能体为核心的新范式演进。其核心原理在于将车辆视为一个能够与环境持续交互的自主决策智能体,通过多模态感知、记忆管理和基于大模型的推理能力,实现对复杂交通场景的理解与应对。这一技术价值在于利用大模型的常识推理和泛化能力,有望解决传统方法在长尾场景下面临的挑战。在应用场景上,智能体驱动架构特别适合处理动态交互密集、需高层语义理解的城区驾驶、无保护转弯及突发状况应对。本文聚焦的Agent-Driver项目,正是这一方向的典型实践,它通过融合视觉、语言大模型与强化学习,构建了一

weixin_28729843的博客 529

IgH EtherCAT 从入门到精通:第 4 章 网络设备驱动选型与配置

摘要:本章详细介绍了EtherCAT主站网络设备驱动的选型与配置。IgH EtherCAT Master提供Generic通用驱动和Native原生驱动两种方案:Generic驱动通过Linux Socket接口实现,兼容性强但实时性较差;Native驱动通过修改网卡驱动绕过内核协议栈,具有更低延迟和更小抖动。文章具体分析了e1000/e1000e/igb/igc等Intel网卡驱动以及r8169/8139too等Realtek驱动的配置方法,并提供了驱动选型建议。对于实时性要求高的场景,推荐使用Nativ

从事嵌入式linux android驱动开发,拥有全栈能力 304

【转】专栏 | Momenta详解ImageNet 2017夺冠架构SENet

转自:http://www.sohu.com/a/161633191_465975 本届 CVPR 2017大会上出现了很多值得关注的精彩论文,国内自动驾驶创业公司 Momenta 联合机器之心推出 CVPR 2017 精彩论文解读专栏。除此之外,Momenta 还受邀在 CVPR 2017 的 ImageNet Workshop 中发表演讲,介绍 Momenta 在ImageNet 2017 ...

lanyuxuan100的博客 1385

通过Power Platform自定义D365 CE 业务需求 - 4. 使用Power Automate

Power Automate构建块Power Automate中的连接器流的类型和用途流中的动态值和表达式使用变量、循环和条件在Power Automate中处理审批业务场景、用例和实现Power Virtual Agent的概念Power Virtual Agent的构建块配置Power Virtual Agent示例在公共网站/门户中部署Power Virtual Agent业务场景、用例和实现。

Martin-Mei的博客 558

【图像分类】2017-SENet CVPR

WMW以极大的优势获得了最后一届 ImageNet 2017 竞赛 任务的冠军,SENet则主要关注通道上可做点,通过显示的对卷积层特征之间的通道相关性进行建模来提升模型的表征能力;并以此提出了特征重校准机制:通过使用全局信息去选择性的增强可信息化的特征并同时压缩那些无用的特征。可以嵌入到现在几乎所有的中。通过在原始网络结构的 building block 单元中嵌入 SE 模块,我们可以获得不同种类的 SENet。如 SE-BN-Inception、SE-ResNet、SE-ReNeXt、SE-Ince

wujing1_1的博客 341

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Momenta详解ImageNet 2017夺冠架构SENet

通道间的特征加权组合

zchang81的博客 1357

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SENet(CVPR2017)

此论文是由Momenta公司所作并发于2017 CVPR,论文中的SENet赢得了ImageNet最后一届(ImageNet 2017)的图像识别冠军。论文的核心点在对CNN中的feature channel(特征通道依赖性)利用和创新。 论文的动机是从特征通道之间的关系入手,希望显式地建模特征通道之间的相互依赖关系。另外,没有引入一个新的空间维度来进行特征通道间的融合,而是采用了一种全新的“特征...

heruili的博客 828

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

【目标检测】|2017 SENET

论文:《Squeeze-and-Excitation Networks》 论文链接:https://arxiv.org/abs/1709.01507 代码地址:https://github.com/hujie-frank/SENet PyTorch代码地址:https://github.com/miraclewkf/SENet-PyTorch 一、SENet概述 Squeeze-and-Excitation Networks(简称 SENet)是 Momenta 胡杰团队(WMW)提出的新的网

qq_35608277的博客 384

ImageNet 2017夺冠架构SENet

http://www.sohu.com/a/161633191_465975 这是国内自动驾驶创业公司 Momenta 联合机器之心推出 CVPR 2017 精彩论文解读专栏。

AI程序媛的博客 451

革命性注意力机制SENet.pytorch:ILSVRC 2017冠军算法完全解析

SENet.pytorch是基于PyTorch实现的Squeeze-and-Excitation Networks(SENet)模型,这是2017年ILSVRC图像分类竞赛的冠军算法。该项目通过创新的注意力机制显著提升了卷积神经网络的性能,目前已实现SE-ResNet(18、34、50、101、152/20、32)和SE-Inception-v3等多种模型架构。 ## 什么是SENet?为何它能

gitblog_01095的博客 429

SENet(Squeeze-and-Excitation Network)-ImageNet 2017夺冠架构SENet

原文链接:https://www.cnblogs.com/bonelee/p/9030092.html 我们从最基本的卷积操作开始说起。近些年来,卷积神经网络在很多领域上都取得了巨大的突破。而卷积核作为卷积神经网络的核心,通常被看做是在局部感受野上,将空间上(spatial)的信息和特征维度上(channel-wise)的信息进行聚合的信息聚合体。卷积神经网络由一系列卷积层、非线性层和下采样层构成,这样它们能够从全局感受野上去捕获图像的特征来进行图像的描述。 然而去学到一个性能非常强劲的网络是相当困难

peacefairy的博客 627

SENet详解

SENet是ImageNet 2017(ImageNet收官赛)的冠军模型,和ResNet的出现类似,都在很大程度上减小了之前模型的错误率(具体见附录),并且复杂度低,新增参数和计算量小。下面就来具体介绍一些SENet的神奇之处。 SENet的全称是Squeeze-and-Excitation Networks,中文可以翻译为压缩和激励网络。主要由两部分组成: 1. Squeeze部分。...

AI人工智能与大数据 4万+

SENet 详解

转自:http://www.sohu.com/a/161633191_465975我是 Momenta 的高级研发工程师胡杰,很高兴可以和大家分享我们的 SENet。借助我们提出的 SENet,我们团队(WMW)以极大的优势获得了最后一届 ImageNet 2017 竞赛 Image Classification 任务的冠军,并被邀请在 CVPR 2017 的 w...

Darlewo 3234

SEnet详解

我是 Momenta 的高级研发工程师胡杰,很高兴可以和大家分享我们的 SENet。借助我们提出的 SENet,我们团队(WMW)以极大的优势获得了最后一届 ImageNet 2017 竞赛 Image Classification 任务的冠军,并被邀请在 CVPR 2017 的 workshop(Beyond ImageNet)中给出算法介绍。下面我将介绍我们提出的 SENet,论文和代码会在近...

Lavi的专栏 1万+
上一篇: Involution-Convolution
下一篇: SKNet(2019)
studyeboy
博客等级 码龄15年 365粉丝 329原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值