Meet YOLO26: next-gen vision AI.

Link to this sectionТестирование производительности моделей с помощью Ultralytics YOLO#

Ultralytics YOLO ecosystem and integrations

Link to this sectionВизуализация тестов#

Обновите страницу

Возможно, тебе потребуется обновить страницу, чтобы корректно отобразить графики из-за потенциальных проблем с файлами cookie.

Link to this sectionВведение#

Как только твоя модель обучена и валидирована, следующим логическим шагом будет оценка её производительности в различных реальных сценариях. Режим тестирования в Ultralytics YOLO26 служит именно этой цели, предоставляя надежную базу для оценки скорости и точности твоей модели для различных форматов экспорта.



Watch: Benchmark Ultralytics YOLO26 Models | How to Compare Model Performance on Different Hardware?

Link to this sectionПочему тестирование так важно?#

  • Обоснованные решения: Получай представление о компромиссах между скоростью и точностью.
  • Распределение ресурсов: Понимай, как различные форматы экспорта работают на разном оборудовании.
  • Оптимизация: Узнай, какой формат экспорта обеспечивает наилучшую производительность для твоего конкретного случая использования.
  • Экономическая эффективность: Эффективнее используй аппаратные ресурсы на основе результатов тестирования.

Link to this sectionОсновные метрики в режиме тестирования#

Link to this sectionПоддерживаемые форматы экспорта#

  • ONNX: Для оптимальной производительности на CPU
  • TensorRT: Для максимальной эффективности на GPU
  • OpenVINO: Для оптимизации под оборудование Intel
  • CoreML, TensorFlow SavedModel и другие: Для разнообразных потребностей развертывания.
Совет
  • Экспортируй в ONNX или OpenVINO для ускорения работы на CPU до 3 раз.
  • Экспортируй в TensorRT для ускорения работы на GPU до 5 раз.

Link to this sectionПримеры использования#

Рекомендуемая установка

Установи Ultralytics вместе с зависимостями для экспорта перед началом тестирования, чтобы избежать проблем с отсутствующими пакетами.

pip install ultralytics[export]

Запусти тесты YOLO26n для всех поддерживаемых форматов экспорта (ONNX, TensorRT и т.д.). Смотри раздел Аргументы ниже для получения полного списка опций экспорта.

Пример
from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo26n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)

# Benchmark specific export format
benchmark(model="yolo26n.pt", data="coco8.yaml", imgsz=640, format="onnx")

Link to this sectionАргументы#

Такие аргументы, как model, data, imgsz, half, device, verbose и format, дают пользователям гибкость для настройки тестов под свои специфические нужды и легкого сравнения производительности разных форматов экспорта.

КлючЗначение по умолчаниюОписание
modelNoneУказывает путь к файлу модели. Принимает форматы .pt и .yaml, например, "yolo26n.pt" для предобученных моделей или конфигурационных файлов.
dataNoneПуть к YAML-файлу, определяющему набор данных для тестирования, обычно включая пути и настройки для валидационных данных. Пример: "coco8.yaml".
imgsz640Размер входного изображения для модели. Должен быть единственным целым числом для квадратных изображений (например, 640); benchmark() поддерживает только квадратные размеры изображений.
halfFalseВключает вывод FP16 (полуточная точность), сокращая использование памяти и, возможно, увеличивая скорость на совместимом оборудовании. Используй half=True для включения.
int8FalseАктивирует INT8 квантование для еще более оптимизированной производительности на поддерживаемых устройствах, особенно полезно для граничных устройств. Установи int8=True для использования.
device'cpu'Определяет вычислительное устройство(а) для тестирования, такие как "cpu" или "cuda:0".
verboseFalseУправляет уровнем детализации в логах вывода. Установи verbose=True для подробных логов.
format''Тестирует только указанный формат экспорта (например, format=onnx). Оставь пустым, чтобы автоматически протестировать каждый поддерживаемый формат.

Link to this sectionФорматы экспорта#

Тесты будут автоматически запущены для всех возможных форматов экспорта, перечисленных ниже. Альтернативно, ты можешь запустить тесты для конкретного формата, используя аргумент format, который принимает любой из нижеперечисленных форматов.

ФорматАргумент formatМодельМетаданныеАргументы
PyTorch-yolo26n.pt-
TorchScripttorchscriptyolo26n.torchscriptimgsz, half, dynamic, optimize, nms, batch, device
ONNXonnxyolo26n.onnximgsz, half, int8, dynamic, simplify, opset, nms, batch, data, fraction, device
OpenVINOopenvinoyolo26n_openvino_model/imgsz, half, dynamic, int8, nms, batch, data, fraction, device
TensorRTengineyolo26n.engineimgsz, half, dynamic, simplify, workspace, int8, nms, batch, data, fraction, device
CoreMLcoremlyolo26n.mlpackageimgsz, dynamic, half, int8, nms, batch, device
TF SavedModelsaved_modelyolo26n_saved_model/imgsz, keras, int8, nms, batch, data, fraction, device
TF GraphDefpbyolo26n.pbimgsz, batch, device
TF Litetfliteyolo26n.tfliteimgsz, half, int8, nms, batch, data, fraction, device
TF Edge TPUedgetpuyolo26n_edgetpu.tfliteimgsz, int8, data, fraction, device
TF.jstfjsyolo26n_web_model/imgsz, half, int8, nms, batch, data, fraction, device
PaddlePaddlepaddleyolo26n_paddle_model/imgsz, batch, device
MNNmnnyolo26n.mnnimgsz, batch, int8, half, device
NCNNncnnyolo26n_ncnn_model/imgsz, half, batch, device
IMX500imxyolo26n_imx_model/imgsz, int8, data, fraction, nms, device
RKNNrknnyolo26n_rknn_model/imgsz, batch, name, int8, data, fraction, device
ExecuTorchexecutorchyolo26n_executorch_model/imgsz, batch, device
Axeleraaxelerayolo26n_axelera_model/imgsz, batch, int8, data, fraction, device
DEEPXdeepxyolo26n_deepx_model/imgsz, int8, data, optimize, device
Qualcomm QNNqnnyolo26n_qnn_model/imgsz, batch, name, int8, data, fraction, device

Смотри подробную информацию об export на странице Export.

Link to this sectionFAQ#

Link to this sectionКак протестировать производительность моей модели YOLO26 с помощью Ultralytics?#

Ultralytics YOLO26 предлагает режим Benchmark для оценки производительности твоей модели при различных форматах экспорта. Этот режим дает представление о таких ключевых показателях, как средняя точность (mAP50-95), точность и время вывода в миллисекундах. Чтобы запустить бенчмарки, используй команды Python или CLI. Например, для тестирования на GPU:

Пример
from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo26n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)

Более подробную информацию об аргументах бенчмарка смотри в разделе Arguments.

Link to this sectionКаковы преимущества экспорта моделей YOLO26 в различные форматы?#

Экспорт моделей YOLO26 в различные форматы, такие как ONNX, TensorRT и OpenVINO, позволяет оптимизировать производительность в зависимости от среды развертывания. Например:

  • ONNX: Обеспечивает ускорение CPU до 3 раз.
  • TensorRT: Предлагает ускорение GPU до 5 раз.
  • OpenVINO: Специально оптимизирован для оборудования Intel.

Эти форматы повышают скорость и точность моделей, делая их более эффективными для различных реальных задач. Посети страницу Export для получения полной информации.

Link to this sectionПочему бенчмаркинг важен при оценке моделей YOLO26?#

Бенчмаркинг моделей YOLO26 необходим по нескольким причинам:

  • Принятие взвешенных решений: Понимание баланса между скоростью и точностью.
  • Распределение ресурсов: Оценка производительности на различных вариантах оборудования.
  • Оптимизация: Определение формата экспорта с лучшей производительностью для конкретных случаев использования.
  • Экономическая эффективность: Оптимизация использования оборудования на основе результатов бенчмарков.

Ключевые метрики, такие как mAP50-95, точность Top-1 и время вывода, помогают проводить эти оценки. Обратись к разделу Основные метрики для получения дополнительной информации.

Link to this sectionКакие форматы экспорта поддерживает YOLO26 и в чем их преимущества?#

YOLO26 поддерживает множество форматов экспорта, каждый из которых адаптирован под конкретное оборудование и задачи:

  • ONNX: Лучший выбор для производительности CPU.
  • TensorRT: Идеально подходит для эффективности GPU.
  • OpenVINO: Оптимизирован для оборудования Intel.
  • CoreML и TensorFlow: Полезны для iOS и общих приложений ML.

Полный список поддерживаемых форматов и их преимущества смотри в разделе Supported Export Formats.

Link to this sectionКакие аргументы я могу использовать для точной настройки бенчмарков YOLO26?#

При запуске бенчмарков можно настроить несколько аргументов в соответствии с твоими потребностями:

  • model: Путь к файлу модели (например, "yolo26n.pt").
  • data: Путь к файлу YAML с описанием набора данных (например, "coco8.yaml").
  • imgsz: Размер входного изображения (целое число или кортеж).
  • half: Включение вывода FP16 для повышения производительности.
  • int8: Активация квантования INT8 для периферийных устройств (edge devices).
  • device: Указание вычислительного устройства (например, "cpu", "cuda:0").
  • verbose: Управление уровнем детализации логирования.

Полный список аргументов можно найти в разделе Arguments.

Комментарии