Как экспортировать модели YOLO26 в формат PaddlePaddle#
Устранить разрыв между разработкой и развёртыванием моделей компьютерного зрения в реальных сценариях с различными условиями может быть непросто. PaddlePaddle упрощает этот процесс благодаря своему вниманию к гибкости, производительности и возможности параллельной обработки в распределённых средах. Это означает, что ты можешь использовать свои модели компьютерного зрения YOLO26 на самых разных устройствах и платформах — от смартфонов до облачных серверов.
Watch: How to Export Ultralytics YOLO26 Models to PaddlePaddle Format | Key Features of PaddlePaddle Format
Возможность экспорта в формат моделей PaddlePaddle позволяет оптимизировать твои модели Ultralytics YOLO26 для использования в рамках PaddlePaddle. PaddlePaddle известен тем, что упрощает промышленные развёртывания, и хорошо подходит для развёртывания приложений компьютерного зрения в реальных условиях в различных сферах.
Зачем экспортировать в PaddlePaddle?#
Разработанный Baidu, PaddlePaddle (PAраллельное Dраспределённое Dглубокое LEобучение) — первая китайская платформа глубокого обучения с открытым исходным кодом. В отличие от некоторых платформ, созданных преимущественно для исследований, PaddlePaddle уделяет приоритетное внимание простоте использования и плавной интеграции в различных отраслях.
Он предлагает инструменты и ресурсы, аналогичные популярным платформам, таким как TensorFlow и PyTorch, благодаря чему доступен разработчикам с любым уровнем опыта. От сельского хозяйства и заводов до сервисных компаний — крупное сообщество разработчиков PaddlePaddle, насчитывающее более 4,77 миллиона человек, помогает создавать и развёртывать приложения ИИ.
Экспортируя свои модели Ultralytics YOLO26 в формат PaddlePaddle, ты можешь использовать преимущества PaddlePaddle в оптимизации производительности. PaddlePaddle уделяет приоритетное внимание эффективному выполнению моделей и снижению использования памяти. В результате твои модели YOLO26 потенциально могут достигать ещё более высокой производительности и обеспечивать отличные результаты в практических сценариях.
Основные возможности моделей PaddlePaddle#
Модели PaddlePaddle предлагают ряд ключевых возможностей, обеспечивающих их гибкость, производительность и масштабируемость в различных сценариях развёртывания:
-
Динамический и статический граф: PaddlePaddle поддерживает компиляцию динамического графа в статический, при которой модели преобразуются в статический вычислительный граф. Это позволяет выполнять оптимизации, снижающие накладные расходы во время выполнения и повышающие производительность инференса.
-
Слияние операторов: PaddlePaddle, как и TensorRT, использует слияние операторов для оптимизации вычислений и снижения накладных расходов. Платформа минимизирует передачи данных между памятью и количество вычислительных шагов, объединяя совместимые операции, что ускоряет инференс.
-
Квантизация: PaddlePaddle поддерживает методы квантизации, включая квантизацию после обучения и квантизационно-ориентированное обучение. Эти методы позволяют использовать представления данных с меньшей точностью, эффективно повышая производительность и уменьшая размер модели.
Варианты развёртывания в PaddlePaddle#
Прежде чем перейти к коду экспорта моделей YOLO26 в PaddlePaddle, рассмотрим различные сценарии развёртывания, в которых модели PaddlePaddle особенно эффективны.
PaddlePaddle предлагает ряд вариантов, каждый из которых обеспечивает свой баланс простоты использования, гибкости и производительности:
-
Paddle Serving: эта платформа упрощает развёртывание моделей PaddlePaddle в виде высокопроизводительных RESTful API. Paddle Serving идеально подходит для рабочих сред и предоставляет такие возможности, как управление версиями моделей, онлайн-тестирование A/B и масштабируемость для обработки большого количества запросов.
-
Paddle Inference API: Paddle Inference API предоставляет низкоуровневый контроль над выполнением модели. Этот вариант хорошо подходит для сценариев, в которых нужно тесно интегрировать модель в пользовательское приложение или оптимизировать производительность для конкретного оборудования.
-
Paddle Lite: Paddle Lite предназначен для развёртывания на мобильных и встраиваемых устройствах с ограниченными ресурсами. Он оптимизирует модели для уменьшения размера и ускорения инференса на ARM CPU, GPU и другом специализированном оборудовании.
-
Paddle.js: Paddle.js позволяет развёртывать модели PaddlePaddle непосредственно в веб-браузерах. Paddle.js может загрузить предварительно обученную модель или преобразовать модель из paddle-hub с помощью инструментов преобразования моделей, предоставляемых Paddle.js. Он может работать в браузерах, поддерживающих WebGL/WebGPU/WebAssembly.
Поддерживаемые задачи#
Экспорт PaddlePaddle поддерживает все семь задач Ultralytics. Семантическая сегментация и оценка глубины доступны только в YOLO26 — единственном семействе, поставляемом с такими головами.
| Задача | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Детекция | ✅ | ✅ | ✅ |
| Сегментация | ✅ | ✅ | ✅ |
| Семантическая сегментация | ❌ | ❌ | ✅ |
| Оценка глубины | ❌ | ❌ | ✅ |
| Классификация | ✅ | ✅ | ✅ |
| Поза | ✅ | ✅ | ✅ |
| OBB | ✅ | ✅ | ✅ |
Экспорт в PaddlePaddle: преобразование твоей модели YOLO26#
Преобразование моделей YOLO26 в формат PaddlePaddle может повысить гибкость выполнения и оптимизировать производительность для различных сценариев развёртывания.
Установка#
Чтобы установить необходимый пакет, выполни:
# Install the required package for YOLO26
pip install ultralyticsПодробные инструкции и рекомендации по установке смотри в нашем руководстве по установке Ultralytics. Если при установке необходимых для YOLO26 пакетов возникнут трудности, обратись к руководству по распространенным проблемам, где encontrarás решения и советы.
Использование#
Все модели Ultralytics YOLO26 поддерживают экспорт, а ты можешь просмотреть полный список форматов и параметров экспорта, чтобы выбрать наиболее подходящий вариант для своих задач развёртывания.
Формат PaddlePaddle поддерживает режимы Export, Predict и Validate. Экспортируй модель, затем загрузи экспортированную модель, чтобы выполнить инференс или проверить её точность.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to PaddlePaddle format
model.export(format="paddle") # creates 'yolo26n_paddle_model'from ultralytics import YOLO
# Load the exported PaddlePaddle model
model = YOLO("./yolo26n_paddle_model")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported PaddlePaddle model
model = YOLO("./yolo26n_paddle_model")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Аргументы экспорта#
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
format | str | 'paddle' | Целевой формат экспортированной модели, определяющий совместимость с различными средами развёртывания. |
imgsz | int или tuple | 640 | Требуемый размер изображения для входных данных модели. Может быть целым числом для квадратных изображений или кортежем (height, width) для указания конкретных размеров. |
quantize | int или str | None | Экспорт выполняется в формате FP32. Экспорт PaddlePaddle не поддерживает преобразование точности FP16, INT8 или W8A16 во время экспорта. |
batch | int | 1 | Задаёт размер пакета при инференсе экспортированной модели или максимальное количество изображений, которые экспортированная модель будет обрабатывать одновременно в режиме predict. |
device | str | None | Указывает устройство для экспорта: CPU (device=cpu), MPS для Apple silicon (device=mps). |
Подробнее о процессе экспорта см. на странице документации Ultralytics об экспорте.
Развёртывание экспортированных моделей YOLO26 PaddlePaddle#
После успешного экспорта твоих моделей Ultralytics YOLO26 в формат PaddlePaddle ты можешь развернуть их. Основным и рекомендуемым первым шагом для запуска модели PaddlePaddle является использование метода YOLO("yolo26n_paddle_model/") , как показано в предыдущем фрагменте кода использования.
Однако подробные инструкции по развёртыванию моделей PaddlePaddle в различных других средах смотри в следующих ресурсах:
-
Paddle Serving: узнай, как развёртывать свои модели PaddlePaddle в виде производительных сервисов с помощью Paddle Serving.
-
Paddle Lite: узнай, как оптимизировать и развёртывать модели на мобильных и встраиваемых устройствах с помощью Paddle Lite.
-
Paddle.js: узнай, как запускать модели PaddlePaddle в веб-браузерах для клиентского ИИ с помощью Paddle.js.
Итоги#
В этом руководстве мы рассмотрели процесс экспорта моделей Ultralytics YOLO26 в формат PaddlePaddle. Следуя этим шагам, ты можешь использовать преимущества PaddlePaddle в различных сценариях развёртывания, оптимизируя модели для разных аппаратных и программных сред.
Подробнее об использовании смотри в официальной документации PaddlePaddle.
Хочешь узнать о других способах интеграции своих моделей Ultralytics YOLO26? На нашей странице руководства по интеграции рассматриваются различные варианты и представлены полезные ресурсы и сведения.
Часто задаваемые вопросы#
Экспортировать модели Ultralytics YOLO26 в формат PaddlePaddle легко. Для преобразования можно использовать метод
exportкласса YOLO. Вот пример на Python:Использованиеfrom ultralytics import YOLO # Load a YOLO26 model model = YOLO("yolo26n.pt") # Export the model to PaddlePaddle format model.export(format="paddle") # creates 'yolo26n_paddle_model' # Load the exported PaddlePaddle model paddle_model = YOLO("./yolo26n_paddle_model") # Run inference results = paddle_model("https://ultralytics.com/images/bus.jpg")Более подробные сведения о настройке и устранении неполадок смотри в руководстве по установке Ultralytics и руководстве по распространённым проблемам.
PaddlePaddle предлагает несколько ключевых преимуществ для развёртывания моделей:
- Оптимизация производительности: PaddlePaddle обеспечивает эффективное выполнение моделей и сниженное использование памяти.
- Компиляция динамического графа в статический: поддерживает компиляцию динамического графа в статический, обеспечивая оптимизацию во время выполнения.
- Слияние операторов: объединяя совместимые операции, PaddlePaddle снижает вычислительные накладные расходы.
- Методы квантизации: поддерживает квантизацию после обучения и квантизационно-ориентированное обучение, обеспечивая представления данных с меньшей точностью для повышения производительности.
Экспортируя свои модели Ultralytics YOLO26 в PaddlePaddle, ты можешь добиться улучшенных результатов, обеспечив гибкость и высокую производительность в различных приложениях и на разных аппаратных платформах. Изучи ключевые возможности PaddlePaddle в официальной документации PaddlePaddle.
PaddlePaddle, разработанный Baidu, оптимизирован для промышленного и коммерческого развёртывания ИИ. Крупное сообщество разработчиков и надёжная платформа предоставляют обширный набор инструментов, аналогичный TensorFlow и PyTorch. Экспортируя свои модели YOLO26 в PaddlePaddle, ты получаешь:
- Повышенная производительность: оптимальная скорость выполнения и уменьшенный объём используемой памяти.
- Гибкость: широкая совместимость с различными устройствами — от смартфонов до облачных серверов.
- Масштабируемость: эффективные возможности параллельной обработки в распределённых средах.
Эти возможности делают PaddlePaddle привлекательным выбором для развёртывания моделей YOLO26 в рабочих средах.
PaddlePaddle применяет несколько передовых методов для оптимизации производительности моделей:
- Динамический и статический граф: преобразует модели в статический вычислительный граф для оптимизации во время выполнения.
- Слияние операторов: объединяет совместимые операции, чтобы минимизировать передачу данных между памятью и повысить скорость инференса.
- Квантизация: уменьшает размер модели и повышает эффективность за счёт использования данных с меньшей точностью, сохраняя точность.
Эти методы обеспечивают эффективное выполнение моделей, делая PaddlePaddle отличным вариантом для развёртывания высокопроизводительных моделей YOLO26. Подробнее об оптимизации смотри в официальной документации PaddlePaddle.
PaddlePaddle предоставляет гибкие варианты развёртывания:
- Paddle Serving: развёртывает модели в виде RESTful API и идеально подходит для рабочих сред благодаря таким возможностям, как управление версиями моделей и онлайн-тестирование A/B.
- Paddle Inference API: предоставляет низкоуровневый контроль над выполнением моделей для пользовательских приложений.
- Paddle Lite: оптимизирует модели для ограниченных ресурсов мобильных и встраиваемых устройств.
- Paddle.js: позволяет развёртывать модели непосредственно в веб-браузерах.
Эти варианты охватывают широкий спектр сценариев развёртывания — от инференса на устройстве до масштабируемых облачных сервисов. Узнай больше о стратегиях развёртывания на странице вариантов развёртывания моделей Ultralytics.