Ultralytics YOLO27:

Cómo exportar modelos YOLO26 al formato PaddlePaddle#

Cerrar la brecha entre desarrollar y desplegar modelos de visión por ordenador en situaciones reales con condiciones variables puede resultar difícil. PaddlePaddle facilita este proceso gracias a su enfoque en la flexibilidad, el rendimiento y su capacidad de procesamiento paralelo en entornos distribuidos. Esto significa que puedes utilizar tus modelos de visión por ordenador YOLO26 en una amplia variedad de dispositivos y plataformas, desde smartphones hasta servidores basados en la nube.



Watch: How to Export Ultralytics YOLO26 Models to PaddlePaddle Format | Key Features of PaddlePaddle Format

La posibilidad de exportar al formato de modelo PaddlePaddle te permite optimizar tus modelos Ultralytics YOLO26 para utilizarlos en el entorno de PaddlePaddle. PaddlePaddle es conocido por facilitar los despliegues industriales y es una buena opción para desplegar aplicaciones de visión por ordenador en situaciones reales y en diversos ámbitos.

¿Por qué deberías exportar a PaddlePaddle?#

PaddlePaddle deep learning framework logo

Desarrollado por Baidu, PaddlePaddle (PAralelo Distribuido De LEarning) es la primera plataforma de aprendizaje profundo de código abierto de China. A diferencia de algunos entornos creados principalmente para la investigación, PaddlePaddle da prioridad a la facilidad de uso y a una integración fluida en distintos sectores.

Ofrece herramientas y recursos similares a los de entornos populares como TensorFlow y PyTorch, por lo que resulta accesible para desarrolladores de todos los niveles de experiencia. Desde la agricultura y las fábricas hasta las empresas de servicios, su amplia comunidad de desarrolladores, formada por más de 4,77 millones de personas, está ayudando a crear y desplegar aplicaciones de IA.

Al exportar tus modelos Ultralytics YOLO26 al formato PaddlePaddle, puedes aprovechar las ventajas de PaddlePaddle en la optimización del rendimiento. PaddlePaddle prioriza la ejecución eficiente de modelos y un menor uso de memoria. Como resultado, tus modelos YOLO26 pueden alcanzar un rendimiento aún mejor y ofrecer resultados excelentes en situaciones prácticas.

Características principales de los modelos PaddlePaddle#

Los modelos PaddlePaddle ofrecen una serie de características clave que contribuyen a su flexibilidad, rendimiento y escalabilidad en diversos escenarios de despliegue:

  • Grafo dinámico a estático: PaddlePaddle admite la compilación de dinámico a estático, mediante la cual los modelos se pueden convertir en un grafo computacional estático. Esto permite aplicar optimizaciones que reducen la sobrecarga en tiempo de ejecución y mejoran el rendimiento de la inferencia.

  • Fusión de operadores: PaddlePaddle, al igual que TensorRT, utiliza la fusión de operadores para agilizar los cálculos y reducir la sobrecarga. El entorno minimiza las transferencias de memoria y los pasos computacionales al combinar operaciones compatibles, lo que da lugar a una inferencia más rápida.

  • Cuantización: PaddlePaddle admite técnicas de cuantización, incluida la cuantización posterior al entrenamiento y el entrenamiento consciente de la cuantización. Estas técnicas permiten utilizar representaciones de datos de menor precisión, lo que mejora el rendimiento y reduce el tamaño del modelo.

Opciones de despliegue en PaddlePaddle#

Antes de entrar en el código para exportar modelos YOLO26 a PaddlePaddle, echemos un vistazo a los distintos escenarios de despliegue en los que destacan los modelos PaddlePaddle.

PaddlePaddle ofrece varias opciones, cada una con un equilibrio distinto entre facilidad de uso, flexibilidad y rendimiento:

  • Paddle Serving: Este entorno simplifica el despliegue de modelos PaddlePaddle como API RESTful de alto rendimiento. Paddle Serving es ideal para entornos de producción, ya que ofrece funciones como el control de versiones de modelos, las pruebas A/B en línea y la escalabilidad para gestionar grandes volúmenes de solicitudes.

  • Paddle Inference API: La API Paddle Inference te proporciona un control de bajo nivel sobre la ejecución del modelo. Esta opción es adecuada para situaciones en las que necesitas integrar estrechamente el modelo en una aplicación personalizada u optimizar el rendimiento para un hardware específico.

  • Paddle Lite: Paddle Lite está diseñado para el despliegue en dispositivos móviles e integrados con recursos limitados. Optimiza los modelos para obtener tamaños más pequeños y una inferencia más rápida en CPU ARM, GPU y otro hardware especializado.

  • Paddle.js: Paddle.js te permite desplegar modelos PaddlePaddle directamente en navegadores web. Paddle.js puede cargar un modelo preentrenado o transformar un modelo de paddle-hub con las herramientas de transformación de modelos proporcionadas por Paddle.js. Puede ejecutarse en navegadores compatibles con WebGL/WebGPU/WebAssembly.

Tareas compatibles#

La exportación a PaddlePaddle admite las siete tareas de Ultralytics. La segmentación semántica y la estimación de profundidad solo están disponibles con YOLO26, la única familia que incluye esas cabezas.

TareaYOLOv8YOLO11YOLO26
Detección
Segmentación
Semántica
Profundidad
Clasificación
Pose
OBB

Exportación a PaddlePaddle: conversión de tu modelo YOLO26#

Convertir modelos YOLO26 al formato PaddlePaddle puede mejorar la flexibilidad de ejecución y optimizar el rendimiento para diversos escenarios de despliegue.

Instalación#

Para instalar el paquete necesario, ejecuta:

Instalación
# Install the required package for YOLO26
pip install ultralytics

Para consultar instrucciones detalladas y buenas prácticas relacionadas con el proceso de instalación, revisa nuestra guía de instalación de Ultralytics. Si encuentras dificultades al instalar los paquetes necesarios para YOLO26, consulta nuestra guía de problemas comunes para obtener soluciones y consejos.

Uso#

Todos los modelos Ultralytics YOLO26 admiten la exportación, y puedes consultar la lista completa de formatos y opciones de exportación para encontrar la opción que mejor se adapte a tus necesidades de despliegue.

El formato PaddlePaddle admite los modos Exportar, Predecir y Validar. Exporta tu modelo y, después, carga el modelo exportado para ejecutar la inferencia o validar su precisión.

Exportar
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to PaddlePaddle format
model.export(format="paddle")  # creates 'yolo26n_paddle_model'
Predecir
from ultralytics import YOLO

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

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Validar
from ultralytics import YOLO

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

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Argumentos de exportación#

ArgumentoTipoPredeterminadoDescripción
formatstr'paddle'Formato de destino del modelo exportado, que define la compatibilidad con diversos entornos de despliegue.
imgszint o tuple640Tamañ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.
quantizeint o strNoneExportación fija en FP32. La exportación a PaddlePaddle no admite la conversión de precisión FP16, INT8 ni W8A16 durante la exportación.
batchint1Especifica 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 el modo predict.
devicestrNoneEspecifica el dispositivo para la exportación: CPU (device=cpu), MPS para Apple silicon (device=mps).

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

Despliegue de modelos YOLO26 de PaddlePaddle exportados#

Después de exportar correctamente tus modelos Ultralytics YOLO26 al formato PaddlePaddle, ya puedes desplegarlos. El primer paso principal y recomendado para ejecutar un modelo PaddlePaddle es utilizar el método YOLO("yolo26n_paddle_model/") como se indica en el fragmento de código de uso anterior.

Sin embargo, si necesitas instrucciones detalladas para desplegar tus modelos PaddlePaddle en otros entornos, consulta los siguientes recursos:

  • Paddle Serving: Aprende a desplegar tus modelos PaddlePaddle como servicios de alto rendimiento mediante Paddle Serving.

  • Paddle Lite: Descubre cómo optimizar y desplegar modelos en dispositivos móviles e integrados mediante Paddle Lite.

  • Paddle.js: Descubre cómo ejecutar modelos PaddlePaddle en navegadores web para ofrecer IA en el lado del cliente mediante Paddle.js.

Resumen#

En esta guía, hemos explorado el proceso de exportación de modelos Ultralytics YOLO26 al formato PaddlePaddle. Si sigues estos pasos, podrás aprovechar las ventajas de PaddlePaddle en diversos escenarios de despliegue y optimizar tus modelos para distintos entornos de hardware y software.

Para obtener más información sobre el uso, visita la documentación oficial de PaddlePaddle.

¿Quieres explorar más formas de integrar tus modelos Ultralytics YOLO26? Nuestra página de la guía de integraciones presenta diversas opciones y te proporciona recursos e información útiles.

Preguntas frecuentes#

  • Exportar modelos Ultralytics YOLO26 al formato PaddlePaddle es sencillo. Puedes utilizar el método export de la clase YOLO para realizar la conversión. Este es un ejemplo con Python:

    Uso
    from ultralytics import YOLO
    
    # Load a YOLO26 model
    model = YOLO("yolo26n.pt")
    
    # Export the model to PaddlePaddle format
    model.export(format="paddle")  # creates 'yolo26n_paddle_model'
    
    # Load the exported PaddlePaddle model
    paddle_model = YOLO("./yolo26n_paddle_model")
    
    # Run inference
    results = paddle_model("https://ultralytics.com/images/bus.jpg")

    Para obtener información más detallada sobre la configuración y la resolución de problemas, consulta la Guía de instalación de Ultralytics y la Guía de problemas habituales.

  • PaddlePaddle ofrece varias ventajas clave para el despliegue de modelos:

    • Optimización del rendimiento: PaddlePaddle destaca por la ejecución eficiente de modelos y el menor uso de memoria.
    • Compilación de grafos dinámicos a estáticos: Admite la compilación de dinámico a estático, lo que permite aplicar optimizaciones en tiempo de ejecución.
    • Fusión de operadores: Al combinar operaciones compatibles, reduce la sobrecarga computacional.
    • Técnicas de cuantización: Admite tanto la cuantización posterior al entrenamiento como el entrenamiento consciente de la cuantización, lo que permite utilizar representaciones de datos de menor precisión para mejorar el rendimiento.

    Puedes obtener mejores resultados exportando tus modelos Ultralytics YOLO26 a PaddlePaddle, lo que garantiza flexibilidad y un alto rendimiento en diversas aplicaciones y plataformas de hardware. Explora las principales características y capacidades de PaddlePaddle en la documentación oficial de PaddlePaddle.

  • PaddlePaddle, desarrollado por Baidu, está optimizado para despliegues de IA industriales y comerciales. Su amplia comunidad de desarrolladores y su sólido entorno proporcionan numerosas herramientas similares a las de TensorFlow y PyTorch. Al exportar tus modelos YOLO26 a PaddlePaddle, aprovechas:

    • Mayor rendimiento: Velocidad de ejecución óptima y menor huella de memoria.
    • Flexibilidad: Amplia compatibilidad con diversos dispositivos, desde smartphones hasta servidores en la nube.
    • Escalabilidad: Funciones eficientes de procesamiento paralelo para entornos distribuidos.

    Estas características convierten a PaddlePaddle en una opción atractiva para desplegar modelos YOLO26 en entornos de producción.

  • PaddlePaddle emplea varias técnicas avanzadas para optimizar el rendimiento de los modelos:

    • Grafo dinámico a estático: Convierte los modelos en un grafo computacional estático para aplicar optimizaciones en tiempo de ejecución.
    • Fusión de operadores: Combina operaciones compatibles para minimizar las transferencias de memoria y aumentar la velocidad de inferencia.
    • Cuantización: Reduce el tamaño de los modelos y aumenta la eficiencia mediante datos de menor precisión, manteniendo la precisión.

    Estas técnicas priorizan la ejecución eficiente de los modelos, lo que convierte a PaddlePaddle en una excelente opción para desplegar modelos YOLO26 de alto rendimiento. Para obtener más información sobre la optimización, consulta la documentación oficial de PaddlePaddle.

  • PaddlePaddle ofrece opciones de despliegue flexibles:

    • Paddle Serving: Despliega modelos como API RESTful, ideal para producción con funciones como el control de versiones de modelos y las pruebas A/B en línea.
    • Paddle Inference API: Proporciona un control de bajo nivel sobre la ejecución de modelos para aplicaciones personalizadas.
    • Paddle Lite: Optimiza los modelos para los recursos limitados de dispositivos móviles e integrados.
    • Paddle.js: Permite desplegar modelos directamente en navegadores web.

    Estas opciones cubren un amplio abanico de escenarios de despliegue, desde la inferencia en el dispositivo hasta servicios en la nube escalables. Explora más estrategias de despliegue en la página de opciones de despliegue de modelos de Ultralytics.

Comentarios