Перейти к содержанию

Как экспортировать в формат PaddlePaddle из моделей YOLO11

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



Смотреть: Как экспортировать модели Ultralytics YOLO11 в формат PaddlePaddle | Ключевые особенности формата PaddlePaddle

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

Почему вы должны экспортировать на PaddlePaddle?

PaddlePaddle Логотип

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

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

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

Ключевые особенности моделей PaddlePaddle

PaddlePaddle Модели обладают рядом ключевых характеристик, которые обеспечивают их гибкость, производительность и масштабируемость в различных сценариях развертывания:

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

  • Слияние операторов: PaddlePaddle Как и в TensorRT, для оптимизации вычислений и снижения накладных расходов используется объединение операторов. Фреймворк минимизирует передачу памяти и вычислительные шаги за счет слияния совместимых операций, что приводит к ускорению вывода.

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

Варианты развертывания в PaddlePaddle

Прежде чем погрузиться в код для экспорта моделей YOLO11 в 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: Преобразование модели YOLO11

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

Установка

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

Установка

# Install the required package for YOLO11
pip install ultralytics

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

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

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

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

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to PaddlePaddle format
model.export(format="paddle")  # creates '/yolo11n_paddle_model'

# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo11n_paddle_model")

# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to PaddlePaddle format
yolo export model=yolo11n.pt format=paddle  # creates '/yolo11n_paddle_model'

# Run inference with the exported model
yolo predict model='./yolo11n_paddle_model' source='https://ultralytics.com/images/bus.jpg'

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

Развертывание экспортированных моделей YOLO11 PaddlePaddle

After successfully exporting your Ultralytics YOLO11 models to PaddlePaddle format, you can now deploy them. The primary and recommended first step for running a PaddlePaddle model is to use the YOLO("yolo11n_paddle_model/") method, as outlined in the previous usage code snippet.

Однако для получения подробных инструкций по развертыванию моделей PaddlePaddle в различных других условиях ознакомьтесь со следующими ресурсами:

  • Сервировка весла: Узнайте, как развернуть модели PaddlePaddle в качестве перфоманс-сервисов с помощью Paddle Serving.

  • Paddle Lite: Узнайте, как оптимизировать и развертывать модели на мобильных и встраиваемых устройствах с помощью Paddle Lite.

  • Paddle.js: Узнайте, как запускать модели PaddlePaddle в веб-браузерах для создания искусственного интеллекта на стороне клиента с помощью Paddle.js.

Резюме

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

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

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

ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ

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

Экспорт моделей Ultralytics YOLO11 в формат PaddlePaddle очень прост. Вы можете использовать export метод класса YOLO для выполнения этого экспорта. Приведем пример с использованием Python:

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

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to PaddlePaddle format
model.export(format="paddle")  # creates '/yolo11n_paddle_model'

# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo11n_paddle_model")

# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to PaddlePaddle format
yolo export model=yolo11n.pt format=paddle  # creates '/yolo11n_paddle_model'

# Run inference with the exported model
yolo predict model='./yolo11n_paddle_model' source='https://ultralytics.com/images/bus.jpg'

Более подробную информацию о настройке и устранении неполадок можно найти в руководстве по установкеUltralytics и руководстве по общим проблемам.

В чем преимущества использования PaddlePaddle для развертывания моделей?

PaddlePaddle предлагает несколько ключевых преимуществ для развертывания модели:

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

Вы можете добиться улучшенных результатов, экспортируя свои модели Ultralytics YOLO11 в PaddlePaddle, обеспечивая гибкость и высокую производительность в различных приложениях и аппаратных платформах. Подробнее о возможностях PaddlePaddle можно узнать здесь.

Почему стоит выбрать PaddlePaddle для развертывания моделей YOLO11 ?

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

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

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

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

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

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

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

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

PaddlePaddle обеспечивает гибкие возможности развертывания:

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

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

📅 Создано 10 месяцев назад ✏️ Обновлено 10 дней назад

Комментарии