目标检测开源框架YOLOv6全面升级,更快更准的2.0版本来啦

9月5日,美团视觉智能部发布了YOLOv6 2.0版本,本次更新对轻量级网络进行了全面升级,量化版模型 YOLOv6-S 达到了 869 FPS,同时,还推出了综合性能优异的中大型网络(YOLOv6-M/L),丰富了YOLOv6网络系列。其中,YOLOv6-M/L 在 COCO 上检测精度(AP)分别达到 49.5%/52.5%,在 T4 卡上推理速度分别可达 233/121 FPS(batch size =32)。

GitHub下载地址:https://github.com/meituan/YOLOv6。欢迎Star收藏,随时取用。

官方出品详细的Tech Report带你解构YOLOv6YOLOv6: A Single-Stage Object Detection Framework for Industrial Applications

目标检测开源框架YOLOv6全面升级,更快更准的2.0版本来啦_第1张图片

注:YOLOv6系列模型均在训练300epoch且不使用预训练模型或额外检测数据集下获得,”‡“表示采用了自蒸馏算法,”∗“表示从官方代码库对发布模型进行重新测评的指标。以上速度指标均在T4 TRT7.2 环境下测试。

目标检测开源框架YOLOv6全面升级,更快更准的2.0版本来啦_第2张图片

注:YOLOv6系列模型均在训练300epoch且不使用预训练模型或额外检测数据集下获得,”‡“表示采用了自蒸馏算法,”∗“表示从官方代码库对发布模型进行重新测评的指标。以上速度指标均在T4 TRT7.2 环境下测试。

本次版本升级,主要有以下更新:

性能更强的全系列模型

  1. 针对中大型模型(YOLOv6-M/L),设计了新主干网络 CSPStackRep,它在综合性能上比上一版的 Single Path 结构更具优势。
  2. 针对不同网络,系统性地验证了各种最新策略/算法的优劣,综合精度和速度,为每类网络选择合适的方案。同时将模型整体训练时间减少了 50%,极大地提升了模型的训练效率。
  3. 引入自蒸馏思想并设计了新的学习策略,大幅提升了 YOLOv6-M/L 的模型精度。
  4. 通过训练时 Early Stop 强数据增强及推理时图像 Resize 优化策略,修复了前期版本中输入尺寸对齐到 640x640 后精度损失的问题,提升了现有模型的实际部署精度。

表 1 展示了 YOLOv6 与当前主流的其他 YOLO 系列算法相比较的实验结果,对比业界其他 YOLO 系列,YOLOv6在所有系列均具有一定的优势:

  • YOLOv6-M 在 COCO val 上 取得了 49.5% 的精度,在 T4 显卡上使用 TRT FP16 batchsize=32 进行推理,可达到 233 FPS 的性能。
  • YOLOv6-L 在 COCO val 上 取得了 52.5% 的精度,在 T4 显卡上使用 TRT FP16 batchsize=32 进行推理,可达到 121 FPS 的性能。
  • 同时,YOLOv6-N/ S 模型在保持同等推理速度情况下,大幅提升了精度指标,训练400 epoch 的条件下,N 网络从 35.0% 提升至 36.3%,S 网络从 43.1% 提升至 43.8%。

量身定制的量化方案

本次发布还集成了专门针对 YOLOv6 的量化方案,对重参数化系列模型的量化也有参考意义。该方案借鉴 RepOptimizer [1] 在梯度更新时做重参数化,解决了多支路动态范围过大导致难以量化的问题,用 RepOptimizer 训练的 YOLOv6 模型可以直接使用训练后量化(Post-training Quantization,PTQ),而不产生过大的精度损失。

在这一基础上,我们分析了各层的量化敏感性,将部分敏感层以更高精度运算,进一步提升了模型的精度。另外,我们同时发布了针对 2.0 版本的基于逐通道蒸馏的量化感知训练方案 (Quantization-aware Training,QAT),并结合图优化,YOLOv6-S 2.0 版本的量化性能可达到 43.3 mAP 和 869 FPS (batch size=32)。

目标检测开源框架YOLOv6全面升级,更快更准的2.0版本来啦_第3张图片

注:以上速度指标均在 T4 TRT8.4 环境下测试。对比方法为 PaddleSlim [30] 。

不同之处是 PaddleSlim 使用 YOLOv6-S 1.0 版本,我们的量化方案应用于 2.0 版本。更详尽的关于量化部署实践的相关内容,近期会在美团技术团队公众号上进行推送,敬请期待。

完备的开发支持和多平台部署适配

YOLOv6 支持检测模型训练、评估、预测以及模型量化、蒸馏等全链路开发流程,同时支持 GPU(TensorRT)、CPU(OPENVINO)、ARM(MNN、TNN、NCNN)等不同平台的部署,极大简化工程部署时的适配工作。更详细的教程指引请移步 YOLOv6 Github 仓库 Deployment 的部分。

相关论文

[1] RepOptimizer:Re-parameterizing Your Optimizers rather than Architectures

阅读美团技术团队更多技术文章合集

前端 | 算法 | 后端 | 数据 | 安全 | 运维 | iOS | Android | 测试

| 在公众号菜单栏对话框回复【2021年货】、【2020年货】、【2019年货】、【2018年货】、【2017年货】等关键词,可查看美团技术团队历年技术文章合集。

| 本文系美团技术团队出品,著作权归属美团。欢迎出于分享和交流等非商业目的转载或使用本文内容,敬请注明“内容转载自美团技术团队”。本文未经许可,不得进行商业性转载或者使用。任何商用行为,请发送邮件至[email protected]申请授权。

你可能感兴趣的:(美团开源人工智能)