YOLOv9 и YOLOv10#
Компьютерное зрение в реальном времени стремительно развивается благодаря исследователям, которые постоянно расширяют границы производительности и эффективности. При анализе эволюции передовых моделей компьютерного зрения YOLOv9 и YOLOv10 представляют собой две важные вехи. Обе модели выпустили в начале 2024 года. В них впервые применили принципиально новые архитектурные решения для давних проблем глубоких нейронных сетей — от информационных бутылочных горлышек до задержки при постобработке.
В этом подробном техническом сравнении рассматриваются архитектуры, показатели производительности и оптимальные сценарии развертывания моделей, чтобы помочь тебе разобраться в сложной экосистеме современного обнаружения объектов.
Истоки моделей и архитектурные прорывы#
Понимание происхождения и теоретических основ этих моделей важно для выбора подходящей архитектуры для твоего проекта в области компьютерного зрения.
YOLOv9: управление потоком информации#
Представленная 21 февраля 2024 года, YOLOv9 решает теоретическую проблему потери информации при прохождении данных через глубокие нейронные сети.
- Авторы: Chien-Yao Wang и Hong-Yuan Mark Liao
- Организация: Институт информатики, Академия Синика, Тайвань
- Источник: Статья о YOLOv9 на arXiv
- Репозиторий: YOLOv9 на GitHub
YOLOv9 представляет обобщённую эффективную сеть агрегации слоёв (GELAN), которая максимально эффективно использует параметры, сочетая сильные стороны CSPNet и ELAN. Кроме того, в модели применяется программируемая информация о градиентах (PGI) — механизм вспомогательного обучения, который помогает глубоким слоям сохранять важную пространственную информацию. Благодаря этому YOLOv9 особенно хорошо справляется с задачами, требующими высокой точности передачи признаков, например с анализом медицинских изображений и наблюдением за удалёнными объектами.
YOLOv10: эффективность в реальном времени от начала до конца#
Вышедшая вскоре после неё, 23 мая 2024 года, YOLOv10 переосмысливает процесс развёртывания, устраняя одно из самых известных узких мест обнаружения объектов, вызывающих задержки: подавление немаксимумов (NMS).
- Авторы: Ao Wang, Hui Chen, Lihao Liu и др.
- Организация: Университет Цинхуа
- Источник: Статья о YOLOv10 на arXiv
- Репозиторий: YOLOv10 на GitHub
Во время обучения YOLOv10 использует согласованные двойные назначения, благодаря которым модель изначально имеет архитектуру без NMS. Это устраняет дополнительные затраты на постобработку при инференсе и значительно снижает задержку. В сочетании с комплексной архитектурой, ориентированной на баланс эффективности и точности, YOLOv10 обеспечивает превосходный баланс: сокращает вычислительные затраты (FLOPs), сохраняя конкурентоспособную точность. Это делает модель особенно привлекательной для приложений периферийных вычислений.
Сравнение производительности и метрик#
При сравнении этих двух мощных моделей на стандартном наборе данных MS COCO видны разные компромиссы между точностью и задержкой инференса.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
Анализ данных#
- Задержка и точность: Модели YOLOv10 обычно обеспечивают более высокую скорость инференса. Например, YOLOv10s достигает 46,3% mAP всего за 2,49 мс на TensorRT, тогда как YOLOv9s требуется 3,54 мс, чтобы получить близкий результат — 46,8% mAP.
- Максимальная точность: Для исследовательских задач, требующих наивысшей точности обнаружения, YOLOv9e остаётся серьёзным претендентом, достигая впечатляющих 55,6% mAP. Архитектура PGI обеспечивает надёжное извлечение малозаметных признаков.
- Эффективность: YOLOv10 отличается высокой эффективностью по FLOPs. Это напрямую снижает энергопотребление — важный показатель для устройств с батарейным питанием, на которых работают модели компьютерного зрения на базе ИИ.
Если ты развёртываешь модель на CPU или ограниченном в ресурсах периферийном оборудовании, например Raspberry Pi, архитектура YOLOv10 без NMS обычно обеспечивает более стабильный конвейер за счёт исключения недетерминированных этапов постобработки.
Преимущества Ultralytics: обучение и экосистема#
Архитектурные различия важны, но успех проекта во многом зависит от окружающей его программной экосистемы. YOLOv9 и YOLOv10 полностью интегрированы в экосистему Ultralytics, обеспечивающую непревзойдённый опыт для разработчиков.
Простота использования и эффективность работы с памятью#
В отличие от сложных архитектур на основе Transformer, потребляющих огромное количество памяти, модели Ultralytics YOLO разработаны для оптимального использования памяти GPU. Это позволяет исследователям использовать большие размеры батчей на потребительском оборудовании и делает передовые технологии ИИ доступнее.
Единый Python API скрывает сложности аугментации данных и настройки гиперпараметров. Чтобы переключиться между архитектурами, достаточно изменить строку с именем файла весов.
from ultralytics import YOLO
# Загрузи модель YOLOv10 (чтобы легко переключиться на YOLOv9, укажи «yolov9c.pt»)
model = YOLO("yolov10n.pt")
# Обучи модель на датасете COCO8
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)
# Проверка производительности модели
metrics = model.val()
# Экспортируй обученную модель в формат ONNX для развёртывания
model.export(format="onnx")Если тебе нужно записывать метрики в MLflow или экспортировать модель в TensorRT для высокоскоростного развёртывания на оборудовании, пакет Ultralytics для Python поддерживает это из коробки.
Оптимальные сценарии применения#
Выбор модели зависит от ограничений твоего развёртывания:
- Выбирай YOLOv9, если: ты работаешь над задачами обнаружения мелких объектов, например анализом аэрофотоснимков с дронов или обнаружением небольших опухолей, где сохранение признаков в архитектуре GELAN обеспечивает максимальную точность.
- Выбирай YOLOv10, если: твоя основная цель — инференс в реальном времени на периферийных устройствах. Архитектура без NMS идеально подходит для автономной робототехники, мониторинга дорожного движения в реальном времени и интеллектуального видеонаблюдения.
Готовность к будущему: переход на YOLO26#
YOLOv8, YOLOv9 и YOLOv10 — отличные модели, но разработчикам, которые хотят создавать современные решения на основе ИИ, стоит обратить внимание на Ultralytics YOLO26, выпущенную в январе 2026 года.
YOLO26 воплощает в себе лучшие наработки предыдущих поколений, сочетая точность YOLOv9 с эффективностью YOLOv10.
Ключевые инновации YOLO26#
- Архитектура без NMS от начала до конца: Развивая идеи YOLOv10, опциональная голова «один к одному» в YOLO26 (
nms=False) пропускает постобработку с NMS и упрощает развёртывание. - Оптимизатор MuSGD: Гибрид SGD и Muon, который переносит передовые разработки в обучении больших языковых моделей в компьютерное зрение и обеспечивает исключительно стабильную и быструю сходимость.
- Инференс на CPU до 43% быстрее: Модель специально оптимизирована для периферийных вычислений и устройств без выделенного GPU.
- Отказ от DFL: Distribution Focal Loss удалена, чтобы упростить экспорт модели и повысить совместимость с устройствами с низким энергопотреблением.
- ProgLoss + STAL: Эти улучшенные функции потерь заметно повышают качество распознавания мелких объектов, позволяя сравняться с YOLOv9 или превзойти её.
Исследователям, которые оценивают устаревшие архитектуры, также стоит рассмотреть RT-DETR и YOLO11 — хорошо документированные альтернативы в экосистеме Ultralytics. Однако для максимальной универсальности во всех задачах компьютерного зрения переход на YOLO26 на платформе Ultralytics позволит тебе использовать самые передовые возможности ИИ с открытым исходным кодом для компьютерного зрения.