《YOLO4》论文精读:YOLOv4给研究人员做了一次非常不错的技术汇总!

在这里插入图片描述

  1. YOLOv4: Optimal Speed and Accuracy of Object Detection论文地址
  2. PaperwithCode在目标检测的排名
  3. Github仓库地址,100Kstar
  4. 《YOLO1》论文精读:第一次实现端到端的目标检测
  5. 《YOLO2》论文精读:7项措施和联合训练让YOLO1更好、更快、更强大
  6. 《YOLO3》论文精读:3项优化和Darknet-53让YOLO3奠定了YOLO系列的基石
  • YOLO1论文最新由Facebook AI发表于2016年5月,截止现在2024年10月,引用数是52854次。
  • YOLO2由华盛顿大学研究机构于2016年12月发布,截止2024年10月,引用数是23157次。
  • YOLO3由华盛顿大学研究机构于2018年4月发布,截止2024年10月,引用数是30304次。
  • YOLO4由三位学术大佬于2020年4月发布,截止2024年10月,引用数是17683次。

论文内容省流版本阅读这里即可

YOLO4讨论了用于提升卷积神经网络(CNN)性能的不同技术,并且介绍了如何通过组合这些技术来达到最优的结果。但是对这些技术没有做解释,作者是默认读者了解这些后背的技术,所以读完这篇论文,如果不继续往下深究,跟没读过是一个感受

  1. 介绍

    • 提到有很多特性被认为可以提高CNN的准确性。
    • 实际上需要对这些特性的组合在大规模数据集上进行测试,并对结果进行理论上的解释。
  2. 特性分类

    • 有些特性是专门为某些模型或问题设计的,或者仅适用于小规模的数据集。
    • 有些特性,比如批量归一化(Batch-Normalization)和残差连接(Residual-connections),则适用于大多数模型、任务和数据集。
  3. 通用特性假设

    • 假设有一些通用特性,包括加权残差连接(WRC)、跨阶段部分连接(CSP)、跨Mini-Batch归一化(CmBN)、自我对抗训练(SAT)和Mish激活函数。
  4. 应用的特性

    • 使用的新特性包括:WRC、CSP、CmBN、SAT、Mish激活、马赛克数据增强(Mosaic data augmentation)、DropBlock正则化、CIoU损失。
    • 这些特性被组合起来以实现最先进的成果。
  5. 实验结果

    • 在MS COCO数据集上,通过组合这些特性,获得了43.5%的平均精度(AP)和65.7%的AP50(即当IoU=0.5时的平均精度)。
    • 这个模型在Tesla V100 GPU上运行时能够达到约65 FPS的实时速度。
  6. 代码资源

    • 有关此工作的源代码可以在https://github.com/AlexeyAB/darknet找到。

复习YOLO3的推理过程

下面逐步描述YOLO3的推理流程:

  1. 给模型输入一张只有人、狗、自行车三个待检测对象的图像,得到32x32x3+16x16x3+8x8x3=3072+768+192=4032个预测边界框的坐标和边界框的置信度,以及32x32+16x16+8x8=1024+256+64=1344个网格单元格的类别预测分数。
  2. 将边界框预测值转变成预测边界框的实际坐标,和所有预测边界框的置信度
  3. 通过非极大值抑制(Non-Maximum Suppression, NMS)挑选出三个预测边界框,分别预测人、狗、自行车。非极大值抑制(Non-Maximum Suppression, NMS)是一种常用的技术,用于消除重复的边界框预测。在目标检测任务中,同一物体可能会被多次预测为不同的边界框,NMS的作用就是从这些重叠的边界框中挑选出最有代表性的那个。
  • NMS的工作流程
    步骤1 - 排序:首先按照边界框的置信度得分对所有边界框进行降序排序。
    步骤2 - 选取最高分:从排序后的列表中选取得分最高的边界框。
    步骤3 - 计算IoU:计算得分最高的边界框与其他所有边界框的交并比IOU。
    步骤4 - 剔除高IoU:如果某个边界框与已选中的边界框IoU高于设定的阈值,则剔除该边界框。
    步骤5 - 迭代:重复步骤2至4,直到没有边界框剩余为止。

复习YOLO3的训练过程

因为YOLO3有三个检测头,每个检测头的损失计算之后,再全部加到一起,就是总损失。三个头的特征尺寸分别是32x32、16x16、8x8,下面就以8x8为例,展示损失的计算过程和训练的过程。

  1. 给模型输入一张只有人、狗、自行车三个检测对象的图像,得到8x8x3=192个预测边界框和8x8x3=1521个边界框的置信度数值,以及8x8=64个网格单元格的类别预测分数数值。
  2. 图像会被分成8x8=64个网络单元格,图像中有三个检测对象人、狗、自行车,根据YOLO3的核心思想,那么就会有三个网络单元格分别负责检测人、狗、自行车,假设为gridPerson、gridDog、gridBicycle。
  3. gridPerson这个网格单元格里面的所有预测边界框(这里是3个边界框)只挑选跟Ground Truth的IOU最大的边界框出来,称为最优预测边界框,计算最优预测边界框坐标的平方差损失L1、最优预测边界框的置信度的平方差损失L2;对于gridPerson这个网格单元格,需要计算类别的交叉熵损失L3
  4. 对于gridDog、gridBicycle也是需要这么计算得到相对应的损失
  5. 对于其它8x8-3=61个网格单元格,需要计算置信度的平方差损失L4
  6. 上面gridPerson、gridDog、gridBicycle各自的损失和L4都加起来就是这个分类头的损失了。
  7. 然后再把所有分类头的损失再加起来,就是总损失了
  8. 然后使用Adam进行优化

主干网络、颈部网络、头部网络概述

目前目标检测模型通常由两部分组成,一个是在ImageNet上预先训练的主干网络模型,另一个是用于预测待检测对象的类别和边界框的检测

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值