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

北京网站建设公司分享网站改版注意事项贵州省住房城乡建设部网站

北京网站建设公司分享网站改版注意事项,贵州省住房城乡建设部网站,虚拟主机wordpress不能用,山东网站建设工作室#x1f468;‍#x1f4bb;作者简介#xff1a; 大数据专业硕士在读#xff0c;CSDN人工智能领域博客专家#xff0c;阿里云专家博主#xff0c;专注大数据与人工智能知识分享。 #x1f389;专栏推荐#xff1a; 目前在写CV方向专栏#xff0c;更新不限于目标检测、… ‍作者简介 大数据专业硕士在读CSDN人工智能领域博客专家阿里云专家博主专注大数据与人工智能知识分享。 专栏推荐 目前在写CV方向专栏更新不限于目标检测、OCR、图像分类、图像分割等方向目前活动仅19.9虽然付费但会长期更新感兴趣的小伙伴可以关注下➡️专栏地址 学习者福利 强烈推荐一个优秀AI学习网站包括机器学习、深度学习等理论与实战教程非常适合AI学习者。➡️网站链接。 技术控福利程序员兼职社区招募靠谱覆盖技术范围广CV、NLP均可Pyhton、matlab各类编程语言, 有意向者➡️访问。 导读本篇为注意力机制系列第二篇主要介绍注意力机制中的通道注意力机制对通道注意力机制方法进行详细讲解会对重点论文会进行标注 * 并配上论文地址和对应代码。 注意力机制详解系列目录 1️⃣注意力机制详解系列一注意力机制概述 2️⃣注意力机制详解系列二通道注意力机制 3️⃣注意力机制详解系列三空间注意力机制待更新 4️⃣注意力机制详解系列四混合与时域注意力机制待更新 5️⃣注意力机制详解系列五注意力机制总结待更新 1.通道注意力机制 通道注意力机制模型总结 通道注意力机制在计算机视觉中更关注特征图中channel之间的关系而普通的卷积会对通道做通道融合这个开山鼻祖是SENet,后面有GSoP-NetFcaNet 对SENet中的squeeze部分改进EACNet对SENet中的excitation部分改进SRM,GCT等对SENet中的scale部分改进。 通道注意力机制模型对比 对应论文链接 论文缩写论文名称 | 链接权重范围论文投稿SE BlockSqueeze-and-Excitation Networks(0,1)CVPR2018GSoP BlockGlobal Second-order Pooling Convolutional Networks(0,1)CVPR2019SRM BlockSRM : A Style-based Recalibration Module for Convolutional Neural Networks(0,1)ICCV2019GCT BlockGated Channel Transformation for Visual Recognition(0,1)CVPR2020ECA BlockECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks(0,1)CVPR2020Fca BlockFcaNet: Frequency Channel Attention Networks(0,1)ICCV2021Enc BlockContext Encoding for Semantic Segmentation(-1,1)CVPR2018 1.SENet 论文https://arxiv.org/abs/1709.01507 Githubhttps://github.com/hujie-frank/SENet https://github.com/moskomule/senet.pytorch SENet是CVPR17年的一篇文章提出。在卷积神经网络中卷积操作更多的是关注感受野在通道上默认为是所有通道的融合深度可分离卷积不对通道进行融合但是没有学习通道之间的关系其主要目的是为了减少计算量SENet提出SE模块通过学习的方式自动获取每个特征通道的重要程度学习到不同通道之间的权重,并且利用得到的重要程度来提升特征并抑制对当前任务不重要的特征。 SE模块主要由三部分组成squeeze、excitation和scale。实现步骤如下 总体概述 1Squeeze通过全局平均池化将每个通道的二维特征H*W压缩为1个实数将特征图从 [h, w, c] [1,1,c] 2excitation给每个特征通道生成一个权重值论文中通过两个全连接层构建通道间的相关性输出的权重值数目和输入特征图的通道数相同。[1,1,c] [1,1,c] 3Scale将前面得到的归一化权重加权到每个通道的特征上。论文中使用的是乘法逐通道乘以权重系数。[h,w,c]*[1,1,c] [h,w,c] 在这种方式下每一个样本都会有自己独立的一组权重。换言之任意的两个样本它们的权重都是不一样的。在SENet中获得权重的具体路径是“全局池化→全连接层→ReLU函数→全连接层→Sigmoid函数”。 详细解释 第一步首先对h* w* c大小的feature map 做squeeze操作将其变成1 * 1 * c大小这一步原文中使用简单粗暴的GAP(全局平均池化) 第二步excitation操作对1 * 1 * c的特征图经过两次全连接特征图大小1 * 1 * c→1 * 1 * 3→1* 1 * c再对1 * 1* c的特征图做sigmoid将值限制到[0,1]范围内 第三步scale,将1 * 1 * c的特征权重图与输入的h * w * c的feature map在通道上相乘完成SE模块的通道注意力机制。 值得注意的是在squeeze部分作者使用的是最简单的全局平均池化的方式主要原因是作者基于通道的整体信息关注通道之间的相关性而不是空间分布的相关性也尽可能的屏蔽掉空间分布信息在excitation部分作者通过两个全连接实现1 * 1 * c2→1 * 1 * c3→1 * 1 * c2第一个全连接层将c2压缩到c3用于计算量减少在原文中作者做实验后发现c3c2/16时能实现性能和计算量的平衡。 SE模型同Inception可以即插即用理论上可以安插在任意一个卷积后面简单方便只会增加一点参数量和计算量。 SENet的实现代码如下 class SELayer(nn.Module):def __init__(self, channel, reduction1):super(SELayer, self).__init__()self.avg_pool nn.AdaptiveAvgPool2d(1)self.fc1 nn.Sequential(nn.Linear(channel, channel / reduction),nn.ReLU(inplaceTrue),nn.Linear(channel / reduction, channel),nn.Sigmoid())self.fc2 nn.Sequential(nn.Conv2d(channel , channel / reduction, 1, biasFalse)nn.ReLU(inplaceTrue),nn.Conv2d(channel / reduction, channel, 1, biasFalse)nn.Sigmoid())def forward(self, x):b, c, _, _ x.size()y self.avg_pool(x).view(b, c)y self.fc1(y).view(b, c, 1, 1)return x * ySE模块插入Resnet代码 class SEBottleneck(nn.Module):expansion 4def __init__(self, inplanes, planes, stride1, downsampleNone, reduction16):super(SEBottleneck, self).__init__()self.conv1 nn.Conv2d(inplanes, planes, kernel_size1, biasFalse)self.bn1 nn.BatchNorm2d(planes)self.conv2 nn.Conv2d(planes, planes, kernel_size3, stridestride,padding1, biasFalse)self.bn2 nn.BatchNorm2d(planes)self.conv3 nn.Conv2d(planes, planes * 4, kernel_size1, biasFalse)self.bn3 nn.BatchNorm2d(planes * 4)self.relu nn.ReLU(inplaceTrue)self.se SELayer(planes * 4, reduction)self.downsample downsampleself.stride stridedef forward(self, x):residual xout 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 residualout self.relu(out)return outGSoP-Net 论文https://arxiv.org/abs/1811.12006 github:https://github.com/ZilinGao/Global-Second-order-Pooling-Convolutional-Networks SE模块中squeeze部分用的是全局平均池化GSoP-Net的主要创新点是将一阶全局平均池化替换成二阶池化主要操作为对输入为hwc‘的特征图先通过卷积降维到hwc,然后通道之间两两计算相关性得到cc的协方差矩阵第i行元素表明第i i个通道和其他通道的统计层面的依赖。由于二次运算涉及到改变数据的顺序因此对协方差矩阵执行逐行归一化保留固有的结构信息。然后通过激励模块对协方差特征图做非线性逐行卷积得到11*4c的特征信息后面同SENet。相对于SNet,增加了全局的统计建模。 FcaNet 论文http://arxiv.org/abs/2012.11879 github: https://github.com/cfzd/FcaNet FCANet主要也是更新SE模块中squeeze部分作者设计了一种新的高效多谱通道注意力框架。该框架在GAP是DCT的一种特殊形式的基础上在频域上推广了GAP通道注意力机制提出使用有限制的多个频率分量代替只有最低频的GAP。通过集成更多频率分量不同的信息被提取从而形成一个多谱描述。此外为了更好进行分量选择作者设计了一种二阶段特征选择准则在该准则的帮助下提出的多谱通道注意力框架达到了SOTA效果。 ECA-Net 论文: https://arxiv.org/pdf/1910.03151 代码: https://github.com/BangguWu/ECANet ECANet介绍 ECANet主要对SENet模块进行了一些改进提出了一种不降维的局部跨信道交互策略ECA模块和自适应选择一维卷积核大小的方法使得通道数较大的层可以更多地进行跨通道交互从而实现了性能上的提优。 ECANet主要对SENet中的excitation部分改进SENet采用的降维操作会对通道注意力的预测产生负面影响且获取依赖关系效率低且不必要因此提出了一种针对CNN的高效通道注意力(ECA)模块避免了降维有效地实现了跨通道交互。 ECANet通过大小为 k 的快速一维卷积实现其中核大小k表示局部跨通道交互的覆盖范围即有多少领域参与了一个通道的注意预测 同时为了避免通过交叉验证手动调整 k开发了一种自适应方法确定 k其中跨通道交互的覆盖范围 (即核大小k) 与通道维度成比例 。 这里 表示最近的奇数t。本文中将γ设置为2b设置为1。 ECANet实现流程 1将输入特征图经过全局平均池化特征图从 [h,w,c] 的矩阵变成 [1,1,c] 的向量 2根据特征图的通道数计算得到自适应的一维卷积核大小 kernel_size 3将 kernel_size 用于一维卷积中得到对于特征图的每个通道的权重 4将归一化权重和原输入特征图逐通道相乘生成加权后的特征图 核心ECA 注意力机制模块直接在全局平均池化层之后使用1x1卷积层去除了全连接层。该模块避免了维度缩减并有效捕获了跨通道交互。并且ECANet 只涉及少数参数就能达到很好的效果。 ECANet实战代码 #ECANet使用1D卷积代替SE注意力机制中的全连接层 import torch from torch import nn import math from torchstat import stat # 查看网络参数# 定义ECANet的类 class eca_block(nn.Module):# 初始化, in_channel代表特征图的输入通道数, b和gama代表公式中的两个系数def __init__(self, in_channel, b1, gama2):# 继承父类初始化super(eca_block, self).__init__()# 根据输入通道数自适应调整卷积核大小kernel_size int(abs((math.log(in_channel, 2)b)/gama))# 如果卷积核大小是奇数就使用它if kernel_size % 2:kernel_size kernel_size# 如果卷积核大小是偶数就把它变成奇数else:kernel_size kernel_size# 卷积时为例保证卷积前后的size不变需要0填充的数量padding kernel_size // 2# 全局平均池化输出的特征图的宽高1self.avg_pool nn.AdaptiveAvgPool2d(output_size1)# 1D卷积输入和输出通道数都1卷积核大小是自适应的self.conv nn.Conv1d(in_channels1, out_channels1, kernel_sizekernel_size,biasFalse, paddingpadding)# sigmoid激活函数权值归一化self.sigmoid nn.Sigmoid()# 前向传播def forward(self, inputs):# 获得输入图像的shapeb, c, h, w inputs.shape# 全局平均池化 [b,c,h,w][b,c,1,1]x self.avg_pool(inputs)# 维度调整变成序列形式 [b,c,1,1][b,1,c]x x.view([b,1,c])# 1D卷积 [b,1,c][b,1,c]x self.conv(x)# 权值归一化x self.sigmoid(x)# 维度调整 [b,1,c][b,c,1,1]x x.view([b,c,1,1])# 将输入特征图和通道权重相乘[b,c,h,w]*[b,c,1,1][b,c,h,w]outputs x * inputsreturn outputsSRM 论文: https://arxiv.org/pdf/1903.10829 代码:https://github.com/hyunjaelee410/style-based-recalibration-module SRM受风格迁移的启发对SENet中的squeeze和excitation部分进行更新 提出了一种基于style的重新校准模块SRM)可以通过利用其style自适应地重新校准中间特征图。SRM首先通过样式池从特征图的每个通道中提取样式信息然后通过与通道无关的style集成来估计每个通道的重新校准权重。 给定一个输入特征特征图大小为C × H × W SRM首先通过结合全局平均池和全局标准差池化的风格式池化收集全局信息。然后使用通道全连接层即每个通道全连接、批量归一化BN和sigmoid函数σ来提供注意力向量。最后与SE块一样输入特征乘以注意力向量。它利用输入特征的均值和标准差来提高捕获全局信息的能力。为了降低计算层CFC的完全连接要求在全连接的地方也采用了CFC。通过将各个style的相对重要性纳入特征图SRM有效地增强了CNN的表示能力。重点是轻量级引入的参数非常少同时效果还优于SENet.。 GCT 论文: GCT 代码: https://github.com/z-x-yang/GCT GCT是由百度提出一种通用且轻量型变化单元结合了归一化和注意力机制分析通道之间的相互关系竞争or协作对SENet中的squeeze、excitation和scale部分进行更新在squeeze部分中使用L2 norm进行了global context embeding同时在excitation中仍然使用L2 norm 对通道归一化在scale中通过设置权重γ和偏置β来控制通道特征是否激活。当一个通道的特征权重γc被正激活GCT将促进这个通道的特征和其它通道的特征“竞争”。当一个通道的特征 γc 被负激活GCT将促进这个通道的特征和其它通道的特征“合作”。 参考论文 [1] Squeeze-and-Excitation Networks[2] Global Second-order Pooling Convolutional Networks[3] FcaNet: Frequency Channel Attention Networks[4] ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks[5] SRM : A Style-based Recalibration Module for Convolutional Neural Networks[6] Gated Channel Transformation for Visual Recognition[7] Recurrent Models of Visual Attention 具体链接见对应介绍 总结 本篇主要介绍注意力机制中的通道注意力机制对通道注意力机制方法进行详细讲解通道注意力机制在计算机视觉中更关注特征图中channel之间的关系重点对SENet、ECANe进行重点讲解下篇将对空间注意力机制展开详细介绍.
http://www.hkea.cn/news/14460939/

相关文章:

  • 杏坛餐饮网站建站机关门户网站 建设 方案
  • 某企业电子商务网站建设网站建设规范布局
  • 网站制作是不是要一个后台asp用什么软件编写
  • 四川省建设网塔吊证查询网站凡客诚品金金
  • 建立网站流程图公司建设网站的申请报告
  • 淘宝客的网站是自己做的吗做英语陪同翻译兼职的网站
  • 外贸公司建网站一般多少钱单页面网站推广
  • 网站 一般 用什么空间汕头澄海玩具厂
  • 时代创信网站设计 北京网站备案域名更改吗
  • 建好网站后如何向里面加东西德州加盟网站建设
  • 加强局网站建设wordpress restfulapi
  • 杭州专业网站建设网站建设怎么在图片上加字
  • 网站所有权包括wordpress tag多条件选择
  • 长春网站建设致电吉网传媒优求主题wordpress源码
  • 石家庄seo网站优化公司上海公布最新情况
  • 卫生系统网站的建设和维护青岛网站建设工作室织梦模板
  • 如何建设小说网站互联网品牌推广
  • 做网站总费用阆中网站网站建设
  • 安徽公路建设行业协会网站wordpress 在线人数
  • 中英文切换网站开发电子商务成功的网站
  • 吴中网站开发建设多少钱搜索引擎营销分类
  • 网站后台管理系统制作软件免费网站建站页面
  • 提升学历正规渠道如何优化seo关键词
  • 深圳市城乡住房和建设局网站首页找资料的免费网站
  • 网站国外建设免费只做网站
  • 模板网站的缺点长沙网站创建
  • 网站建设夬金手指排名壹陆wordpress贴内幻灯片
  • 建网站建设的基本流程大学的一级或二级域名
  • 网站开发 英文在自己的网站做外链
  • 《网页设计与网站建设》上海优化网站公司哪家好