0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于ELAN的Extended-ELAN (E-ELAN)

新机器视觉 来源:新机器视觉 作者:新机器视觉 2022-07-10 10:06 次阅读

YOLOv7在 5 FPS 到 160 FPS 范围内的速度和准确度都超过了所有已知的目标检测器,并且在 GPU V100 上 30 FPS 或更高的所有已知实时目标检测器中具有最高的准确度 56.8% AP。

ced4a5fc-fec2-11ec-ba43-dac502259ad0.png

YOLOv7-E6目标检测器(56 FPS V100,55.9% AP)比基于Transformer的检测器SWIN-L Cascade-Mask R-CNN(9.2 FPS A100,53.9% AP)的速度和准确度分别高出 509% 和 2%,并且比基于卷积的检测器ConvNeXt-XL Cascade-Mask R-CNN(8.6 FPS A100, 55.2% AP) 速度提高 551%,准确率提高 0.7%,以及YOLOv7的表现还优于:YOLORYOLOXScaled-YOLOv4YOLOv5DETRDeformable DETRDINO-5scale-R50ViT-Adapter-B和许多其他速度和准确度的目标检测器。此外,只在MS COCO数据集上从零开始训练YOLOv7,而不使用任何其他数据集或预训练的权重。

1模型设计

1.1、扩展的高效层聚合网络

在大多数关于设计高效架构的文献中,主要考虑因素不超过参数的数量、计算量和计算密度。Ma 等人还从内存访问成本的特点出发,分析了输入/输出通道比架构的分支数量以及element-wise 操作对网络推理速度的影响。多尔阿尔等人在执行模型缩放时还考虑了激活,即更多地考虑卷积层输出张量中的元素数量。

ceee2b80-fec2-11ec-ba43-dac502259ad0.png

图 2
  • 图 2(b)中CSPVoVNet的设计是VoVNet的一种变体。CSPVoVNet的架构除了考虑上述基本设计问题外,还分析了梯度路径,以使不同层的权重能够学习到更多样化的特征。上述梯度分析方法使推理更快、更准确。

  • 图 2 (c) 中的ELAN考虑了以下设计策略——“如何设计一个高效的网络?”。他们得出了一个结论:通过控制最短最长的梯度路径,更深的网络可以有效地学习和收敛。

在本文中,作者提出了基于ELANExtended-ELAN (E-ELAN),其主要架构如图 2(d)所示。

无论梯度路径长度和大规模ELAN中计算块的堆叠数量如何,它都达到了稳定状态。如果无限堆叠更多的计算块,可能会破坏这种稳定状态,参数利用率会降低。作者提出的E-ELAN使用expandshufflemerge cardinality来实现在不破坏原有梯度路径的情况下不断增强网络学习能力的能力。

在架构方面,E-ELAN只改变了计算块的架构,而过渡层的架构完全没有改变。策略是使用组卷积来扩展计算块的通道和基数。将对计算层的所有计算块应用相同的组参数和通道乘数。然后,每个计算块计算出的特征图会根据设置的组参数g被打乱成g个组,然后将它们连接在一起。此时,每组特征图的通道数将与原始架构中的通道数相同。最后,添加 g 组特征图来执行合并基数。E-ELAN除了保持原有的ELAN设计架构外,还可以引导不同组的计算块学习更多样化的特征。

1.2、基于concatenate模型的模型缩放

模型缩放的主要目的是调整模型的一些属性,生成不同尺度的模型,以满足不同推理速度的需求。例如,EfficientNet的缩放模型考虑了宽度、深度和分辨率。对于Scale-yolov4,其缩放模型是调整阶段数。Doll‘ar等人分析了卷积和群卷积对参数量和计算量的影响,并据此设计了相应的模型缩放方法。

cf0c33c8-fec2-11ec-ba43-dac502259ad0.png

图3

上述方法主要用于诸如PlainNetResNet等架构中。当这些架构在执行放大或缩小过程时,每一层的in-degreeout-degree都不会发生变化,因此可以独立分析每个缩放因子对参数量和计算量的影响。然而,如果这些方法应用于基于concatenate的架构时会发现当扩大或缩小执行深度,基于concatenate的转换层计算块将减少或增加,如图3(a)和(b).所示

从上述现象可以推断,对于基于concatenate的模型不能单独分析不同的缩放因子,而必须一起考虑。以scaling-up depth为例,这样的动作会导致transition layer的输入通道和输出通道的比例发生变化,这可能会导致模型的硬件使用率下降。

因此,必须为基于concatenate的模型提出相应的复合模型缩放方法。当缩放一个计算块的深度因子时,还必须计算该块的输出通道的变化。然后,将对过渡层进行等量变化的宽度因子缩放,结果如图3(c)所示。本文提出的复合缩放方法可以保持模型在初始设计时的特性并保持最佳结构。

2训练方法

2.1 Planned re-parameterized convolution

尽管RepConvVGG基础上取得了优异的性能,但当将它直接应用于ResNetDenseNet和其他架构时,它的精度将显著降低。作者使用梯度流传播路径来分析重参数化的卷积应该如何与不同的网络相结合。作者还相应地设计了计划中的重参数化的卷积。

RepConv实际上结合了3×3卷积,1×1卷积,和在一个卷积层中的id连接。通过分析RepConv与不同架构的组合及其性能,作者发现RepConv中的id连接破坏了ResNet中的残差和DenseNet中的连接,为不同的特征图提供了更多的梯度多样性。

cf1e3140-fec2-11ec-ba43-dac502259ad0.png

基于上述原因,作者使用没有id连接的RepConv(RepConvN)来设计计划中的重参数化卷积的体系结构。在作者的思维中,当具有残差或连接的卷积层被重新参数化的卷积所取代时,不应该存在id连接。图4显示了在PlainNetResNet中使用的“Planned re-parameterized convolution”的一个示例。对于基于残差的模型和基于concatenate的模型中Planned re-parameterized convolution实验,它将在消融研究环节中提出。

2.2 标签匹配

深度监督是一种常用于训练深度网络的技术。其主要概念是在网络的中间层增加额外的auxiliary Head,以及以auxiliary损失为导向的浅层网络权值。即使对于像ResNetDenseNet这样通常收敛得很好的体系结构,深度监督仍然可以显著提高模型在许多任务上的性能。图5(a)和(b)分别显示了“没有”和“有”深度监督的目标检测器架构。在本文中,将负责最终输出的Headlead Head,将用于辅助训练的Head称为auxiliary Head

过去,在深度网络的训练中,标签分配通常直接指GT,并根据给定的规则生成硬标签。然而,近年来,如果以目标检测为例,研究者经常利用网络预测输出的质量和分布,然后结合GT考虑,使用一些计算和优化方法来生成可靠的软标签。例如,YOLO使用边界框回归预测和GT的IoU作为客观性的软标签。在本文中,将网络预测结果与GT一起考虑,然后将软标签分配为“label assigner”的机制。

cf2951ce-fec2-11ec-ba43-dac502259ad0.png

图5

无论auxiliary Head或lead Head的情况如何,都需要对目标目标进行深度监督培训。在软标签分配人相关技术的开发过程中,偶然发现了一个新的衍生问题,即“如何将软标签分配给auxiliary headlead head?”据我们所知,相关文献迄今尚未对这一问题进行探讨。目前最常用的方法的结果如图5(c)所示,即将auxiliary headlead head分开,然后使用它们自己的预测结果和GT来执行标签分配。本文提出的方法是一种新的标签分配方法,通过lead head预测来引导auxiliary headlead head。换句话说,使用lead head预测作为指导,生成从粗到细的层次标签,分别用于auxiliary headlead head的学习。所提出的2种深度监督标签分配策略分别如图5(d)和(e)所示。

1、Lead head guided label assigner

lead head引导标签分配器主要根据lead head的预测结果和GT进行计算,并通过优化过程生成软标签。这组软标签将作为auxiliary headlead head的目标训练模型。这样做的原因是lead head具有相对较强的学习能力,因此由此产生的软标签应该更能代表源数据与目标之间的分布和相关性。此外,还可以将这种学习看作是一种generalized residual learning。通过让较浅的auxiliary head直接学习lead head已经学习到的信息lead head将更能专注于学习尚未学习到的残余信息。

2、Coarse-to-fine lead head guided label assigner

从粗到细的lead head引导标签分配器也使用lead head的预测结果和GT来生成软标签。然而,在这个过程中,生成了两组不同的软标签,即粗标签和细标签,其中细标签与lead head引导标签分配器生成的软标签相同,而粗标签是通过允许更多的网格来生成的。通过放宽正样本分配过程的约束,将其视为正目标。原因是auxiliary head的学习能力不如前lead head强,为了避免丢失需要学习的信息,将重点优化auxiliary head的召回率。

至于lead head的输出,可以从高recall结果中过滤出高精度结果作为最终输出。但是,必须注意,如果粗标签的附加权重接近细标签的附加权重,则可能会在最终预测时产生不良先验。因此,为了使那些超粗的正网格影响更小,在解码器中设置了限制,使超粗的正网格不能完美地产生软标签。上述机制允许在学习过程中动态调整细标签和粗标签的重要性,使细标签的可优化上界始终高于粗标签。

2.3 其他Tricks

这些免费的训练细节将在附录中详细说明,包括:(1)conv-bn-activation topology中的Batch normalization:这部分主要将batch normalization layer直接连接到卷积层。这样做的目的是在推理阶段将批归一化的均值和方差整合到卷积层的偏差和权重中。

(2) 隐性知识在YOLOR中结合卷积特征图的加法和乘法方式:YOLOR中的隐式知识可以在推理阶段通过预计算简化为向量。该向量可以与前一个或后一个卷积层的偏差和权重相结合。

(3)EMA模型:EMA是一种在mean teacher中使用的技术,在系统中使用EMA模型纯粹作为最终的推理模型。

3实验

3.1 精度对比

cf3b9e92-fec2-11ec-ba43-dac502259ad0.png

3.2 速度精度对比

cf559676-fec2-11ec-ba43-dac502259ad0.png

cf62cb2a-fec2-11ec-ba43-dac502259ad0.png

审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 检测器
    +关注

    关注

    1

    文章

    857

    浏览量

    47614
  • 数据集
    +关注

    关注

    4

    文章

    1200

    浏览量

    24606
  • ELAN
    +关注

    关注

    0

    文章

    3

    浏览量

    5112

原文标题:YOLOv7官方开源 | Alexey Bochkovskiy站台,精度速度超越所有YOLO,还得是AB

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    网线cat6e是什么标准

    Cat6e网线也被称为超六类网线,是以太网电缆标准的一种。以下是对Cat6e网线标准的详细解释: 一、定义与分类 定义:Cat6e网线是六类网线(Cat6)的改进版或增强版,旨在提供更高的网络传输
    的头像 发表于 10-10 10:02 827次阅读

    hsyu-5e网线是什么?

    hsyu-5e网线实际上是hsyv-5e的误写,它指的是超五类网线。以下是对hsyv-5e网线的详细解释: 一、基本定义 类型:hsyv-5e属于超五类双绞线,是千兆网线的一种。 命名
    的头像 发表于 09-30 09:59 1093次阅读

    TIDP.SAA接口怎么实现I2C Read Extended功能?

    我想要支持I2C Read Extended功能,如上图所示,读出00FF数据,但是接口代码中的I2C_Read_Generic和 Read_Extended_Word并不能和TI的软件一样支持读出数据,我不知道是不是我的传参不正确,TI的接口说明文档中也没有相关示例
    发表于 09-27 06:33

    cat5e属于什么网线

    CAT5e网线属于超五类网线。这一名称中的“CAT”代表电缆的类别,而“5e”则表示它是五类网线的增强版或超五类。具体来说,CAT5e网线包括超五类非屏蔽双绞线(UTP—Unshielded
    的头像 发表于 08-05 09:35 4002次阅读

    cat6e网线支持千兆吗

    Cat6e网线是一种六类网线标准,它是在Cat5e(五类增强)的基础上进行改进而来的。关于Cat6e网线支持的最大传输速率,可以从以下几个方面进行说明: 一、传输速率 Cat6e网线的
    的头像 发表于 07-18 09:55 2227次阅读

    utp6e网线和cat6e网线区别

    UTP6E网线和CAT6E网线在本质上并没有区别,它们都是描述同一种类型的网线,即六类网线的一种变种。UTP6E中的“UTP”指的是非屏蔽双绞线(Unshielded Twisted Pair),而
    的头像 发表于 07-08 09:50 3132次阅读

    电力煤矿跑冒滴漏监测系统

    电力煤矿跑冒滴漏监测基于YOLOv7扩展了高效率程增强专注力互联网,称之为Extended-ELAN (通称E-ELAN) 。 在大规模ELAN中,不管梯度方向路径长度和块总数怎样,互联网都达到
    的头像 发表于 07-03 22:44 226次阅读
    电力煤矿跑冒滴漏监测系统

    详解TSMaster CAN 与 CANFD 的 CRC E2E 校验方法

    面对切换工具链的用户来说,在TSMaster上完成总线通讯中的CRC/E2E校验处理不是特别熟悉,该文章可以协助客户快速使用TSMaster完成CAN/CANFD总线通讯的CRC/E2E校验。本文
    的头像 发表于 05-25 08:21 1731次阅读
    详解TSMaster CAN 与 CANFD 的 CRC <b class='flag-5'>E2E</b> 校验方法

    小鹏汽车与大众汽车宣布签署E/E架构技术合作框架协议

    来源:Yole Group 中国智能电动汽车公司小鹏汽车与汽车制造商之一大众汽车宣布,小鹏汽车与大众汽车已签订关于电气/电子架构(“E/E 架构”)的技术合作框架协议。 小鹏汽车自主开发的E/
    的头像 发表于 04-23 14:49 453次阅读
    小鹏汽车与大众汽车宣布签署<b class='flag-5'>E</b>/<b class='flag-5'>E</b>架构技术合作框架协议

    低功耗250nA IQ和小尺寸电源电压监控器TLV803E、TLV809E、TLV810E数据表

    电子发烧友网站提供《低功耗250nA IQ和小尺寸电源电压监控器TLV803E、TLV809E、TLV810E数据表.pdf》资料免费下载
    发表于 03-21 14:07 0次下载
    低功耗250nA IQ和小尺寸电源电压监控器TLV803<b class='flag-5'>E</b>、TLV809<b class='flag-5'>E</b>、TLV810<b class='flag-5'>E</b>数据表

    单电源RS-232收发器 UM3221E/UM3222E/UM3232E数据手册

    电子发烧友网站提供《单电源RS-232收发器 UM3221E/UM3222E/UM3232E数据手册.pdf》资料免费下载
    发表于 03-06 15:29 0次下载

    基于最新E/E体系结构的传感器应用白皮书

    电子发烧友网站提供《基于最新E/E体系结构的传感器应用白皮书.pdf》资料免费下载
    发表于 01-30 17:41 0次下载
    基于最新<b class='flag-5'>E</b>/<b class='flag-5'>E</b>体系结构的传感器应用白皮书

    e² studio创建lib文件及使用

    e² studio创建lib文件及使用
    的头像 发表于 01-18 08:06 373次阅读
    <b class='flag-5'>e</b>² studio创建lib文件及使用

    E型载波系统基础知识

    E1 标准定义了传输路径的物理特性,因此它对应于 OSI 模型中的物理层(第 1 层)。ATM等技术构成第2层,能够通过E1线路,使E1成为电信中使用的基本技术之一。
    的头像 发表于 01-11 16:49 930次阅读
    <b class='flag-5'>E</b>型载波系统基础知识

    微软的Windows Hello指纹认证已被破解

    ,研究人员在10月份的微软BlueHat会议上发表了他们的研究结果。该团队将Goodix、Synaptics和ELAN的流行指纹传感器确定为他们研究的目
    的头像 发表于 11-24 16:24 719次阅读