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.
 
 
 

12 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.
  • Совершенствование тренировки и квантования: YOLO-NAS использует продвинутые схемы тренировки и пост-тренировочное квантование для улучшения производительности.
  • Оптимизация AutoNAC и предварительная обучение: YOLO-NAS использует оптимизацию AutoNAC и предварительное обучение на известных наборах данных, таких как COCO, Objects365 и Roboflow 100. Это предварительное обучение делает модель идеально подходящей для решений по обнаружению объектов в производственных средах.

Предварительно обученные модели

Ощутите мощь обнаружения объектов нового поколения с предварительно обученными моделями YOLO-NAS, предоставленными компанией Ultralytics. Эти модели разработаны для обеспечения высокой производительности как в плане скорости, так и точности. Выберите из различных вариантов, настроенных под ваши конкретные потребности:

Модель 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 сделала интеграцию моделей YOLO-NAS в ваши приложения на Python максимально простой с помощью нашего пакета ultralytics. Пакет предоставляет удобный API на Python, чтобы упростить весь процесс.

Ниже приведены примеры использования моделей YOLO-NAS с пакетом ultralytics для вывода результатов и их проверки:

Примеры вывода результатов и проверки

В этом примере мы проверяем модель YOLO-NAS-s на наборе данных COCO8.

!!! Example "Пример"

В этом примере представлен простой код вывода результатов и проверки для 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

    # Загрузка предварительно обученной модели YOLO-NAS-s на наборе данных COCO
    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"

    Для прямого запуска моделей доступны следующие команды:

    ```bash
    # Загрузка предварительно обученной модели YOLO-NAS-s на наборе данных COCO и проверка ее производительности на примере набора данных COCO8
    yolo val model=yolo_nas_s.pt data=coco8.yaml

    # Загрузка предварительно обученной модели YOLO-NAS-s на наборе данных COCO и запуск вывода результатов на изображении '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},
    }
    ```

Мы выражаем благодарность команде SuperGradients компании Deci AI за их усилия в создании и поддержке этого ценного ресурса для компьютерного зрения. Мы считаем, что YOLO-NAS со своей инновационной архитектурой и улучшенными возможностями обнаружения объектов станет важным инструментом как для разработчиков, так и для исследователей.

keywords: YOLO-NAS, Deci AI, обнаружение объектов, глубокое обучение, поиск нейроархитектур, Ultralytics Python API, модель YOLO, SuperGradients, предварительно обученные модели, базовый блок, дружественный квантованию, продвинутые схемы тренировки, пост-тренировочное квантование, оптимизация AutoNAC, COCO, Objects365, Roboflow 100