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

如何给网站绑定域名wordpress菜单文件夹

如何给网站绑定域名,wordpress菜单文件夹,网站 被攻击_主业篡改 被黑了 织梦做的站,服装设计师前言#xff1a;Hello大家好#xff0c;我是小哥谈。GhostNet是一种针对计算机视觉任务的深度神经网络架构#xff0c;它于2020年由中国科学院大学的研究人员提出。GhostNet的设计目标是在保持高精度的同时#xff0c;减少模型的计算和存储成本。GhostNet通过引入Ghost模块… 前言Hello大家好我是小哥谈。GhostNet是一种针对计算机视觉任务的深度神经网络架构它于2020年由中国科学院大学的研究人员提出。GhostNet的设计目标是在保持高精度的同时减少模型的计算和存储成本。GhostNet通过引入Ghost模块来实现高效的网络设计Ghost模块是一种新颖的特征重用机制它可以在网络中引入更多的轻量级子网络这些子网络与主干网络以并行的方式连接通过共享卷积核来提高计算效率。GhostNet在ImageNet图像分类任务上取得了较好的性能并且在计算和存储方面比一些流行的网络模型如MobileNetV3和EfficientNet要更高效。因此GhostNet被认为是一种具有潜力的轻量级神经网络架构在计算资源有限的设备上具有广泛的应用前景。  前期回顾 YOLOv5算法改进1— 如何去改进YOLOv5算法 YOLOv5算法改进2— 添加SE注意力机制 YOLOv5算法改进3— 添加CBAM注意力机制 YOLOv5算法改进4— 添加CA注意力机制 YOLOv5算法改进5— 添加ECA注意力机制 YOLOv5算法改进6— 添加SOCA注意力机制 YOLOv5算法改进7— 添加SimAM注意力机制 YOLOv5算法改进8— 替换主干网络之MobileNetV3 YOLOv5算法改进9— 替换主干网络之ShuffleNetV2 目录 1.论文 2.GhostNet网络架构及原理 2.1 Ghost Module 2.2 Ghost Bottlenecks ​​​​​​​2.3 Ghostnet的构建 3.YOLOv5结合Ghostnet 步骤1在common.py中添加Ghostnet模块 步骤2在yolo.py文件中加入类名  步骤3创建自定义yaml文件  步骤4验证是否加入成功 步骤5修改train.py中的--cfg默认参数 1.论文 GhostNet是2019年由华为诺亚方舟实验室发布的轻量级网络速度和MobileNetV3相似但是识别的准确率比MobileNetV3高在ImageNet ILSVRC-2012分类数据集的达到了75.7%的top-1精度。该论文提除了Ghost模块通过廉价操作生成更多的特征图。基于一组原始的特征图作者应用一系列线性变换以很小的代价生成许多能从原始特征发掘所需信息的“Ghost”特征图Ghost feature maps。Ghost模块是一种即插即用的模块通过堆叠Ghost模块得出Ghost bottleneck进而搭建轻量级神经网络——GhostNet。 论文题目《GhostNet: More Features from Cheap Operations》 论文地址  https://arxiv.org/abs/1911.11907 代码实现  https://github.com/huawei-noah/Efficient-AI-Backbones/releases/tag/GhostNetV2 2.GhostNet网络架构及原理 ​​​​​​​​​​​​​​2.1 Ghost Module 通过上述的介绍我们了解到了GhostNet的核心思想就是使用一些计算量更低Cheap Operations的操作去生成这些冗余的特征图。在论文中作者设计了一个名为Ghost Module的模块他的功能是代替普通卷积。 Ghost Module将普通卷积分为两部分 首先进行一个普通的1x1卷积这是一个少量卷积比如正常使用32通道的卷积这里就用16通道的卷积这个1x1卷积的作用类似于特征整合生成输入特征层的特征浓缩。 然后我们再进行深度可分离卷积这个深度可分离卷积是逐层卷积它也就是论文上面提到的Cheap Operations。它利用上一步获得的特征浓缩生成Ghost特征图。 因此如果我们从整体上去看这个Ghost Module它其实就是两步简单思想的汇总 1利用1x1卷积获得输入特征的必要特征浓缩。 2利用深度可分离卷积获得特征浓缩的相似特征图Ghost。Ghost-Module分成三个步骤 1先通过普通的conv生成一些特征图。 2对生成的特征图进行cheap操作生成冗余特征图这步使用的卷积是DW 卷积。 3将conv生成的特征图与cheap操作生成的特征图进行concat操作。 如下图b所示展示了Ghost模块和普通卷积的过程。 ​​​​​​​2.2 Ghost Bottlenecks 实现了Ghost 模块接下来开始搭建 Ghost Bottlenecks。 Ghost Bottlenecks是由Ghost Module组成的瓶颈结构其实本质上就是用Ghost Module来代替瓶颈结构里面的普通卷积。 Ghost Bottlenecks可以分为两个部分分别是主干部分和残差边部分包含Ghost Module的我们称它为主干部分。 Ghost Bottlenecks有两个种类如下图所示当我们需要对特征层的宽高进行压缩的时候我们会设置这个Ghost Bottlenecks的Stride2即步长为2。此时我们会Bottlenecks里面多添加一些卷积层在主干部分里我们会在两个Ghost Module中添加一个步长为2x2的深度可分离卷积进行特征层的宽高压缩。在残差边部分我们也会添加上一个步长为2x2的深度可分离卷积和1x1的普通卷积。 接下来实现GhostNet。 ​​​​​​​2.3 Ghostnet的构建 GhostNet的参数结构参考论文中的图如下图 可以看到整个Ghostnet都是由Ghost Bottlenecks进行组成的。 当一张图片输入到Ghostnet当中时我们首先进行一个16通道的普通1x1卷积块卷积标准化激活函数。之后我们就开始Ghost Bottlenecks的堆叠了利用Ghost Bottlenecks我们最终获得了一个7x7x160的特征层当输入是224x224x3的时候。然后我们会利用一个1x1的卷积块进行通道数的调整此时我们可以获得一个7x7x960的特征层。之后我们进行一次全局平均池化然后再利用一个1x1的卷积块进行通道数的调整获得一个1x1x1280的特征层。然后平铺后进行全连接就可以进行分类了。 3.YOLOv5结合Ghostnet 步骤1在common.py中添加Ghostnet模块 将下面Ghostnet模块的代码复制粘贴到common.py文件的末尾。 class SeBlock(nn.Module):def __init__(self, in_channel, reduction4):super().__init__()self.Squeeze nn.AdaptiveAvgPool2d(1)self.Excitation nn.Sequential()self.Excitation.add_module(FC1, nn.Conv2d(in_channel, in_channel // reduction, kernel_size1)) # 1*1卷积与此效果相同self.Excitation.add_module(ReLU, nn.ReLU())self.Excitation.add_module(FC2, nn.Conv2d(in_channel // reduction, in_channel, kernel_size1))self.Excitation.add_module(Sigmoid, nn.Sigmoid())def forward(self, x):y self.Squeeze(x)ouput self.Excitation(y)return x * (ouput.expand_as(x))class G_bneck(nn.Module):# Ghost Bottleneck https://github.com/huawei-noah/ghostnetdef __init__(self, c1, c2, midc, k5, s1, use_se False): # ch_in, ch_mid, ch_out, kernel, stride, use_sesuper().__init__()assert s in [1, 2]c_ midcself.conv nn.Sequential(GhostConv(c1, c_, 1, 1), # ExpansionConv(c_, c_, 3, s2, p1, gc_, actFalse) if s 2 else nn.Identity(), # dw# Squeeze-and-ExciteSeBlock(c_) if use_se else nn.Sequential(),GhostConv(c_, c2, 1, 1, actFalse)) # Squeeze pw-linearself.shortcut nn.Identity() if (c1 c2 and s 1) else \nn.Sequential(Conv(c1, c1, 3, ss, p1, gc1, actFalse), \Conv(c1, c2, 1, 1, actFalse)) # 避免stride2时 通道数改变的情况def forward(self, x):# print(self.conv(x).shape)# print(self.shortcut(x).shape)return self.conv(x) self.shortcut(x)具体如下图所示 步骤2在yolo.py文件中加入类名  首先在yolo.py文件中找到parse_model函数这一行加入G_bneck模块。 步骤3创建自定义yaml文件  在models文件夹中复制yolov5s.yaml粘贴并重命名为yolov5s_Ghostnet.yaml。 然后根据Ghostnet的网络架构来修改配置文件。 yaml文件修改后的完整代码如下 # YOLOv5 by Ultralytics, GPL-3.0 license# Parameters nc: 80 # number of classes depth_multiple: 1.0 # model depth multiple width_multiple: 1.0 # layer channel multiple anchors:- [10,13, 16,30, 33,23] # P3/8- [30,61, 62,45, 59,119] # P4/16- [116,90, 156,198, 373,326] # P5/32# Ghostnet backbone backbone:# [from, number, module, args][[-1, 1, Conv, [16, 3, 2, 1]], # 0-P1/2 ch_out, kernel, stride, padding, groups[-1, 1, G_bneck, [16, 16, 3, 1]], # 1 ch_out, ch_mid, dw-kernel, stride[-1, 1, G_bneck, [24, 48, 3, 2]], # 2-P2/4[-1, 1, G_bneck, [24, 72, 3, 1]], # 3[-1, 1, G_bneck, [40, 72, 3, 2, True]], # 4-P3/8[-1, 1, G_bneck, [40, 120, 3, 1, True]], # 5[-1, 1, G_bneck, [80, 240, 3, 2]], # 6-P4/16[-1, 3, G_bneck, [80, 184, 3, 1]], # 7[-1, 1, G_bneck, [112, 480, 3, 1, True]],[-1, 1, G_bneck, [112, 480, 3, 1, True]],[-1, 1, G_bneck, [160, 672, 3, 2, True]], # 10-P5/32[-1, 1, G_bneck, [160, 960, 3, 1]], # 11[-1, 1, G_bneck, [160, 960, 3, 1, True]],[-1, 1, G_bneck, [160, 960, 3, 1]],[-1, 1, G_bneck, [160, 960, 3, 1, True]],[-1, 1, Conv, [960]],]# YOLOv5 v6.0 head head:[[-1, 1, Conv, [480, 1, 1]],[-1, 1, nn.Upsample, [None, 2, nearest]],[[-1, 9], 1, Concat, [1]], # cat backbone P4[-1, 3, C3, [480, False]], # 19[-1, 1, Conv, [240, 1, 1]],[-1, 1, nn.Upsample, [None, 2, nearest]],[[-1, 5], 1, Concat, [1]], # cat backbone P3[-1, 3, C3, [240, False]], # 23 (P3/8-small)[-1, 1, Conv, [240, 3, 2]],[[-1, 20], 1, Concat, [1]], # cat head P4[-1, 3, C3, [480, False]], # 26 (P4/16-medium)[-1, 1, Conv, [480, 3, 2]],[[-1, 15], 1, Concat, [1]], # cat head P5[-1, 3, C3, [960, False]], # 29 (P5/32-large)[[23, 26, 29], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5)]步骤4验证是否加入成功 在yolo.py文件里配置我们刚才自定义的yolov5s_Ghostnet.yaml。 然后运行yolo.py得到结果。 这样就算添加成功了。   步骤5修改train.py中的--cfg默认参数 在train.py文件中找到 parse_opt函数然后将第二行 --cfg 的default改为 models/yolov5s_Ghostnet.yaml然后就可以开始进行训练了。
http://www.w-s-a.com/news/547442/

相关文章:

  • 生态城门户网站 建设动态it外包收费
  • 网站项目评价老渔哥网站建设公司
  • 哈尔滨寸金网站建设价格178软文网
  • 一个网站建设的成本网站开发过程及要点
  • 监控视频做直播网站中国建筑人才网下载
  • 网站建设公司华网天下买送活动集团网站设计案例
  • 哪些网站比较容易做哪个网站做中高端衣服
  • 做php网站教程wordpress去水印
  • 深圳微网站建设公司哪家好潍坊专业做网站的公司
  • 网站的弹窗广告怎么做软件开发包括
  • 网站开发人员保密做最优秀的自己演讲视频网站
  • 一般做网站要多少钱怎样选择高性价比的建站公司
  • 免费私人网站建设软件高端网站设计平台高端网站设计企业
  • 响应式网站建设的应用场景怎么申请电商平台
  • 怎么做垂直自营网站游戏咨询网站建设目标是什么
  • 建设网站需要给钱吗建立网站三大基础
  • 金融公司网站 htmlwordpress 防火墙
  • 重庆智能建站模板网站投票系统 js
  • 网站维护的内容和步骤网站做什么内容
  • 万网虚拟主机建网站wordpress协调世界时
  • 微网站建设方式应用大全网站
  • 网站速度测速织梦模板下载
  • 环保网站建设公司排名汉阴网站建设
  • 自己做网站的二维码wordpress用户权限在哪改
  • 网站使用说明书网站建设公司的介绍
  • 推广型网站免费建设网站防盗链设置
  • 建设银行网站查开户行网站反链暴增怎么回事
  • centos7做网站软件实施工程师工资一般多少
  • 专业房产网站建设深圳建设交易集团
  • 政务网站建设标准项目经理接到网站开发怎么开展