国美网站建设特点深圳做品牌网站

张小明 2026/3/13 1:10:50
国美网站建设特点,深圳做品牌网站,如何做网站公众号推广,卡板技术支持 东莞网站建设文章目录YOLO#xff08;You only look once 是一阶段#xff0c;实时目标检测算法#xff09;一 .YOLOV11. YOLO V1缺点2. YOLO V1优点1. Passthroug2. BN3. 聚类提取先验框4. 针对YOLO v1 的缺点YOLO V2检测头的改进#xff1a;5. YOLO V2 的改进6. YOLO V2 分类模型训练…文章目录YOLOYou only look once 是一阶段实时目标检测算法一 .YOLOV11. YOLO V1缺点2. YOLO V1优点1. Passthroug2. BN3. 聚类提取先验框4. 针对YOLO v1 的缺点YOLO V2检测头的改进5. YOLO V2 的改进6. YOLO V2 分类模型训练三.YOLO V3四 .YOLO V41. Bag of freebies(BOF)2. Bag of specials(BOS)五 .YOLO V51. 网络结构2. 数据增强3.训练策略4.其他六.YOLO X1.网络结构图2.输入端3.Backbone4.NeckYOLOYou only look once 是一阶段实时目标检测算法从2015年的YOLOv12016年YOLOv22018年的YOLOv3再到2020年的YOLOv4()和YOLOv5(6月9日)2021年的YOLOXYOLO系列在不断的进化发展。•从R-CNN到Faster R-CNN网络的发展中都是基于proposal分类的方式来进行目标检测的检测精度比较高但是检测速度不行YOLO提供了一种更加直接的思路 直接在输出层回bounding box 的位置和bounding box 所属类别的置信度相比于R-CNN体系的目标检测YOLO将目标检测从分类问题转换为回归问题。其主要特点是• 速度快能够达到实时的要求在Titan X的GPU上达到45fps• 使用全图Context信息背景错误(把背景当做物体)比较少• 泛化能力强YOLO v1直接回归出位置。77 的grid,2个先验框20个类别VGG16多目标找不到YOLO v2全流程多尺度方法。1313 的grid, 5个锚点80个类别DarkNet19回归出的位置是相对于Grid的偏移量的归一化之后的值小目标检测不准确YOLO v3多尺度检测头32倍16倍8倍下采样每种3个尺寸的锚点分别负责大中小目标的检测resblock darknet53YOLO v4csp darknet53spppanettricks一 .YOLOV11. YOLO V1缺点2. YOLO V1优点1. Passthroug2. BN图中曲线是sigmoid函数如果数据在梯度很小的区域那么学习率就会很慢甚至陷入长时间的停滞。减均值除方差后数据就被移动到中心区域如右图所示对于大多数激活函数而言这个区域的梯度都是最大的或者是有梯度的比如ReLU这可以看作是一种对抗梯度消失的有效手段。3. 聚类提取先验框4. 针对YOLO v1 的缺点YOLO V2检测头的改进YOLO v1虽然快但是预测的框不准确很多目标找不到预测的框不准确准确度不足。很多目标找不到recall不足。问题1预测的框不准确当时别人是怎么做的同时代的检测器有R-CNN人家预测的是偏移量。V2中并没有直接使用偏移量而是选择相对grid cell的偏移量问题2很多目标找不到如果一个grid cell中包含多个相同类别的小物体那么YOLO v1仅可以检测出一个物体。增加预测框77的Grid,2个框—》1313的Grid,5个框COCO数据集聚类出来5个框效果最好5. YOLO V2 的改进• 为了改善YOLO模型的检测速度YOLO v2在Faster方面也做了一些改进。• 大多数神经网络依赖于VGG Net来提取特征VGG-16特征提取功能是非常强大的但是复杂度有点高对于224*224的图像前向计算高达306.9亿次浮点数运算。• YOLO v2中使用基于GoogleNet的定制网络DarkNet一次前向传播仅需要85.2亿次浮点数计算。精度相比来讲低2%(88%/90%)6. YOLO V2 分类模型训练• 检测网络的训练将分类网络的最后一个卷积层去掉更改为三个331024的卷积层并且每个卷积层后跟一个1*1的卷积层输出维度为检测需要的数目比如在VOC数据集中需要预测5个框每个框4个坐标值1个置信度20个类别概率值也就是输出为125维。同时将转移层(passthrough layer)从倒数第二层做一个连接的操作。• 训练方式以及Loss的定义和YOLO v1类似三.YOLO V3终于到V3了最大的改进就是网络结构使其更适合小目标检测特征做的更细致融入多持续特征图信息来预测不同规格物体先验框更丰富了3种scale每种3个规格一共9种softmax改进预测多标签任务img → cbrp16→ cbrp32→ cbrp64→ cbrp128→ …→ fc256-fc[10]这里的cbrp指的是convbnrelupooling的串联。由于输入要是one-hot形式所以最后我们设计了2个fc层(fully connencted layer)四 .YOLO V4YOLOv4在结构上没有额外的创新但是收集了目标检测中各种tricks并进行实验分析了各种tricks的有效性相对于对近些年来目标检测领域中从数据网络结构和后处理等过程做了很好的总结。最终在速度和准确性上达到了最好的balanceV4贡献亲民政策单GPU就能训练的非常好接下来很多小模块都是这个出发点两大核心方法从数据层面和网络设计层面来进行改善消融实验感觉能做的都让他给做了这工作量不轻全部实验都是单GPU完成不用太担心设备了1. Bag of freebies(BOF)通常常规的目标检测器是离线训练的。因此研究人员总是喜欢利用这一优势并开发出更好的训练方法以使目标检测器获得更好的精度而又不增加推理成本。我们称这些仅改变训练策略或仅增加训练成本方法为“bag of freebies”。数据增强是目标检测方法经常采用的并符合bag of freebies定义只增加训练成本但是能显著提高精度并不影响推理速度数据增强调整亮度、对比度、色调、随机缩放、剪切、翻转、旋转网络正则化的方法Dropout、Dropblock等类别不平衡损失函数设计1.1 数据增强1.2 网络正则化的方法1.3 类别不平衡1.4 损失函数设计2. Bag of specials(BOS)对于那些仅增加少量推理成本但可以显着提高目标检测准确性的插件模块和后处理方法我们将其称为“bag of specials”。 一般而言这些插件模块用于增强模型中的某些属性例如扩大感受野引入注意力机制或增强特征集成能力等而后处理是用于筛选模型预测结果的方法。增加稍许推断代价但可以提高模型精度的方法网络细节部分加入了很多改进引入了各种能让特征提取更好的方法注意力机制网络细节设计特征金字塔等你能想到的全有读折一篇相当于把今年来部分优秀的论文又过了一遍五 .YOLO V51. 网络结构关于YOLOv5的网络结构其实网上相关的讲解已经有很多了。网络结构主要由以下几部分组成Backbone New CSP-Darknet53Neck SPPF New CSP-PANHead:YOLOv3 Head下面是我根据yolov5l.yaml绘制的网络整体结构YOLOv5针对不同大小n, s, m, l, x的网络整体架构都是一样的只不过会在每个子模块中采用不同的深度和宽度分别应对yaml文件中的depth_multiple和width_multiple参数。还需要注意一点官方除了n, s, m, l, x版本外还有n6, s6, m6, l6, x6区别在于后者是针对更大分辨率的图片比如1280x1280当然结构上也有些差异后者会下采样64倍采用4个预测特征层而前者只会下采样到32倍且采用3个预测特征层。本博文只讨论前者。下面这幅图yolov5l有点大大家可以下载下来仔细看一下通过和上篇博文讲的YOLOv4对比其实YOLOv5在Backbone部分没太大变化。但是YOLOv5在v6.0版本后相比之前版本有一个很小的改动把网络的第一层原来是Focus模块换成了一个6x6大小的卷积层。两者在理论上其实等价的但是对于现有的一些GPU设备以及相应的优化算法使用6x6大小的卷积层比使用Focus模块更加高效。详情可以参考这个issue #4825。下图是原来的Focus模块(和之前Swin Transformer中的Patch Merging类似)将每个2x2的相邻像素划分为一个patch然后将每个patch中相同位置同一颜色像素给拼在一起就得到了4个feature map然后在接上一个在Neck部分的变化还是相对较大的首先是将SPP换成成了SPPFGlenn Jocher自己设计的这个改动我个人觉得还是很有意思的两者的作用是一样的但后者效率更高。SPP结构如下图所示是将输入并行通过多个不同大小的MaxPool然后做进一步融合能在一定程度上解决目标多尺度问题。而SPPF结构是将输入串行通过多个5x5大小的MaxPool层这里需要注意的是串行两个5x5大小的MaxPool层是和一个9x9大小的MaxPool层计算结果是一样的串行三个5x5大小的MaxPool层是和一个13x13大小的MaxPool层计算结果是一样的。importtimeimporttorchimporttorch.nnasnnclassSPP(nn.Module):def__init__(self):super().__init__()self.maxpool1nn.MaxPool2d(5,1,padding2)self.maxpool2nn.MaxPool2d(9,1,padding4)self.maxpool3nn.MaxPool2d(13,1,padding6)defforward(self,x):o1self.maxpool1(x)o2self.maxpool2(x)o3self.maxpool3(x)returntorch.cat([x,o1,o2,o3],dim1)classSPPF(nn.Module):def__init__(self):super().__init__()self.maxpoolnn.MaxPool2d(5,1,padding2)defforward(self,x):o1self.maxpool(x)o2self.maxpool(o1)o3self.maxpool(o2)returntorch.cat([x,o1,o2,o3],dim1)defmain():input_tensortorch.rand(8,32,16,16)sppSPP()sppfSPPF()output1spp(input_tensor)output2sppf(input_tensor)print(torch.equal(output1,output2))t_starttime.time()for_inrange(100):spp(input_tensor)print(fspp time:{time.time()-t_start})t_starttime.time()for_inrange(100):sppf(input_tensor)print(fsppf time:{time.time()-t_start})if__name____main__:main()Truespp time:0.5373051166534424sppf time:0.20780706405639648通过对比可以发现两者的计算结果是一模一样的但SPPF比SPP计算速度快了不止两倍快乐翻倍。在Neck部分另外一个不同点就是New CSP-PAN了在YOLOv4中Neck的PAN结构是没有引入CSP结构的但在YOLOv5中作者在PAN结构中加入了CSP。详情见上面的网络结构图每个C3模块里都含有CSP结构。在Head部分YOLOv3, v4, v5都是一样的这里就不讲了。2. 数据增强3.训练策略在YOLOv5源码中使用到了很多训练的策略这里简单总结几个我注意到的点还有些没注意到的请大家自己看下源码Multi-scale training(0.5~1.5x)多尺度训练假设设置输入图片的大小为640 × 640 640 \times 640640×640训练时采用尺寸是在0.5 × 640 ∼ 1.5 × 640 0.5 \times 640 \sim 1.5 \times 6400.5×640∼1.5×640之间随机取值注意取值时取得都是32的整数倍因为网络会最大下采样32倍。AutoAnchor(For training custom data)训练自己数据集时可以根据自己数据集里的目标进行重新聚类生成Anchors模板。Warmup and Cosine LR scheduler训练前先进行Warmup热身然后在采用Cosine学习率下降策略。EMA(Exponential Moving Average)可以理解为给训练的参数加了一个动量让它更新过程更加平滑。Mixed precision混合精度训练能够减少显存的占用并且加快训练速度前提是GPU硬件支持。Evolve hyper-parameters超参数优化没有炼丹经验的人勿碰保持默认就好。4.其他4.1 损失计算YOLOv5的损失主要由三个部分组成Classes loss分类损失采用的是BCE loss注意只计算正样本的分类损失。Objectness lossobj损失采用的依然是BCE loss注意这里的obj指的是网络预测的目标边界框与GT Box的CIoU。这里计算的是所有样本的obj损失。Location loss定位损失采用的是CIoU loss注意只计算正样本的定位损失。其中λ 1 , λ 2 , λ 3为平衡系数。4.2 平衡不同尺度的损失这里是指针对三个预测特征层P3, P4, P5上的obj损失采用不同的权重。在源码中针对预测小目标的预测特征层P3采用的权重是4.0针对预测中等目标的预测特征层P4采用的权重是1.0针对预测大目标的预测特征层P5采用的权重是0.4作者说这是针对COCO数据集设置的超参数。4.3 消除Grid敏感度在上篇文章YOLOv4中有提到过主要是调整预测目标中心点相对Grid网格的左上角偏移量。下图是YOLOv2v3的计算公式。YOLO系列backbone方面的优化和对输入端的改进图2YOLO系列比较我们发现YOLO v1只是把最后的特征分成了 7×7 个grid到了YOLO v2就变成了 13×13 个grid再到YOLO v3 v4 v5就变成了多尺度的(strides8,16,32)更加复杂了。那为什么一代比一代检测头更加复杂呢答案是因为它们的提特征网络更加强大了能够支撑起检测头做更加复杂的操作。换句话说如果没有backbone方面的优化你即使用这么复杂的检测头可能性能还会更弱。所以引出了今天的话题backbone(主干网络)的改进六.YOLO X1.网络结构图2.输入端在yolox的输入端采用了 Mosaic、Mixup两种数据增强方式采用了这两种数据增强直接将Yolov3baseline提升了2.4个百分点可见数据增强对网络还是很有贡献。3.Backbone4.Neck
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站开发需要哪些知识和工具最新发布的手机

STM32CubeMX安装成功却打不开?别急,这份实战排查指南帮你从“黑屏闪退”到顺利启动 你有没有遇到过这种情况:兴冲冲地下载了最新版的 STM32CubeMX ,一路点击“下一步”完成安装,结果双击图标——没反应;…

张小明 2026/3/5 3:02:55 网站建设

如何进行网站关键词优化绵阳网站建设报价

文章目录 系列文章目录目的前言一、详细视频演示二、项目部分实现截图三、技术栈 后端框架springboot前端框架vue持久层框架MyBaitsPlus系统测试 四、代码参考 源码获取 目的 摘要:传统学生考核管理存在信息分散、效率低下等问题,难以满足现代教育需求…

张小明 2026/3/5 3:02:58 网站建设

永嘉网站建设工作室太原网站的优化

大家好,我是不想掉发的鸿蒙开发工程师城中的雾。 前几期我们玩转了各种标准组件的动画。但在实际开发中,总有一些需求让设计师天马行空,让开发者头秃:“这个波浪起伏的效果怎么做?”、“这个像琴弦一样能拨动的线条怎…

张小明 2026/3/5 3:02:58 网站建设

网站设计深圳wordpress 推广插件

想要彻底解决Microsoft Teams顽固残留问题?这份专业指南将帮助你实现Teams彻底卸载,同时完成系统清理和性能优化。通过简单的三个步骤,你不仅能永久删除Teams,还能释放宝贵的系统资源,提升电脑运行效率。 【免费下载链…

张小明 2026/3/12 13:17:50 网站建设

网站设计遵从的原则北京网页制作培训班

Langchain-Chatchat 支持自定义元数据字段:扩展文档属性信息 在企业级智能问答系统的落地实践中,一个反复被提及的挑战是——AI 看得懂文字,却看不懂上下文。 比如,当 HR 员工询问“最新的年假政策”时,系统若仅依赖语…

张小明 2026/3/12 19:53:13 网站建设

做网站需要编程网页设计网站结构图怎么弄

Kotaemon如何优化内存占用?对象池与懒加载技术应用 在当今企业级AI系统中,智能问答和对话代理的复杂性正以前所未有的速度增长。一个典型的RAG(检索增强生成)系统不仅要处理海量知识库的实时检索,还要管理多轮对话状态…

张小明 2026/3/5 3:03:00 网站建设