yolov4、yolov5优化策略

一、yolov4优化策略

1.Mosaic data augmentation:四张图像拼接成一张进行训练,现在一个batch相当于以前4个batch。

2.Random Erase:用随机值或训练集的平均像素值替换图像的区域。

3.Self-adversarial-training(SAT):引入噪音点来增加难度。

4.DropBlock :(之前的dropout是随机选择点,现在吃掉一个区域)。

5.Label Smoothing自觉不错(过拟合),让它别太自信,标签01改为,0.95,0.05,效果

使用之后效果分析(右图):簇内更紧密,簇间更分离。

 6.CIOU损失:参考上篇文章:区分(GIOU、DIOU、CIOU)(正则化、归一化、标准化)-CSDN博客


 

7.SOFT-NMS:在目标检测中,NMS用于通过选择具有最高置信度得分的框来删除冗余的边界框。然而,当检测算法产生具有类似置信度分数的重叠框时,这有时会导致重要边界框的消除
Soft-NMS通过对重叠框的置信度分数应用衰减函数来解决这个问题,这个函数基于其与最高得分框之间的重叠程度降低较低得分框的得分。其思想是保留较低得分框的信息,同时优先考虑最高得分框。这使得Soft-NMS在重叠框的情况下更加容忍,并有助于提高目标检测的准确性。 

 8.SPPnet(Spatial Pyramid Pooling)空间金字塔:V3中为了更好满足不同输入大小,训练的时候要改变输入数据的大小,V4在最后的卷积层和全连接层之间加入SPP层。具体做法是,在conv层得到的特征图是256层,每层都做一次spatial pyramid pooling。先把每个特征图分割成多个不同尺寸的网格,比如网格分别为44、22、11,然后每个网格做max pooling,这样256层特征图就形成了16x256,4x256,1x256维特征,他们连起来就形成了一个固定长度的特征向量,将这个向量输入到后面的全连接层。

9.CSPNet(Cross Stage Partial Network):CSPNet中的跨阶段部分连接将网络的特征图分成两部分,其中一部分通过多个卷积层进行处理,而另一部分则通过较少的层进行处理。两条路径的输出然后使用连接操作进行组合,生成的特征图再由另一组卷积层进行处理。这种方法允许不同阶段之间更好的信息流动,从而提高准确性并降低计算成本。

10.PAN(Path Aggregation Network):PAN通过一种保留空间和语义信息的方式,将不同层次的特征结合起来。这是通过一种自上而下和自下而上的特征聚合过程实现的。就是融合FPN(a),加了自下而上的路径,p2已经有了全局信息。

 11.激活函数Mish

ReLU函数:f(x)=max(αx,x)

Relu有点太绝对了,Mish更符合实际,但是计算量确实增加了,效果会提升。 

二、yolov5 优化策略

1.Conv模块:由一个Conv2d、一个BatchNorm2d和激活函数构成。如下图所示。Conv模块完成了对特征图的下采样、升维降维、归一化、非线性等。

2.C3模块:C3由三个Conv模块和一个Bottleneck模块组成,得名C3。在backbone中,C3是更为重要的提取特征的模块。其结构图如下使用残差结构,将输入与输出相加,避免梯度消失的问题。

 3.SPPF:SPP是空间金字塔池化,yolov5作者在SPP的基础上改进为SPPF。SPPF在输出相同的情况下速度更快。

 4.FPN+PAN:和Yolov4中一样,都采用FPN+PAN的结构 。

5.Mosaic data augmentation:同v4,四张图像拼接成一张进行训练,现在一个batch相当于以前4个batch。

6.自适应锚框计算
Yolov5每次训练时会自适应的计算不同训练集中的最佳锚框值,从而帮助网络更快的收敛。

7.CIoU loss :同v4.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/229948.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

el-table,列表合并,根据名称列名称相同的品名将其它列值相同的进行合并

el-table,列表合并,根据名称列名称相同的品名讲其它列值相同的进行合并,并且不能垮品名合并 如图 用到el-table合并行的方法合并 tableSpanMethod({ row, column, rowIndex, columnIndex }) {if (column.property "materielName") {//合并商品名const _row this…

初中古诗文大会填空题的常见题型和阅读专辑的对应知识点分析

前面两篇文章,六分成长为您介绍了2023年初中古诗文大会复选(复赛)单选题和多选题的常见题型和考察点,并且从历年真题和中学生古诗文阅读专辑(初中适用,下称《专辑》)中各选了一些题目作为示例&a…

PC端ssh连接到Android手机的Termux部署http服务器

1. 下载并安装Termux至Android手机 Releases termux/termux-app (github.com) https://github.com/termux/termux-app/releases 2. 手机端启动Termux,安装openssh #更新仓库 pkg up pkg install openssh #安装好后,启动sshd sshd问题1:如…

炸裂:completablefuture自定义线程池慢2倍......比默认线程池......

尼恩说在前面 尼恩社群中,很多小伙伴找尼恩来卷3高技术,学习3高架构,遇到问题,常常找尼恩反馈和帮扶。 周一,一个5年经验的大厂小伙伴,反馈了一个令人震惊的问题 completablefuture自定义线程池慢2倍…比…

如何让电脑每天定时自动关机?

如何让电脑每天定时自动关机?电脑已经成为社会生产活动中不可或缺的一种工具,它对于我们每个人都非常的重要,不管是工作、生活还是学习中,我们都需要利用电脑。不过很多小伙伴因为繁忙或者因为其它的事情,导致电脑经常…

VM17 启用复制粘贴

一、方法1 1、关闭虚拟机 2、右击虚拟机,选择设置 3、点击选项,选择客户机隔离,勾选启动复制粘贴 二、方法2 1、下载VMware Tools CDS Repository - /var/www/public/stage/session-89/cds/vmw-desktop/ws 选择对应版本的VMware Tools …

高性能Mysql第三版(一)

学习目标: 高性能Mysql第3版 学习内容: MySQL架构与历史Mysql基座测试服务器性能Schema与数据类型优化创建高性能的索引查询性能优化Mysql高级特性Explain 文章目录 学习目标:高性能Mysql第3版 学习内容:1 Mysql逻辑架构1.1 My…

沈阳互联网医院|互联网医院系统|线上医疗发展现状

互联网医院系统已经成为了现代医疗行业中的新趋势,它不仅提供了线上诊疗、药品配送、在线咨询等服务,还为患者提供了更加便捷的医疗服务。那么,互联网医院系统的优势是什么呢? 1、互联网医院系统提供了线上诊疗服务,患…

C++和Python混合编程在数据采集程序中的应用

目录 一、引言 二、C和Python的特性及其在数据采集程序中的应用 1、C的特性及其在数据采集程序中的应用 2、Python的特性及其在数据采集程序中的应用 三、C和Python混合编程在数据采集程序中的实现方法 四、混合编程的优缺点以及未来发展趋势 五、代码示例 六、结论 一…

Locust单机多核压测,以及主从节点的数据通信处理!

一、背景 这还是2个月前做的一次接口性能测试,关于locust脚本的单机多核运行,以及主从节点之间的数据通信。 先简单交代下背景,在APP上线之前,需要对登录接口进行性能测试。经过评估,我还是优先选择了locust来进行脚…

LabVIEW当鼠标悬停在图形曲线上时显示坐标

LabVIEW当鼠标悬停在图形曲线上时显示坐标 在波形图上显示波形数据后,当鼠标放在波形图的曲线上时,如何自动显示对应点的坐标? 1. 创建事件结构,选择“波形图”作为“事件源”,选择“鼠标移动”作为“事件”&a…

JAVAEE---多线程线程安全

根本原因:随机调度,抢占式执行 多个线程同时修改同一个变量 修改操作不是原子的 内存可见性 指令重排序 上面这段代码可以正常打印出hello,按照我们前面所学,第一次加锁之后,第二次加锁应该有所冲突啊。这里是因为…