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

淘宝客网站主免费静态网页源码

淘宝客网站主,免费静态网页源码,livezilla wordpress,手机app软件开发流程一、本文介绍 本文给大家带来的改进机制是YOLOv10提出的PSA注意力机制#xff0c;自注意力在各种视觉任务中得到了广泛应用#xff0c;因为它具有显著的全局建模能力。然而#xff0c;自注意力机制表现出较高的计算复杂度和内存占用。为了解决这个问题#xff0c;鉴于注意… 一、本文介绍 本文给大家带来的改进机制是YOLOv10提出的PSA注意力机制自注意力在各种视觉任务中得到了广泛应用因为它具有显著的全局建模能力。然而自注意力机制表现出较高的计算复杂度和内存占用。为了解决这个问题鉴于注意力头冗余的普遍存在我们提出了一种高效的部分自注意力PSA模块设计其能够在不显著增加计算成本的情况下提升YOLO模型的性能本文附其网络结构图辅助大家理解该结构同时本文包含YOLOv8添加该注意力机制的方法 欢迎大家订阅我的专栏一起学习YOLO 专栏目录YOLOv5改进有效涨点目录 | 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制 ​ 目录 一、本文介绍 二、PSA介绍 三、PSA核心代码  四、手把手教你添加PSA注意力机制 4.1 PSA添加步骤 4.1.1 修改一 4.1.2 修改二 4.1.3 修改三  4.1.4 修改四 4.2 PSA的yaml文件 4.3 训练截图  五、本文总结 二、PSA介绍 ​ 论文地址官方论文地址点击此处即可跳转 代码地址官方代码地址点击此处即可跳转 ​ 自注意力在各种视觉任务中得到了广泛应用因为它具有显著的全局建模能力。然而自注意力机制表现出较高的计算复杂度和内存占用。为了解决这个问题鉴于注意力头冗余的普遍存在我们提出了一种高效的部分自注意力PSA模块设计如图3(c)所示。 具体来说我们通过1×1卷积将特征均匀地划分为两部分。然后我们仅将其中一部分输入到由多头自注意力模块MHSA和前馈网络FFN组成的NPSA块中。两部分特征随后被连接并通过1×1卷积融合。此外我们遵循将MHSA中查询和键的维度分配为值的一半并将LayerNorm替换为BatchNorm以加快推理速度。 PSA仅在分辨率最低的Stage 4之后放置以避免自注意力二次复杂性带来的过多开销。通过这种方式可以在低计算成本下将全局表示学习能力引入YOLO模型从而增强模型能力并提高性能。 通过这些精度驱动的设计我们能够在不显著增加计算成本的情况下提升YOLO模型的性能。 三、PSA核心代码  核心代码的使用方式看章节四 import torch import torch.nn as nn__all__ [PSA]def autopad(k, pNone, d1): # kernel, padding, dilationPad to same shape outputs.if d 1:k d * (k - 1) 1 if isinstance(k, int) else [d * (x - 1) 1 for x in k] # actual kernel-sizeif p is None:p k // 2 if isinstance(k, int) else [x // 2 for x in k] # auto-padreturn pclass Conv(nn.Module):Standard convolution with args(ch_in, ch_out, kernel, stride, padding, groups, dilation, activation).default_act nn.SiLU() # default activationdef __init__(self, c1, c2, k1, s1, pNone, g1, d1, actTrue):Initialize Conv layer with given arguments including activation.super().__init__()self.conv nn.Conv2d(c1, c2, k, s, autopad(k, p, d), groupsg, dilationd, biasFalse)self.bn nn.BatchNorm2d(c2)self.act self.default_act if act is True else act if isinstance(act, nn.Module) else nn.Identity()def forward(self, x):Apply convolution, batch normalization and activation to input tensor.return self.act(self.bn(self.conv(x)))def forward_fuse(self, x):Perform transposed convolution of 2D data.return self.act(self.conv(x))class Attention(nn.Module):def __init__(self, dim, num_heads8,attn_ratio0.5):super().__init__()self.num_heads num_headsself.head_dim dim // num_headsself.key_dim int(self.head_dim * attn_ratio)self.scale self.key_dim ** -0.5nh_kd nh_kd self.key_dim * num_headsh dim nh_kd * 2self.qkv Conv(dim, h, 1, actFalse)self.proj Conv(dim, dim, 1, actFalse)self.pe Conv(dim, dim, 3, 1, gdim, actFalse)def forward(self, x):B, _, H, W x.shapeN H * Wqkv self.qkv(x)q, k, v qkv.view(B, self.num_heads, -1, N).split([self.key_dim, self.key_dim, self.head_dim], dim2)attn ((q.transpose(-2, -1) k) * self.scale)attn attn.softmax(dim-1)x (v attn.transpose(-2, -1)).view(B, -1, H, W) self.pe(v.reshape(B, -1, H, W))x self.proj(x)return xclass PSA(nn.Module):def __init__(self, c1, c2, e0.5):super().__init__()assert (c1 c2)self.c int(c1 * e)self.cv1 Conv(c1, 2 * self.c, 1, 1)self.cv2 Conv(2 * self.c, c1, 1)self.attn Attention(self.c, attn_ratio0.5, num_headsself.c // 64)self.ffn nn.Sequential(Conv(self.c, self.c * 2, 1),Conv(self.c * 2, self.c, 1, actFalse))def forward(self, x):a, b self.cv1(x).split((self.c, self.c), dim1)b b self.attn(b)b b self.ffn(b)return self.cv2(torch.cat((a, b), 1)) 四、手把手教你添加PSA注意力机制 4.1 PSA添加步骤 4.1.1 修改一 首先我们找到如下的目录yolov5-master/models然后在这个目录下在创建一个新的目录然后这个就是存储改进的仓库大家可以在这里新建所有的改进的py文件对应改进的文件名字可以根据你自己的习惯起(不影响任何但是下面导入的时候记住改成你对应的即可)然后将PSA的核心代码复制进去。 ​ 4.1.2 修改二 然后在新建的目录里面我们在新建一个__init__.py文件(此文件大家只需要建立一个即可)然后我们在里面添加导入我们模块的代码。注意标记一个.其作用是标记当前目录。 ​​ ​ 4.1.3 修改三  然后我们找到如下文件models/yolo.py在开头的地方导入我们的模块按照如下修改- (如果你看了我多个改进机制此处只需要添加一个即可无需重复添加) 注意的添加位置要放在common的导入上面 ​​​​​ 4.1.4 修改四 然后我们找到parse_model方法按照如下修改- ​ 到此就修改完成了复制下面的ymal文件即可运行。 4.2 PSA的yaml文件 保持和YOLOv10相同的使用方法 # YOLOv5 v6.0 backbone backbone:# [from, number, module, args][[-1, 1, Conv, [64, 6, 2, 2]], # 0-P1/2[-1, 1, Conv, [128, 3, 2]], # 1-P2/4[-1, 3, C3, [128]],[-1, 1, Conv, [256, 3, 2]], # 3-P3/8[-1, 6, C3, [256]],[-1, 1, Conv, [512, 3, 2]], # 5-P4/16[-1, 9, C3, [512]],[-1, 1, Conv, [1024, 3, 2]], # 7-P5/32[-1, 3, C3, [1024]],[-1, 1, SPPF, [1024, 5]], # 9[-1, 1, PSA, [1024]], # 10]# YOLOv5 v6.0 head head: [[-1, 1, Conv, [512, 1, 1]],[-1, 1, nn.Upsample, [None, 2, nearest]],[[-1, 6], 1, Concat, [1]], # cat backbone P4[-1, 3, C3, [512, False]], # 14[-1, 1, Conv, [256, 1, 1]],[-1, 1, nn.Upsample, [None, 2, nearest]],[[-1, 4], 1, Concat, [1]], # cat backbone P3[-1, 3, C3, [256, False]], # 18 (P3/8-small)[-1, 1, Conv, [256, 3, 2]],[[-1, 15], 1, Concat, [1]], # cat head P4[-1, 3, C3, [512, False]], # 21 (P4/16-medium)[-1, 1, Conv, [512, 3, 2]],[[-1, 11], 1, Concat, [1]], # cat head P5[-1, 3, C3, [1024, False]], # 24 (P5/32-large)[[18, 21, 24], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5)]4.3 训练截图  五、本文总结 到此本文的正式分享内容就结束了在这里给大家推荐我的YOLOv5改进有效涨点专栏本专栏目前为新开的平均质量分98分后期我会根据各种最新的前沿顶会进行论文复现也会对一些老的改进机制进行补充如果大家觉得本文帮助到你了订阅本专栏关注后续更多的更新~ 专栏目录YOLOv5改进有效涨点目录 | 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制
http://www.pierceye.com/news/553826/

相关文章:

  • 网站开发背景知识论文网页设计表格
  • 广州优秀网站建设怎么寻找国外客户资源
  • 松江新城投资建设集团有限公司网站华能电子商务平台
  • 网站建设设计制作公司微网站微商城
  • 长宁企业网站建设个人做外贸怎么做
  • 饲料 东莞网站建设免费推广app
  • 手机平台网站开发品牌网站设计首选
  • 哪些网站可以做调查赚钱图片生成软件
  • 网站空间的管理wordpress vip system
  • 新思维网站北京住房建设部网站首页
  • 温州网站制作套餐麒麟网站建设
  • 淘宝接单做网站wordpress能做企业网站吗
  • 网站建设运营公众号运营合同app网站开发书籍下载
  • 网站seo流程网站开发开账务处理
  • 婚介网站方案长沙网络公司电话
  • 自助网站搭建系统做网站接电话一般要会什么
  • 雷州网站建设公司网站建设与管理说课ppt
  • 问答类网站怎么做wordpress 调取页面缩略图
  • 做电影资源网站手机版wordpress实例配置
  • 广西网站建设方案品牌官网方案
  • 游戏工作室网络组建方案seo81
  • 搭建个人网站的步骤温州专业微网站制作价格
  • 网站怎么做充值系统php图书管理系统网站开发
  • 多商家网站建设自助建站系统源码 资源网
  • 广州番禺网站制作公司哪家好文章网站建设
  • 漯河网站建设e辽宁身营商环境建设局网站
  • 营销网站建设套餐企业信息公示管理系统
  • 网站布局设计排版网站外部链接做多少合适呢
  • 成品网站 源码1688上海网站建设 找德华专业
  • 网站建设费用申报佛山电脑培训班哪里有