Link to this sectionКак экспортировать YOLO26 в TF GraphDef для развертывания#
При развертывании передовых моделей компьютерного зрения, таких как YOLO26, в различных средах ты можешь столкнуться с проблемами совместимости. GraphDef от TensorFlow, или TF GraphDef, предлагает решение, предоставляя сериализованное, независимое от платформы представление твоей модели. Используя формат модели TF GraphDef, ты можешь развертывать свою модель YOLO26 в средах, где полная экосистема TensorFlow может быть недоступна, например на мобильных устройствах или специализированном оборудовании.
В этом руководстве мы пошагово расскажем тебе, как экспортировать модели Ultralytics YOLO26 в формат модели TF GraphDef. Конвертируя свою модель, ты сможешь упростить развертывание и использовать возможности компьютерного зрения YOLO26 в более широком спектре приложений и платформ.
Link to this sectionЗачем экспортировать в TF GraphDef?#
TF GraphDef — это мощный компонент экосистемы TensorFlow, разработанный Google. Его можно использовать для оптимизации и развертывания таких моделей, как YOLO26. Экспорт в TF GraphDef позволяет тебе переносить модели из исследований в реальные приложения. Это позволяет моделям работать в средах без полноценного фреймворка TensorFlow.
Формат GraphDef представляет модель как сериализованный вычислительный граф. Это открывает возможности для различных методов оптимизации, таких как свертка констант (constant folding), квантование и преобразования графа. Эти оптимизации обеспечивают эффективное выполнение, снижение использования памяти и более высокую скорость вывода.
Модели GraphDef могут использовать аппаратные ускорители, такие как GPU, TPU и AI-чипы, что значительно повышает производительность конвейера вывода YOLO26. Формат TF GraphDef создает автономный пакет с моделью и ее зависимостями, упрощая развертывание и интеграцию в разнообразные системы.
Link to this sectionОсновные особенности моделей TF GraphDef#
TF GraphDef предлагает уникальные возможности для упрощения развертывания моделей и их оптимизации.
Вот основные характеристики этого формата:
-
Сериализация модели: TF GraphDef предоставляет способ сериализации и хранения моделей TensorFlow в независимом от платформы формате. Это сериализованное представление позволяет тебе загружать и запускать свои модели без исходной кодовой базы Python, что упрощает развертывание.
-
Оптимизация графа: TF GraphDef позволяет оптимизировать вычислительные графы. Эти оптимизации могут повысить производительность за счет упрощения потока выполнения, уменьшения избыточности и настройки операций под конкретное оборудование.
-
Гибкость развертывания: Модели, экспортированные в формат GraphDef, можно использовать в различных средах, включая устройства с ограниченными ресурсами, веб-браузеры и системы со специализированным оборудованием. Это открывает возможности для более широкого развертывания твоих моделей TensorFlow.
-
Ориентация на продакшн: GraphDef разработан для развертывания в промышленной среде. Он поддерживает эффективное выполнение, функции сериализации и оптимизации, соответствующие реальным сценариям использования.
Link to this sectionВарианты развертывания с TF GraphDef#
Прежде чем мы перейдем к процессу экспорта моделей YOLO26 в TF GraphDef, давай рассмотрим типичные ситуации развертывания, где используется этот формат.
Вот как ты можешь эффективно развернуть модель с помощью TF GraphDef на различных платформах.
-
TensorFlow Serving: Этот фреймворк предназначен для развертывания моделей TensorFlow в промышленной среде. TensorFlow Serving предлагает управление моделями, версионирование и инфраструктуру для эффективного обслуживания моделей в масштабе. Это бесшовный способ интеграции твоих моделей на базе GraphDef в рабочие веб-сервисы или API.
-
Мобильные и встроенные устройства: С помощью таких инструментов, как TensorFlow Lite, ты можешь конвертировать модели TF GraphDef в форматы, оптимизированные для смартфонов, планшетов и различных встроенных устройств. Затем твои модели можно использовать для вывода на устройстве, где выполнение происходит локально, что зачастую обеспечивает прирост производительности и возможности автономной работы.
-
Веб-браузеры: TensorFlow.js позволяет развертывать модели TF GraphDef непосредственно в веб-браузерах. Это прокладывает путь для приложений объектного обнаружения в реальном времени, работающих на стороне клиента с использованием возможностей YOLO26 через JavaScript.
-
Специализированное оборудование: Платформонезависимая природа TF GraphDef позволяет нацеливаться на нестандартное оборудование, такое как ускорители и TPU (тензорные процессоры). Эти устройства могут обеспечить преимущества в производительности для вычислительно интенсивных моделей.
Link to this sectionЭкспорт моделей YOLO26 в TF GraphDef#
Ты можешь конвертировать свою модель объектного обнаружения YOLO26 в формат TF GraphDef, который совместим с различными системами, чтобы улучшить ее производительность на разных платформах.
Link to this sectionУстановка#
Чтобы установить необходимый пакет, выполни:
# Install the required package for YOLO26
pip install ultralyticsПодробные инструкции и лучшие практики по процессу установки ищи в нашем руководстве по установке Ultralytics. Если при установке необходимых пакетов для YOLO26 у тебя возникнут трудности, обратись к нашему руководству по распространенным проблемам за решениями и советами.
Link to this sectionИспользование#
Все модели Ultralytics YOLO26 разработаны с поддержкой экспорта «из коробки», что упрощает их интеграцию в твой рабочий процесс развертывания. Ты можешь просмотреть полный список поддерживаемых форматов экспорта и параметров конфигурации, чтобы выбрать лучшую настройку для своего приложения.
Формат TF GraphDef поддерживает режимы Export, Predict и Validate. Экспортируй свою модель, а затем загрузи ее для запуска вывода или проверки точности.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Link to this sectionАргументы экспорта#
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
format | str | 'pb' | Целевой формат для экспортированной модели, определяющий совместимость с различными средами развертывания. |
imgsz | int или tuple | 640 | Желаемый размер изображения для входных данных модели. Может быть целым числом для квадратных изображений или кортежем (height, width) для конкретных размеров. |
quantize | int или str | None | Исправлен экспорт в FP32. GraphDef не поддерживает преобразование точности в FP16, INT8 или W8A16 во время экспорта. |
batch | int | 1 | Задает размер пакета (batch) для вывода экспортированной модели или максимальное количество изображений, которые модель будет обрабатывать одновременно в режиме predict. |
device | str | None | Указывает устройство для экспорта: CPU (device=cpu), MPS для Apple silicon (device=mps). |
Для получения дополнительной информации о процессе экспорта посети страницу документации Ultralytics по экспорту.
Link to this sectionРазвертывание экспортированных моделей YOLO26 TF GraphDef#
Как только ты экспортировал свою модель YOLO26 в формат TF GraphDef, следующим шагом будет развертывание. Основной и рекомендуемый первый шаг для запуска модели TF GraphDef — это использование метода YOLO("model.pb"), как показано ранее в фрагменте кода.
Однако для получения дополнительной информации о развертывании моделей TF GraphDef обрати внимание на следующие ресурсы:
-
TensorFlow Serving: Руководство по TensorFlow Serving, которое учит, как эффективно развертывать и обслуживать модели машинного обучения в промышленной среде.
-
TensorFlow Lite: На этой странице описывается, как конвертировать модели машинного обучения в формат, оптимизированный для вывода на устройстве с помощью TensorFlow Lite.
-
TensorFlow.js: Руководство по конвертации моделей, которое обучает преобразованию моделей TensorFlow или Keras в формат TensorFlow.js для использования в веб-приложениях.
Link to this sectionРезюме#
В этом руководстве мы изучили, как экспортировать модели Ultralytics YOLO26 в формат TF GraphDef. Благодаря этому ты можешь гибко развертывать свои оптимизированные модели YOLO26 в различных средах.
Для получения дополнительных сведений об использовании посети официальную документацию TF GraphDef.
Для получения дополнительной информации об интеграции Ultralytics YOLO26 с другими платформами и фреймворками см. нашу страницу руководства по интеграции.
Link to this sectionFAQ#
Link to this sectionКак мне экспортировать модель YOLO26 в формат TF GraphDef?#
Модели Ultralytics YOLO26 можно легко экспортировать в формат TensorFlow GraphDef (TF GraphDef). Этот формат обеспечивает сериализованное, независимое от платформы представление модели, идеально подходящее для развертывания в различных средах, таких как мобильные устройства и веб. Чтобы экспортировать модель YOLO26 в TF GraphDef, выполни следующие действия:
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'
# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo26n.pb")
# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")Для получения дополнительной информации о различных вариантах экспорта посети документацию Ultralytics по экспорту моделей.
Link to this sectionКаковы преимущества использования TF GraphDef для развертывания модели YOLO26?#
Экспорт моделей YOLO26 в формат TF GraphDef предлагает множество преимуществ, включая:
- Независимость от платформы: TF GraphDef предоставляет независимый от платформы формат, позволяющий развертывать модели в различных средах, включая мобильные устройства и веб-браузеры.
- Оптимизации: Формат позволяет выполнять ряд оптимизаций, таких как свертка констант, квантование и преобразования графа, которые повышают эффективность выполнения и снижают использование памяти.
- Аппаратное ускорение: Модели в формате TF GraphDef могут использовать аппаратные ускорители, такие как GPU, TPU и AI-чипы, для повышения производительности.
Подробнее о преимуществах читай в разделе TF GraphDef нашей документации.
Link to this sectionПочему мне стоит использовать Ultralytics YOLO26 вместо других моделей объектного обнаружения?#
Ultralytics YOLO26 предлагает многочисленные преимущества по сравнению с другими моделями, такими как YOLOv5 и YOLOv7. Вот некоторые ключевые преимущества:
- Передовая производительность: YOLO26 обеспечивает исключительную скорость и точность для объектного обнаружения, инстанс-сегментации, семантической сегментации и классификации в реальном времени.
- Простота использования: Обладает удобным API для обучения, валидации, предсказания и экспорта моделей, что делает его доступным как для новичков, так и для экспертов.
- Широкая совместимость: Поддерживает множество форматов экспорта, включая ONNX, TensorRT, CoreML и TensorFlow, что обеспечивает универсальные варианты развертывания.
Изучи дополнительные детали в нашем введении в YOLO26.
Link to this sectionКак я могу развернуть модель YOLO26 на специализированном оборудовании с помощью TF GraphDef?#
После того как модель YOLO26 экспортирована в формат TF GraphDef, ты можешь развернуть ее на различных платформах со специализированным оборудованием. Типичные сценарии развертывания включают:
- TensorFlow Serving: Используй TensorFlow Serving для масштабируемого развертывания моделей в промышленной среде. Он поддерживает управление моделями и эффективное обслуживание.
- Мобильные устройства: Конвертируй модели TF GraphDef в TensorFlow Lite, оптимизированные для мобильных и встроенных устройств, что позволяет выполнять вывод на самом устройстве.
- Веб-браузеры: Развертывай модели с помощью TensorFlow.js для вывода на стороне клиента в веб-приложениях.
- AI-ускорители: Используй TPU и кастомные AI-чипы для ускоренного вывода.
Ознакомься с разделом вариантов развертывания для получения подробной информации.
Link to this sectionГде я могу найти решения для общих проблем при экспорте моделей YOLO26?#
Для устранения распространенных проблем при экспорте моделей YOLO26 Ultralytics предоставляет исчерпывающие руководства и ресурсы. Если ты столкнулся с проблемами во время установки или экспорта модели, обратись к:
- Руководству по общим проблемам: Предлагает решения часто возникающих проблем.
- Руководству по установке: Пошаговые инструкции по настройке необходимых пакетов.
Эти ресурсы должны помочь тебе решить большинство проблем, связанных с экспортом и развертыванием моделей YOLO26.