You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

6.7 KiB

comments description keywords
true 探索详细的YOLO-NAS文档,这是一个更高级的物体检测模型。了解其特点、预训练模型、与Ultralytics Python API的使用等内容。 YOLO-NAS, Deci AI, 物体检测, 深度学习, 神经架构搜索, Ultralytics Python API, YOLO模型, 预训练模型, 量化, 优化, COCO, Objects365, Roboflow 100

YOLO-NAS

概述

由Deci AI开发,YOLO-NAS是一种开创性的物体检测基础模型。它是先进的神经架构搜索技术的产物,经过精心设计以解决之前YOLO模型的局限性。YOLO-NAS在量化支持和准确性-延迟权衡方面取得了重大改进,代表了物体检测领域的重大飞跃。

模型示例图像 YOLO-NAS概览。 YOLO-NAS采用量化感知块和选择性量化实现最佳性能。当将模型转换为INT8量化版本时,模型会经历较小的精度损失,比其他模型有显著改进。这些先进技术使得YOLO-NAS成为具有前所未有的物体检测能力和出色性能的卓越架构。

主要特点

  • 量化友好基本块: YOLO-NAS引入了一种新的基本块,对量化友好,解决了之前YOLO模型的一个重要局限性。
  • 高级训练和量化: YOLO-NAS利用先进的训练方案和训练后量化以提高性能。
  • AutoNAC优化和预训练: YOLO-NAS利用AutoNAC优化,并在著名数据集(如COCO、Objects365和Roboflow 100)上进行了预训练。这种预训练使其非常适合生产环境中的下游物体检测任务。

预训练模型

通过Ultralytics提供的预训练YOLO-NAS模型,体验下一代物体检测的强大功能。这些模型旨在在速度和准确性方面提供出色的性能。根据您的需求,可以选择各种选项:

模型 mAP 延迟(ms)
YOLO-NAS S 47.5 3.21
YOLO-NAS M 51.55 5.85
YOLO-NAS L 52.22 7.87
YOLO-NAS S INT-8 47.03 2.36
YOLO-NAS M INT-8 51.0 3.78
YOLO-NAS L INT-8 52.1 4.78

每个模型变体均旨在在均衡平均精度(mAP)和延迟之间提供平衡,帮助您为性能和速度都进行优化的物体检测任务。

用法示例

通过我们的ultralytics python包,Ultralytics使得将YOLO-NAS模型集成到您的Python应用程序中变得容易。该包提供了一个用户友好的Python API,以简化流程。

以下示例展示了如何使用ultralytics包与YOLO-NAS模型进行推理和验证:

推理和验证示例

这个示例中,我们在COCO8数据集上验证YOLO-NAS-s。

!!! 例子

以下示例为YOLO-NAS提供了简单的推理和验证代码。有关处理推理结果的方法,请参见[Predict](../modes/predict.md)模式。有关使用其他模式的YOLO-NAS的方法,请参见[Val](../modes/val.md)和[Export](../modes/export.md)。`ultralytics`包中的YOLO-NAS不支持训练。

=== "Python"

    可以将预训练的PyTorch `*.pt`模型文件传递给`NAS()`类以在python中创建一个模型实例:

    ```python
    from ultralytics import NAS

    # 加载一个在COCO上预训练的YOLO-NAS-s模型
    model = NAS('yolo_nas_s.pt')

    # 显示模型信息(可选)
    model.info()

    # 在COCO8示例数据集上验证模型
    results = model.val(data='coco8.yaml')

    # 使用YOLO-NAS-s模型对'bus.jpg'图像进行推理
    results = model('path/to/bus.jpg')
    ```

=== "CLI"

    可以使用CLI命令直接运行模型:

    ```bash
    # 加载一个在COCO上预训练的YOLO-NAS-s模型,并验证其在COCO8示例数据集上的性能
    yolo val model=yolo_nas_s.pt data=coco8.yaml

    # 加载一个在COCO上预训练的YOLO-NAS-s模型,并对'bus.jpg'图像进行推理
    yolo predict model=yolo_nas_s.pt source=path/to/bus.jpg
    ```

支持的任务和模式

我们提供了三种类型的YOLO-NAS模型:Small (s)、Medium (m)和Large (l)。每种类型都旨在满足不同的计算和性能需求:

  • YOLO-NAS-s: 针对计算资源有限但效率至关重要的环境进行了优化。
  • YOLO-NAS-m: 提供平衡的方法,适用于具有更高准确性的通用物体检测。
  • YOLO-NAS-l: 面向需要最高准确性的场景,计算资源不是限制因素。

下面是每个模型的详细信息,包括它们的预训练权重链接、支持的任务以及与不同操作模式的兼容性。

模型类型 预训练权重链接 支持的任务 推理 验证 训练 导出
YOLO-NAS-s yolo_nas_s.pt 物体检测
YOLO-NAS-m yolo_nas_m.pt 物体检测
YOLO-NAS-l yolo_nas_l.pt 物体检测

引用和致谢

如果您在研究或开发工作中使用了YOLO-NAS,请引用SuperGradients:

!!! Quote ""

=== "BibTeX"

    ```bibtex
    @misc{supergradients,
          doi = {10.5281/ZENODO.7789328},
          url = {https://zenodo.org/record/7789328},
          author = {Aharon,  Shay and {Louis-Dupont} and {Ofri Masad} and Yurkova,  Kate and {Lotem Fridman} and {Lkdci} and Khvedchenya,  Eugene and Rubin,  Ran and Bagrov,  Natan and Tymchenko,  Borys and Keren,  Tomer and Zhilko,  Alexander and {Eran-Deci}},
          title = {Super-Gradients},
          publisher = {GitHub},
          journal = {GitHub repository},
          year = {2021},
    }
    ```

我们向Deci AI的SuperGradients团队表示感谢,他们致力于创建和维护这个对计算机视觉社区非常有价值的资源。我们相信YOLO-NAS凭借其创新的架构和卓越的物体检测能力,将成为开发者和研究人员的重要工具。

keywords: YOLO-NAS, Deci AI, 物体检测, 深度学习, 神经架构搜索, Ultralytics Python API, YOLO模型, SuperGradients, 预训练模型, 量化友好基本块, 高级训练方案, 训练后量化, AutoNAC优化, COCO, Objects365, Roboflow 100