Ir al contenido

Cómo exportar a TF GraphDef desde YOLO11 para la implementación

Cuando está implementando modelos de visión artificial de vanguardia, como YOLO11, en diferentes entornos, puede encontrarse con problemas de compatibilidad. GraphDef de TensorFlow de Google, o TF GraphDef, ofrece una solución proporcionando una representación serializada e independiente de la plataforma de su modelo. Utilizando el formato de modelo TF GraphDef, puede implementar su modelo YOLO11 en entornos donde el ecosistema completo de TensorFlow puede no estar disponible, como dispositivos móviles o hardware especializado.

En esta guía, le guiaremos paso a paso sobre cómo exportar sus modelos Ultralytics YOLO11 al formato de modelo TF GraphDef. Al convertir su modelo, puede optimizar la implementación y utilizar las capacidades de visión artificial de YOLO11 en una gama más amplia de aplicaciones y plataformas.

TensorFlow GraphDef

¿Por qué debería exportar a TF GraphDef?

TF GraphDef es un componente potente del ecosistema TensorFlow desarrollado por Google. Se puede utilizar para optimizar e implementar modelos como YOLO11. La exportación a TF GraphDef nos permite trasladar los modelos de la investigación a las aplicaciones del mundo real. Permite que los modelos se ejecuten en entornos sin el framework completo de TensorFlow.

El formato GraphDef representa el modelo como un gráfico de cálculo serializado. Esto permite varias técnicas de optimización como el plegado constante, la cuantificación y las transformaciones de gráficos. Estas optimizaciones garantizan una ejecución eficiente, un uso reducido de la memoria y velocidades de inferencia más rápidas.

Los modelos GraphDef pueden utilizar aceleradores de hardware como GPUs, TPUs y chips de IA, desbloqueando importantes ganancias de rendimiento para el pipeline de inferencia de YOLO11. El formato TF GraphDef crea un paquete autocontenido con el modelo y sus dependencias, simplificando la implementación y la integración en diversos sistemas.

Características principales de los modelos TF GraphDef

TF GraphDef ofrece características distintivas para optimizar la implementación de modelos y la optimización.

Aquí tiene un vistazo a sus características clave:

  • Serialización de Modelos: TF GraphDef proporciona una forma de serializar y almacenar modelos de TensorFlow en un formato independiente de la plataforma. Esta representación serializada le permite cargar y ejecutar sus modelos sin el código base original de python, lo que facilita la implementación.

  • Optimización de grafos: TF GraphDef permite la optimización de grafos computacionales. Estas optimizaciones pueden mejorar el rendimiento agilizando el flujo de ejecución, reduciendo las redundancias y adaptando las operaciones para que se ajusten a hardware específico.

  • Flexibilidad de implementación: Los modelos exportados al formato GraphDef se pueden utilizar en diversos entornos, incluidos dispositivos con recursos limitados, navegadores web y sistemas con hardware especializado. Esto abre posibilidades para una implementación más amplia de sus modelos de TensorFlow.

  • Enfoque en la Producción: GraphDef está diseñado para la implementación en producción. Admite la ejecución eficiente, las funciones de serialización y las optimizaciones que se alinean con los casos de uso del mundo real.

Opciones de implementación con TF GraphDef

Antes de profundizar en el proceso de exportación de modelos YOLO11 a TF GraphDef, echemos un vistazo a algunas situaciones de implementación típicas donde se utiliza este formato.

Aquí se explica cómo puede implementar con TF GraphDef de manera eficiente en varias plataformas.

  • TensorFlow Serving: Este framework está diseñado para implementar modelos de TensorFlow en entornos de producción. TensorFlow Serving ofrece gestión de modelos, control de versiones y la infraestructura para un servicio de modelos eficiente a escala. Es una forma perfecta de integrar sus modelos basados en GraphDef en servicios web o API de producción.

  • Dispositivos móviles e integrados: Con herramientas como TensorFlow Lite, puede convertir modelos TF GraphDef en formatos optimizados para teléfonos inteligentes, tabletas y diversos dispositivos integrados. Sus modelos se pueden utilizar para la inferencia en el dispositivo, donde la ejecución se realiza localmente, lo que a menudo proporciona mejoras en el rendimiento y capacidades sin conexión.

  • Navegadores web: TensorFlow.js permite la implementación de modelos TF GraphDef directamente dentro de los navegadores web. Esto allana el camino para aplicaciones de detección de objetos en tiempo real que se ejecutan en el lado del cliente, utilizando las capacidades de YOLO11 a través de JavaScript.

  • Hardware especializado: La naturaleza independiente de la plataforma de TF GraphDef le permite dirigirse a hardware personalizado, como aceleradores y TPUs (unidades de procesamiento de tensores). Estos dispositivos pueden proporcionar ventajas de rendimiento para modelos computacionalmente intensivos.

Exportación de modelos YOLO11 a TF GraphDef

Puede convertir su modelo de detección de objetos YOLO11 al formato TF GraphDef, que es compatible con varios sistemas, para mejorar su rendimiento en todas las plataformas.

Instalación

Para instalar el paquete requerido, ejecute:

Instalación

# Install the required package for YOLO11
pip install ultralytics

Para obtener instrucciones detalladas y las mejores prácticas relacionadas con el proceso de instalación, consulte nuestra Guía de instalación de Ultralytics. Mientras instala los paquetes necesarios para YOLO11, si encuentra alguna dificultad, consulte nuestra Guía de problemas comunes para obtener soluciones y consejos.

Uso

Todos los modelos Ultralytics YOLO11 están diseñados para admitir la exportación de fábrica, lo que facilita su integración en tu flujo de trabajo de implementación preferido. Puedes ver la lista completa de formatos de exportación y opciones de configuración compatibles para elegir la mejor configuración para tu aplicación.

Uso

from ultralytics import YOLO

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

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo11n.pb'

# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")

# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF GraphDef format
yolo export model=yolo11n.pt format=pb # creates 'yolo11n.pb'

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

Argumentos de exportación

Argumento Tipo Predeterminado Descripción
format str 'pb' Formato de destino para el modelo exportado, que define la compatibilidad con varios entornos de implementación.
imgsz int o tuple 640 Tamaño de imagen deseado para la entrada del modelo. Puede ser un entero para imágenes cuadradas o una tupla (height, width) para dimensiones específicas.
batch int 1 Especifica el tamaño del lote de inferencia del modelo exportado o el número máximo de imágenes que el modelo exportado procesará simultáneamente en predict modo.
device str None Especifica el dispositivo para la exportación: CPU (device=cpu), MPS para Apple silicon (device=mps).

Para obtener más detalles sobre el proceso de exportación, visita la página de documentación de Ultralytics sobre la exportación.

Implementación de modelos TF GraphDef YOLO11 exportados

Una vez que haya exportado su modelo YOLO11 al formato TF GraphDef, el siguiente paso es la implementación. El primer paso principal y recomendado para ejecutar un modelo TF GraphDef es usar el método YOLO("model.pb"), como se mostró anteriormente en el fragmento de código de uso.

Sin embargo, para obtener más información sobre cómo implementar sus modelos TF GraphDef, consulte los siguientes recursos:

  • TensorFlow Serving: Una guía sobre TensorFlow Serving que enseña cómo implementar y servir modelos de aprendizaje automático de manera eficiente en entornos de producción.

  • TensorFlow Lite: Esta página describe cómo convertir modelos de aprendizaje automático en un formato optimizado para la inferencia en el dispositivo con TensorFlow Lite.

  • TensorFlow.js: Una guía sobre la conversión de modelos que enseña cómo convertir modelos de TensorFlow o Keras al formato TensorFlow.js para su uso en aplicaciones web.

Resumen

En esta guía, exploramos cómo exportar modelos Ultralytics YOLO11 al formato TF GraphDef. Al hacer esto, puede implementar de manera flexible sus modelos YOLO11 optimizados en diferentes entornos.

Para obtener más detalles sobre su uso, visite la documentación oficial de TF GraphDef.

Para obtener más información sobre la integración de Ultralytics YOLO11 con otras plataformas y frameworks, no olvides consultar nuestra página de la guía de integración. Tiene excelentes recursos e información para ayudarte a aprovechar al máximo YOLO11 en tus proyectos.

Preguntas frecuentes

¿Cómo exporto un modelo YOLO11 al formato TF GraphDef?

Los modelos Ultralytics YOLO11 se pueden exportar al formato TensorFlow GraphDef (TF GraphDef) sin problemas. Este formato proporciona una representación serializada e independiente de la plataforma del modelo, ideal para su implementación en diversos entornos como móviles y web. Para exportar un modelo YOLO11 a TF GraphDef, sigue estos pasos:

Uso

from ultralytics import YOLO

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

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo11n.pb'

# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")

# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF GraphDef format
yolo export model="yolo11n.pt" format="pb" # creates 'yolo11n.pb'

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

Para obtener más información sobre las diferentes opciones de exportación, visita la documentación de Ultralytics sobre la exportación de modelos.

¿Cuáles son los beneficios de usar TF GraphDef para la implementación de modelos YOLO11?

La exportación de modelos YOLO11 al formato TF GraphDef ofrece múltiples ventajas, incluyendo:

  1. Independencia de la plataforma: TF GraphDef proporciona un formato independiente de la plataforma, lo que permite implementar modelos en diversos entornos, incluidos navegadores móviles y web.
  2. Optimizaciones: El formato permite varias optimizaciones, como el plegado constante, la cuantización y las transformaciones de grafos, que mejoran la eficiencia de la ejecución y reducen el uso de memoria.
  3. Aceleración de hardware: Los modelos en formato TF GraphDef pueden aprovechar aceleradores de hardware como GPU, TPU y chips de IA para obtener mejoras de rendimiento.

Más información sobre las ventajas en la sección TF GraphDef de nuestra documentación.

¿Por qué debería usar Ultralytics YOLO11 en lugar de otros modelos de detección de objetos?

Ultralytics YOLO11 ofrece numerosas ventajas en comparación con otros modelos como YOLOv5 y YOLOv7. Algunos de los beneficios clave incluyen:

  1. Rendimiento de última generación: YOLO11 proporciona una velocidad y precisión excepcionales para la detección de objetos, la segmentación y la clasificación en tiempo real.
  2. Facilidad de uso: Cuenta con una API intuitiva para el entrenamiento, la validación, la predicción y la exportación de modelos, haciéndolo accesible tanto para principiantes como para expertos.
  3. Amplia Compatibilidad: Admite múltiples formatos de exportación, incluidos ONNX, TensorRT, CoreML y TensorFlow, para opciones de implementación versátiles.

Explore más detalles en nuestra introducción a YOLO11.

¿Cómo puedo implementar un modelo YOLO11 en hardware especializado usando TF GraphDef?

Una vez que un modelo YOLO11 se exporta al formato TF GraphDef, puede implementarlo en varias plataformas de hardware especializadas. Los escenarios de implementación típicos incluyen:

  • TensorFlow Serving: Utilice TensorFlow Serving para la implementación escalable de modelos en entornos de producción. Es compatible con la gestión de modelos y el servicio eficiente.
  • Dispositivos Móviles: Convierta modelos TF GraphDef a TensorFlow Lite, optimizados para dispositivos móviles e integrados, lo que permite la inferencia en el dispositivo.
  • Navegadores web: Implemente modelos utilizando TensorFlow.js para la inferencia del lado del cliente en aplicaciones web.
  • Aceleradores de IA: Aproveche las TPUs y los chips de IA personalizados para una inferencia acelerada.

Consulte la sección de opciones de implementación para obtener información detallada.

¿Dónde puedo encontrar soluciones para problemas comunes al exportar modelos YOLO11?

Para solucionar problemas comunes con la exportación de modelos YOLO11, Ultralytics proporciona guías y recursos integrales. Si encuentra problemas durante la instalación o la exportación del modelo, consulte:

Estos recursos deberían ayudarle a resolver la mayoría de los problemas relacionados con la exportación e implementación de modelos YOLO11.



📅 Creado hace 1 año ✏️ Actualizado hace 4 meses

Comentarios