Link to this sectionКак экспортировать YOLO26 в TF GraphDef для развертывания#
Когда ты развертываешь передовые модели computer vision, такие как YOLO26, в различных средах, ты можешь столкнуться с проблемами совместимости. TensorFlow GraphDef от Google, или 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 предлагает уникальные функции для оптимизации и упрощения model deployment.
Вот обзор его ключевых характеристик:
-
Сериализация модели: 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 (Tensor Processing Units). Эти устройства могут обеспечить преимущества в производительности для вычислительно сложных моделей.
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 | Desired image size for the model input. Can be an integer for square images or a tuple (height, width) for specific dimensions. |
batch | int | 1 | Указывает размер пакета вывода для экспортируемой модели или максимальное количество изображений, которое модель будет обрабатывать одновременно в режиме 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, которое учит, как эффективно развертывать и обслуживать модели machine learning в производственных средах.
-
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 вместо других моделей object detection?#
Ultralytics YOLO26 предлагает множество преимуществ по сравнению с другими моделями, такими как YOLOv5 и YOLOv7. Некоторые ключевые преимущества включают:
- Передовая производительность: YOLO26 обеспечивает исключительную скорость и accuracy для object detection, instance segmentation, semantic segmentation и classification в реальном времени.
- Простота использования: Обладает удобным 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.