Как экспортировать модели 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?

PaddlePaddle deep learning framework logo

PaddlePaddle (PArallel Distributed Deep LEarning), разработанная Baidu, является первой китайской платформой глубокого обучения с открытым исходным кодом. В отличие от некоторых фреймворков, созданных в основном для исследований, PaddlePaddle отдает приоритет простоте использования и плавной интеграции в индустрии.

Она предлагает инструменты и ресурсы, аналогичные популярным фреймворкам, таким как TensorFlow и PyTorch, что делает ее доступной для разработчиков любого уровня подготовки. От сельского хозяйства и производства до сферы услуг — большое сообщество разработчиков PaddlePaddle, насчитывающее более 4,77 млн человек, помогает создавать и развертывать AI-приложения.

Экспортируя свои модели 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: API для логического вывода Paddle предоставляет низкоуровневый контроль над выполнением модели. Этот вариант хорошо подходит для сценариев, где тебе нужно плотно интегрировать модель в пользовательское приложение или оптимизировать производительность под конкретное оборудование.

  • Paddle Lite: Paddle Lite разработан для развертывания на мобильных и встроенных устройствах с ограниченными ресурсами. Он оптимизирует модели для уменьшения их размера и ускорения логического вывода на процессорах ARM, GPU и другом специализированном оборудовании.

  • Paddle.js: Paddle.js позволяет развертывать модели PaddlePaddle непосредственно в веб-браузерах. Paddle.js может либо загружать предобученную модель, либо преобразовывать модель из paddle-hub с помощью инструментов преобразования моделей, предоставляемых Paddle.js. Он может работать в браузерах, поддерживающих WebGL/WebGPU/WebAssembly.

Экспорт в PaddlePaddle: Преобразование твоей модели YOLO26

Преобразование моделей YOLO26 в формат PaddlePaddle может улучшить гибкость выполнения и оптимизировать производительность для различных сценариев развертывания.

Установка

Чтобы установить необходимый пакет, выполни:

Установка
# Install the required package for YOLO26
pip install ultralytics

Для получения подробных инструкций и рекомендаций по процессу установки ознакомься с нашим руководством по установке Ultralytics. Если при установке необходимых пакетов для YOLO26 у тебя возникнут трудности, обратись к нашему руководству по распространенным проблемам за решениями и советами.

Использование

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

Использование
from ultralytics import YOLO

# Load the 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")

Аргументы экспорта

АргументТипПо умолчаниюОписание
formatstr'paddle'Целевой формат для экспортируемой модели, определяющий совместимость с различными средами развертывания.
imgszint или tuple640Желаемый размер изображения для входных данных модели. Может быть целым числом для квадратных изображений или кортежем (height, width) для указания конкретных размеров.
batchint1Указывает размер пакетного инференса для экспортированной модели или максимальное количество изображений, которые модель будет обрабатывать одновременно в режиме predict.
devicestrNoneУказывает устройство для экспорта: 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 в веб-браузерах для клиентского AI с помощью Paddle.js.

Резюме

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

Для получения дополнительной информации об использовании посети официальную документацию PaddlePaddle.

Хочешь узнать больше способов интеграции твоих моделей Ultralytics YOLO26? Наша страница руководства по интеграции исследует различные варианты, снабжая тебя ценными ресурсами и знаниями.

Часто задаваемые вопросы (FAQ)

Как экспортировать модели Ultralytics YOLO26 в формат PaddlePaddle?

Экспорт моделей Ultralytics YOLO26 в формат PaddlePaddle прост. Ты можешь использовать метод export класса YOLO для выполнения преобразования. Вот пример на Python:

Использование
from ultralytics import YOLO

# Load the 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 для развертывания моих моделей YOLO26?

PaddlePaddle, разработанная Baidu, оптимизирована для промышленных и коммерческих AI-решений. Большое сообщество разработчиков и надежный фреймворк предоставляют обширные инструменты, аналогичные TensorFlow и PyTorch. Экспортируя модели YOLO26 в PaddlePaddle, ты получаешь:

  • Повышенная производительность: Оптимальная скорость выполнения и уменьшение объема занимаемой памяти.
  • Гибкость: Широкая совместимость с различными устройствами, от смартфонов до облачных серверов.
  • Масштабируемость: Эффективные возможности параллельной обработки для распределенных сред.

Эти особенности делают PaddlePaddle привлекательным выбором для развертывания моделей YOLO26 в производственных условиях.

Как PaddlePaddle улучшает производительность моделей по сравнению с другими фреймворками?

PaddlePaddle применяет несколько передовых методов для оптимизации производительности моделей:

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

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

Какие варианты развертывания предлагает PaddlePaddle для моделей YOLO26?

PaddlePaddle предоставляет гибкие варианты развертывания:

  • Paddle Serving: Развертывает модели как RESTful API, идеально подходит для производства благодаря функциям версионирования моделей и онлайн A/B тестирования.
  • Paddle Inference API: Предоставляет низкоуровневый контроль над выполнением модели для пользовательских приложений.
  • Paddle Lite: Оптимизирует модели для работы с ограниченными ресурсами мобильных и встроенных устройств.
  • Paddle.js: Позволяет развертывать модели непосредственно в веб-браузерах.

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

Комментарии