yolo检测核心组件1:SE注意力机制 (Squeeze-and-Excitation) yolo检测核心组件1SE注意力机制 (Squeeze-and-Excitation)[!abstract] 论文信息标题: Squeeze-and-Excitation Networks作者: Jie Hu, Li Shen, Gang Sun年份: 2018会议: CVPR 2018核心贡献: 通道注意力机制动态调整通道权重一、核心思想SE注意力的核心: 学习每个通道的重要性 传统卷积: ┌─────────────────────────────────────┐ │ 所有通道同等重要 │ │ 输出 卷积(输入) │ └─────────────────────────────────────┘ SE注意力: ┌─────────────────────────────────────┐ │ 学习每个通道的权重 │ │ 输出 卷积(输入) × 通道权重 │ └─────────────────────────────────────┘ 直觉理解: - 不同通道提取不同的特征边缘、纹理、形状等 - 对于不同任务不同通道的重要性不同 - SE模块让网络自动学习通道的重要性二、SE模块结构SE模块结构: 输入特征图 (C×H×W) │ ▼ ┌─────────────────────────────────────┐ │ Squeeze (压缩) │ │ 全局平均池化 │ │ C×H×W → C×1×1 │ │ │ │ 将每个通道压缩为一个值 │ │ 代表该通道的全局信息 │ └─────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────┐ │ Excitation (激励) │ │ 全连接层 → ReLU → 全连接层 → Sigmoid │ │ C×1×1 → C/r×1×1 → C×1×1 │ │ │ │ r是缩放因子通常r16 │ │ 学习通道间的非线性关系 │ │ 输出0~1的通道权重 │ └─────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────┐ │ Scale (缩放) │ │ 输入特征图 × 通道权重 │ │ C×H×W × C×1×1 → C×H×W │ │ │ │ 对每个通道加权 │ │ 重要通道权重接近1 │ │ 不重要通道权重接近0 │ └─────────────────────────────────────┘ │ ▼ 输出特征图 (C×H×W)三、数学公式SE模块的数学表达: 1. Squeeze (全局平均池化): z_c (1/H×W) × Σ(i,j) u_c(i,j) 其中: - u_c: 第c个通道的特征图 - z_c: 第c个通道的全局描述符 - H, W: 特征图的高和宽 2. Excitation (门控机制): s σ(W₂ × ReLU(W₁ × z)) 其中: - z: 全局描述符向量 (C×1) - W₁: 第一个全连接层 (C/r × C) - W₂: 第二个全连接层 (C × C/r) - σ: Sigmoid函数 - r: 缩放因子 (通常r16) 3. Scale (加权): x̃_c s_c × u_c 其中: - s_c: 第c个通道的权重 - u_c: 第c个通道的特征图 - x̃_c: 加权后的特征图四、代码实现importtorchimporttorch.nnasnnclassSEBlock(nn.Module):SE注意力模块def__init__(self,channels,reduction16):super(SEBlock,self).__init__()# Squeeze: 全局平均池化self.avg_poolnn.AdaptiveAvgPool2d(1)# Excitation: 门控机制self.fcnn.Sequential(nn.Linear(channels,channels//reduction,biasFalse),nn.ReLU(inplaceTrue),nn.Linear(channels//reduction,channels,biasFalse),nn.Sigmoid())defforward(self,x):b,c,_,_x.size()# Squeezeyself.avg_pool(x).view(b,c)# Excitationyself.fc(y).view(b,c,1,1)# Scalereturnx*y.expand_as(x)五、在YOLO中的应用SE模块在YOLO中的应用: 1. YOLOv5: - 在C3模块中可选使用SE - 通过配置文件启用 2. YOLOv8: - 在某些变体中使用SE - 作为注意力机制的选项 3. 改进YOLO: - 可以在骨干网络中添加SE模块 - 提升特征表达能力SE模块的插入位置不要只关注SE模块能否加入YOLO更应通过实验比较不同插入位置的效果Backbone骨干网络增强高层语义特征的通道表达能力可能带来额外的推理延迟Neck特征融合网络对多尺度特征融合通常更有意义适合重点关注不同尺度目标的检测任务Head前检测头之前可能有助于分类特征的筛选对边界框定位的提升未必稳定需要通过消融实验验证建议在相同数据集和训练配置下分别比较上述插入位置并记录mAP、参数量、FLOPs和FPS综合评估精度与部署成本。六、优缺点优点✅ 简单有效: 结构简单易于实现 ✅ 通道建模: 有效建模通道间关系 ✅ 即插即用: 可以添加到任何网络 ✅ 计算量小: 增加的计算量很小缺点❌ 只关注通道: 没有考虑空间信息 ❌ 全局池化: 可能丢失空间细节 ❌ 缩放因子: 需要手动设置r参考SENet论文

相关新闻

最新新闻

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现 【免费下载链接】serenity The Serenity Operating System 🐞 项目地址: https://gitcode.com/GitHub_Trending/se/serenity 导读 本文以 getopt(3) 手册 为核心&a…

2026/9/23 4:54:42
轻量服务器还是ECS?大促云服务器选购与避坑实战指南

轻量服务器还是ECS?大促云服务器选购与避坑实战指南

每年大促节点,群里永远有人在问同一个问题:“38元的轻量服务器到底怎么抢?为什么我每次点进去都是已售罄?68元直购和99元的ECS我到底选哪个?”作为一个常年帮团队和自己采购云服务器的老用户,我太清楚这种纠…

2026/9/24 14:25:52
为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南 【免费下载链接】agents Multi-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity 项目地址:…

2026/9/24 14:49:33
PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署 【免费下载链接】PaddleOCR Turn any PDF or image document into structured data for your AI. A powerful, lightweight OCR toolkit that bridges the gap between i…

2026/9/23 8:01:38
Spring源码解析:构造器注入的类型转换与候选匹配机制

Spring源码解析:构造器注入的类型转换与候选匹配机制

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 14:28:18
openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由 【免费下载链接】openai-agents-python A lightweight, powerful framework for multi-agent workflows 项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-pyth…

2026/9/24 11:09:24

日新闻

周新闻