深度学习|YOLOv7——论文简述

一、摘要 可以看到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
深度学习|YOLOv7——论文简述
文章图片

使用扩展的ELAN,不破坏原有梯度路径的情况下不断增强网络学习能力的能力。
2.2 模型缩放
深度学习|YOLOv7——论文简述
文章图片

三、可训练的bag-of-freebies 3.1 重参数化
深度学习|YOLOv7——论文简述
文章图片

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

3.2 辅助头检测
深度学习|YOLOv7——论文简述
文章图片

标签分配通常指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的比例进行融合。
四、实验 【深度学习|YOLOv7——论文简述】等看过代码再补

    推荐阅读