当前位置: 首页 > news >正文

上海百度整站优化服务微网站制作电话

上海百度整站优化服务,微网站制作电话,seo视频,专门做市场调查的网站Day 49 训练 CBAM注意力模块详解与实践#xff1a;给CNN装上智能眼镜一、CBAM是什么#xff1f;二、CBAM的组成模块1. 通道注意力模块#xff08;Channel Attention Module#xff09;2. 空间注意力模块#xff08;Spatial Attention Module#xff09; 三、… Day 49 训练 CBAM注意力模块详解与实践给CNN装上智能眼镜一、CBAM是什么二、CBAM的组成模块1. 通道注意力模块Channel Attention Module2. 空间注意力模块Spatial Attention Module 三、CBAM的优势四、CBAM的实际应用 CBAM注意力模块详解与实践给CNN装上智能眼镜 在深度学习的视觉任务中如何让模型更精准地关注图像中的关键部分一直是研究热点。今天我们就来深入探索CBAMConvolutional Block Attention Module注意力模块它就像给卷积神经网络CNN装上了智能眼镜能让模型同时学会关注什么和关注哪里。 一、CBAM是什么 CBAM是一种即插即用的注意力模块可以无缝集成到任何CNN架构中。它的核心目标是通过学习的方式自动获取特征图在通道和空间维度上的重要性进而对特征图进行自适应调整——增强重要特征抑制不重要特征从而提升模型的特征表达能力和性能。 与之前介绍的SE通道注意力相比CBAM的突破在于 SE仅关注哪些通道重要CBAM不仅关注通道重要性还定位关键特征在图像中的具体位置 这种双重注意力机制让模型能同时回答两个关键问题我应该关注图像中的哪些特征通道注意力“和我在图像的哪个位置找到这些关键特征空间注意力”。 二、CBAM的组成模块 CBAM由两个主要部分组成二者顺序连接共同作用于输入特征图 1. 通道注意力模块Channel Attention Module 通道注意力模块的作用是分析哪些通道的特征更关键。以图像中的颜色、纹理通道为例不同通道可能包含不同的重要信息。 实现原理 使用全局平均池化和全局最大池化将每个通道的特征图压缩为1×1保留通道间的统计信息通过共享的全连接层学习通道间的关系使用Sigmoid函数将输出映射到0-1之间作为各通道的权重 class ChannelAttention(nn.Module):def __init__(self, in_channels, ratio16):super().__init__()self.avg_pool nn.AdaptiveAvgPool2d(1)self.max_pool nn.AdaptiveMaxPool2d(1)self.fc nn.Sequential(nn.Linear(in_channels, in_channels // ratio, biasFalse),nn.ReLU(),nn.Linear(in_channels // ratio, in_channels, biasFalse))self.sigmoid nn.Sigmoid()def forward(self, x):b, c, h, w x.shapeavg_out self.fc(self.avg_pool(x).view(b, c))max_out self.fc(self.max_pool(x).view(b, c))attention self.sigmoid(avg_out max_out).view(b, c, 1, 1)return x * attention2. 空间注意力模块Spatial Attention Module 空间注意力模块的作用是定位关键特征在图像中的具体位置例如物体所在区域。 实现原理 对输入特征图进行通道维度的平均池化和最大池化将两种池化结果拼接后通过卷积层提取空间特征使用Sigmoid函数得到空间注意力权重 class SpatialAttention(nn.Module):def __init__(self, kernel_size7):super().__init__()self.conv nn.Conv2d(2, 1, kernel_size, paddingkernel_size//2, biasFalse)self.sigmoid nn.Sigmoid()def forward(self, x):avg_out torch.mean(x, dim1, keepdimTrue)max_out, _ torch.max(x, dim1, keepdimTrue)pool_out torch.cat([avg_out, max_out], dim1)attention self.conv(pool_out)return x * self.sigmoid(attention)CBAM模块就是将这两个注意力模块串联起来先进行通道注意力调整再进行空间注意力调整 class CBAM(nn.Module):def __init__(self, in_channels, ratio16, kernel_size7):super().__init__()self.channel_attn ChannelAttention(in_channels, ratio)self.spatial_attn SpatialAttention(kernel_size)def forward(self, x):x self.channel_attn(x)x self.spatial_attn(x)return x三、CBAM的优势 轻量级设计仅增加少量计算量全局池化简单卷积适合嵌入各种CNN架构如ResNet、YOLO即插即用无需修改原有模型主体结构直接作为模块插入卷积层之间双重优化同时提升通道和空间维度的特征质量尤其适合复杂场景如小目标检测、语义分割 四、CBAM的实际应用 我们通过在CIFAR-10数据集上的实验展示如何将CBAM模块集成到CNN模型中并观察其效果。 class CBAM_CNN(nn.Module):def __init__(self):super(CBAM_CNN, self).__init__()# 第一个卷积块带CBAMself.conv1 nn.Conv2d(3, 32, kernel_size3, padding1)self.bn1 nn.BatchNorm2d(32)self.relu1 nn.ReLU()self.pool1 nn.MaxPool2d(kernel_size2)self.cbam1 CBAM(in_channels32) # 添加CBAM# 第二个卷积块带CBAMself.conv2 nn.Conv2d(32, 64, kernel_size3, padding1)self.bn2 nn.BatchNorm2d(64)self.relu2 nn.ReLU()self.pool2 nn.MaxPool2d(kernel_size2)self.cbam2 CBAM(in_channels64) # 添加CBAM# 第三个卷积块带CBAMself.conv3 nn.Conv2d(64, 128, kernel_size3, padding1)self.bn3 nn.BatchNorm2d(128)self.relu3 nn.ReLU()self.pool3 nn.MaxPool2d(kernel_size2)self.cbam3 CBAM(in_channels128) # 添加CBAM# 全连接层self.fc1 nn.Linear(128 * 4 * 4, 512)self.dropout nn.Dropout(p0.5)self.fc2 nn.Linear(512, 10)def forward(self, x):# 各卷积块均包含CBAM模块x self.conv1(x)x self.bn1(x)x self.relu1(x)x self.pool1(x)x self.cbam1(x) # 应用CBAMx self.conv2(x)x self.bn2(x)x self.relu2(x)x self.pool2(x)x self.cbam2(x) # 应用CBAMx self.conv3(x)x self.bn3(x)x self.relu3(x)x self.pool3(x)x self.cbam3(x) # 应用CBAMx x.view(-1, 128 * 4 * 4)x self.fc1(x)x self.relu3(x)x self.dropout(x)x self.fc2(x)return x通过训练这个集成CBAM的CNN模型我们在CIFAR-10数据集上观察到明显的性能提升。训练过程中的准确率和损失变化如下图所示 CBAM注意力模块为CNN模型提供了一种强大的特征增强方式。通过同时关注通道重要性和空间位置它显著提升了模型对关键特征的捕捉能力。 在实际应用中我们可以在各种CNN架构中集成CBAM模块 在目标检测任务中帮助模型更精准地定位物体在语义分割任务中提升对不同区域特征的区分能力在图像分类任务中增强对关键判别特征的关注
http://www.w-s-a.com/news/88271/

相关文章:

  • 网站开发公司+重庆wordpress自定义搜索界面
  • 梅州南站学校官网
  • 网站变灰代码 所有浏览器企业邮箱域名怎么填写
  • 网站建设哪好旅行社网站模板
  • 网站开发发展存在的问题交换链接营销的经典案例
  • 烟台高端网站建设公司福田市网站建设推广
  • 做网站如何保证询盘数量智慧城市
  • 大连网站平台研发wordpress更改地址
  • 做标书要不要做网站南昌网站排名优化费用
  • 网站内容如何自动关联新浪微博万网域名信息
  • 网站出售网络推广服务费计入什么科目
  • 宁波咨询网站设计西安网站制作开发
  • 深圳市专注网站建设全网营销网络推广
  • 如何快速建设网站虚拟空间软件
  • 一个虚拟主机可以做几个网站免费软件下载中心
  • 美工培训网站中国建筑网官网手机版
  • 创建网站花钱吗谁能给个网址免费的
  • 宁波教育学会网站建设网站建设价格由什么决定
  • 北京定制网站价格wordpress上传pdf文档
  • 网站建设费税率dz论坛seo设置
  • 推销网站话术商业网站开发与设计
  • 金华网站建设哪个网站做欧洲旅行比较好
  • 东莞市住房和城乡建设局网站trswcm网站建设
  • 郑州做网站企业h5编辑器免费版
  • 加强公司窗口网站建设陕西省外省入陕建筑信息平台
  • 成都网站优化实战大连企业网站建设模板
  • 服务器硬件影响网站速度seo网站推广价格
  • 学院网站开发竞争对手分析买网站送域名
  • 手机网站 jsp个人网页制作成品代码五个页面
  • ppt做长图网站wordpress文章页面图片自动适应