• YOLOv7——论文简述


    一、摘要

    可以看到YOLOv7在速度和准确度上较之前的检测器有非常明显的提升。
    在这里插入图片描述
    作者提出了一种新的实时目标检测架构,针对解决重参数化模块的替换和动态标签分配问题,提出可训练的bag-of-freebies方法来提高准确度。
    (1)更好地适配移动端
    (2)关注训练过程的优化,而不增加推理成本
    (3)planned re-parameterized model,用梯度传播路径的概念分析了适用于不同网络中layers的模型重参数化
    (4)coarse-to-fine lead guided label assignment 由粗到细,针对不同输出层分配动态标签

    二、模型

    2.1 E-ELAN

    在这里插入图片描述
    使用扩展的ELAN,不破坏原有梯度路径的情况下不断增强网络学习能力的能力。

    2.2 模型缩放

    在这里插入图片描述

    三、可训练的bag-of-freebies

    3.1 重参数化

    在这里插入图片描述
    简单堆叠RepConv是可行的,如果要加残差,那么RepConv中的identity连接就会破环残差结构,所以去掉了identity;
    下图展示了RepVGG在训练时,使用(B)多分支模型,而推理时转化成类似VGG的单路模型(快速且节省内存)。重参数化的目的就是对卷积自身或者和bn之间的融合。可以参考RepVGG论文中的计算过程。
    在这里插入图片描述

    3.2 辅助头检测

    在这里插入图片描述
    标签分配通常指gt,并根据给定的规则生成hard label。然而如果以目标检测为例,研究者经常利用网络预测输出的质量和分布,然后结合gt考虑使用一些计算和优化方法来生成可靠的软标签。例如,YOLO使用边界框回归和gt的IoU作为软标签。

    本文使用aux head和lead head,在目标检测中aux head 关注recall的优化,对于lead head的输出,可以从aux head中精准的筛选出来。还没看代码,参考这篇简单总结一下:
    ①lead head中每个anchor与gt box如果匹配上(假设对某个gt box而言,其实只要gt box满足在某个anchor宽和高的0.25倍和4.0倍之间就算匹配成功),分配3个正样本,而aux head分配5个;其实就是简单的样本扩充,lead head和yolo v5一样的方法扩充,aux则是gt中心对应cell和相邻的4个cell。
    ②lead head中将top10样本iou求和取整,而aux head中取top 20。

    aux head loss 和 lead head loss 按照0.25 : 1的比例进行融合。

    四、实验

    等看过代码再补

  • 相关阅读:
    低调而无为而治,藏在超级应用背后的道家哲学
    apache poi 实现Excel 下拉联动
    IDEA指定Maven settings file文件未生效
    JAVA基础 - java.io.IOException:Parent directory of file does not exist
    【Matlab】曲线拟合
    每日一练 | 网络工程师软考真题Day32
    C/C++ 动态规划 算法
    在 Git 中删除不再位于远程仓库中的本地分支
    LOTO虚拟示波器 关于触发灵敏度功能
    Elasticsearch优化
  • 原文地址:https://blog.csdn.net/qq_43680965/article/details/125910760