Узнайте, как экспортировать модель YOLO11 в формат TFLite Edge TPU
Развертывание моделей компьютерного зрения на устройствах с ограниченной вычислительной мощностью, таких как мобильные или встроенные системы, может быть сложным. Использование формата модели, оптимизированного для более высокой производительности, упрощает этот процесс. Формат модели TensorFlow Lite Edge TPU или TFLite Edge TPU разработан для минимального энергопотребления при обеспечении высокой производительности нейронных сетей.
Функция экспорта в формат TFLite Edge TPU позволяет оптимизировать ваши модели Ultralytics YOLO11 для высокоскоростного и маломощного логического вывода. В этом руководстве мы расскажем, как преобразовать ваши модели в формат TFLite Edge TPU, чтобы ваши модели могли хорошо работать на различных мобильных и встроенных устройствах.
Зачем экспортировать в TFLite Edge TPU?
Экспорт моделей в TensorFlow Edge TPU делает задачи машинного обучения быстрыми и эффективными. Эта технология подходит для приложений с ограниченной мощностью, вычислительными ресурсами и возможностями подключения. Edge TPU — это аппаратный ускоритель от Google. Он ускоряет модели TensorFlow Lite на периферийных устройствах. На изображении ниже показан пример этого процесса.
Edge TPU работает с квантованными моделями. Квантование делает модели меньше и быстрее без существенной потери точности. Это идеально подходит для ограниченных ресурсов периферийных вычислений, позволяя приложениям быстро реагировать за счет уменьшения задержки и быстрой локальной обработки данных без зависимости от облака. Локальная обработка также обеспечивает конфиденциальность и безопасность пользовательских данных, поскольку они не отправляются на удаленный сервер.
Основные характеристики TFLite Edge TPU
Вот основные функции, которые делают TFLite Edge TPU отличным выбором формата модели для разработчиков:
-
Оптимизированная производительность на периферийных устройствах: TFLite Edge TPU обеспечивает высокую скорость работы нейронных сетей благодаря квантованию, оптимизации модели, аппаратному ускорению и оптимизации компилятора. Его минималистичная архитектура способствует уменьшению размера и экономической эффективности.
-
Высокая вычислительная пропускная способность: TFLite Edge TPU сочетает в себе специализированное аппаратное ускорение и эффективное исполнение во время выполнения для достижения высокой вычислительной пропускной способности. Он хорошо подходит для развертывания моделей машинного обучения со строгими требованиями к производительности на периферийных устройствах.
-
Эффективные матричные вычисления: TensorFlow Edge TPU оптимизирован для матричных операций, которые имеют решающее значение для вычислений нейронных сетей. Эта эффективность является ключевой в моделях машинного обучения, особенно в тех, которые требуют многочисленных и сложных матричных умножений и преобразований.
Варианты развертывания с TFLite Edge TPU
Прежде чем мы перейдем к экспорту моделей YOLO11 в формат TFLite Edge TPU, давайте разберемся, где обычно используются модели TFLite Edge TPU.
TFLite Edge TPU предлагает различные варианты развертывания моделей машинного обучения, в том числе:
-
Развертывание на устройстве: Модели TensorFlow Edge TPU можно развертывать непосредственно на мобильных и встроенных устройствах. Развертывание на устройстве позволяет моделям выполняться непосредственно на оборудовании, устраняя необходимость в облачном подключении.
-
Периферийные вычисления с облачными TensorFlow TPU: В сценариях, когда периферийные устройства имеют ограниченные возможности обработки, TensorFlow Edge TPU может переносить задачи логического вывода на облачные серверы, оснащенные TPU.
-
Гибридное развертывание: Гибридный подход сочетает в себе развертывание на устройстве и в облаке и предлагает универсальное и масштабируемое решение для развертывания моделей машинного обучения. Преимущества включают обработку на устройстве для быстрого реагирования и облачные вычисления для более сложных вычислений.
Экспорт моделей YOLO11 в TFLite Edge TPU
Вы можете расширить совместимость моделей и гибкость развертывания, преобразовав модели YOLO11 в TensorFlow Edge TPU.
Установка
Чтобы установить необходимый пакет, выполните:
Установка
# 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 TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'
Аргументы экспорта
Аргумент | Тип | По умолчанию | Описание |
---|---|---|---|
format |
str |
'edgetpu' |
Целевой формат для экспортируемой модели, определяющий совместимость с различными средами развертывания. |
imgsz |
int или tuple |
640 |
Желаемый размер изображения для ввода модели. Может быть целым числом для квадратных изображений или кортежем (height, width) для конкретных размеров. |
device |
str |
None |
Указывает устройство для экспорта: CPU (device=cpu ). |
Совет
При экспорте в EdgeTPU убедитесь, что вы используете x86 Linux машину.
Для получения более подробной информации о процессе экспорта посетите страницу документации Ultralytics по экспорту.
Развертывание экспортированных моделей YOLO11 TFLite Edge TPU
После успешного экспорта ваших моделей Ultralytics YOLO11 в формат TFLite Edge TPU вы можете их развернуть. Основным и рекомендуемым первым шагом для запуска модели TFLite Edge TPU является использование метода YOLO("model_edgetpu.tflite"), как указано в предыдущем фрагменте кода использования.
Однако для получения подробных инструкций по развертыванию моделей TFLite Edge TPU ознакомьтесь со следующими ресурсами:
-
Coral Edge TPU на Raspberry Pi с Ultralytics YOLO11: Узнайте, как интегрировать Coral Edge TPU с Raspberry Pi для расширенных возможностей машинного обучения.
-
Примеры кода: Получите доступ к практическим примерам развертывания TensorFlow Edge TPU, чтобы дать старт своим проектам.
-
Запуск инференса на Edge TPU с помощью python: Узнайте, как использовать TensorFlow Lite python API для приложений Edge TPU, включая руководство по настройке и использованию.
Обзор
В этом руководстве мы узнали, как экспортировать модели Ultralytics YOLO11 в формат TFLite Edge TPU. Следуя описанным выше шагам, вы можете повысить скорость и мощность ваших приложений компьютерного зрения.
Для получения более подробной информации об использовании посетите официальный сайт Edge TPU.
Кроме того, для получения дополнительной информации о других интеграциях Ultralytics YOLO11, пожалуйста, посетите нашу страницу руководства по интеграции. Там вы найдете ценные ресурсы и информацию.
Часто задаваемые вопросы
Как экспортировать модель YOLO11 в формат TFLite Edge TPU?
Чтобы экспортировать модель YOLO11 в формат TFLite Edge TPU, вы можете выполнить следующие шаги:
Использование
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'
Для получения полной информации об экспорте моделей в другие форматы обратитесь к нашему руководству по экспорту.
Каковы преимущества экспорта моделей YOLO11 в TFLite Edge TPU?
Экспорт моделей YOLO11 в TFLite Edge TPU предлагает несколько преимуществ:
- Оптимизированная производительность: Достигайте высокой скорости работы нейронной сети с минимальным энергопотреблением.
- Сниженная задержка: Быстрая локальная обработка данных без необходимости зависимости от облака.
- Повышенная конфиденциальность: Локальная обработка обеспечивает конфиденциальность и безопасность пользовательских данных.
Это делает его идеальным для приложений в периферийных вычислениях, где устройства имеют ограниченную мощность и вычислительные ресурсы. Узнайте больше о том, почему вам следует экспортировать.
Можно ли развертывать модели TFLite Edge TPU на мобильных и встроенных устройствах?
Да, модели TensorFlow Lite Edge TPU могут быть развернуты непосредственно на мобильных и встроенных устройствах. Такой подход к развертыванию позволяет моделям выполняться непосредственно на оборудовании, обеспечивая более быстрый и эффективный вывод. Примеры интеграции можно найти в нашем руководстве по развертыванию Coral Edge TPU на Raspberry Pi.
Каковы типичные примеры использования моделей TFLite Edge TPU?
Общие случаи использования моделей TFLite Edge TPU включают в себя:
- Умные камеры: Улучшение анализа изображений и видео в реальном времени.
- IoT-устройства: Обеспечение умного дома и промышленной автоматизации.
- Здравоохранение: Ускорение медицинской визуализации и диагностики.
- Розница: Улучшение управления запасами и анализа поведения клиентов.
Эти приложения выигрывают от высокой производительности и низкого энергопотребления моделей TFLite Edge TPU. Узнайте больше о сценариях использования.
Как устранять неполадки при экспорте или развертывании моделей TFLite Edge TPU?
Если у вас возникнут проблемы при экспорте или развертывании моделей TFLite Edge TPU, обратитесь к нашему руководству по распространенным проблемам для получения советов по устранению неполадок. В этом руководстве рассматриваются распространенные проблемы и решения, которые помогут вам обеспечить бесперебойную работу. Для получения дополнительной поддержки посетите наш Справочный центр.