Aprende a exportar al formato TFLite Edge TPU desde el modelo YOLO26
Desplegar modelos de visión artificial en dispositivos con potencia computacional limitada, como sistemas móviles o integrados, puede ser complicado. Usar un formato de modelo optimizado para un mayor rendimiento simplifica el proceso. El formato de modelo TensorFlow Lite Edge TPU o TFLite Edge TPU está diseñado para consumir energía mínima a la vez que ofrece un rendimiento rápido para redes neuronales.
La función de exportación al formato TFLite Edge TPU te permite optimizar tus modelos de Ultralytics YOLO26 para una inferencia de alta velocidad y bajo consumo de energía. En esta guía, te explicaremos cómo convertir tus modelos al formato TFLite Edge TPU, facilitando que tus modelos funcionen bien en diversos dispositivos móviles e integrados.
¿Por qué deberías exportar a TFLite Edge TPU?
Exportar modelos a TensorFlow Edge TPU hace que las tareas de machine learning sean rápidas y eficientes. Esta tecnología se adapta a aplicaciones con energía, recursos informáticos y conectividad limitados. El Edge TPU es un acelerador de hardware de Google que acelera los modelos de TensorFlow Lite en dispositivos periféricos. La siguiente imagen muestra un ejemplo del proceso involucrado.
El Edge TPU funciona con modelos cuantizados. La cuantización hace que los modelos sean más pequeños y rápidos sin perder mucha precisión. Es ideal para los recursos limitados de la computación en el borde, permitiendo que las aplicaciones respondan rápidamente al reducir la latencia y permitir el procesamiento rápido de datos localmente, sin dependencia de la nube. El procesamiento local también mantiene los datos del usuario privados y seguros, ya que no se envían a un servidor remoto.
Características clave de TFLite Edge TPU
Estas son las características clave que hacen de TFLite Edge TPU una gran opción de formato de modelo para desarrolladores:
-
Rendimiento optimizado en dispositivos periféricos: TFLite Edge TPU logra un alto rendimiento en redes neuronales mediante cuantización, optimización de modelos, aceleración de hardware y optimización del compilador. Su arquitectura minimalista contribuye a un tamaño menor y una mayor eficiencia de costes.
-
Alto rendimiento computacional: TFLite Edge TPU combina aceleración de hardware especializada y una ejecución eficiente en tiempo de ejecución para lograr un alto rendimiento computacional. Es muy adecuado para desplegar modelos de machine learning con requisitos de rendimiento estrictos en dispositivos periféricos.
-
Cálculos matriciales eficientes: TensorFlow Edge TPU está optimizado para operaciones matriciales, las cuales son cruciales para los cálculos de redes neuronales. Esta eficiencia es clave en los modelos de machine learning, particularmente en aquellos que requieren numerosas y complejas multiplicaciones y transformaciones de matrices.
Opciones de despliegue con TFLite Edge TPU
Antes de entrar en cómo exportar modelos YOLO26 al formato TFLite Edge TPU, entendamos dónde se suelen utilizar los modelos TFLite Edge TPU.
TFLite Edge TPU ofrece varias opciones de despliegue para modelos de machine learning, que incluyen:
-
Despliegue en el dispositivo: Los modelos de TensorFlow Edge TPU pueden desplegarse directamente en dispositivos móviles e integrados. El despliegue en el dispositivo permite que los modelos se ejecuten directamente en el hardware, eliminando la necesidad de conectividad a la nube, ya sea incrustando el modelo en el paquete de la aplicación o descargándolo bajo demanda.
-
Computación en el borde con TensorFlow TPUs en la nube: En escenarios donde los dispositivos periféricos tienen capacidades de procesamiento limitadas, los TensorFlow Edge TPUs pueden descargar tareas de inferencia a servidores en la nube equipados con TPUs.
-
Despliegue híbrido: Un enfoque híbrido combina el despliegue en el dispositivo y en la nube, ofreciendo una solución versátil y escalable para desplegar modelos de machine learning. Las ventajas incluyen el procesamiento en el dispositivo para respuestas rápidas y la computación en la nube para cálculos más complejos.
Exportar modelos YOLO26 a TFLite Edge TPU
Puedes ampliar la compatibilidad del modelo y la flexibilidad de despliegue convirtiendo los modelos YOLO26 a TensorFlow Edge TPU.
Instalación
Para instalar el paquete requerido, ejecuta:
# Install the required package for YOLO26
pip install ultralyticsPara obtener instrucciones detalladas y mejores prácticas relacionadas con el proceso de instalación, consulta nuestra guía de instalación de Ultralytics. Si encuentras alguna dificultad 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 están diseñados para soportar la exportación de forma inmediata, facilitando su integración en tu flujo de trabajo de despliegue preferido. Puedes ver la lista completa de formatos de exportación compatibles y opciones de configuración para elegir la mejor configuración para tu aplicación.
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")Argumentos de exportación
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
format | str | 'edgetpu' | 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 número entero para imágenes cuadradas o una tupla (height, width) para dimensiones específicas. |
int8 | bool | True | Activa la cuantización INT8, comprimiendo aún más el modelo y acelerando la inferencia con una pérdida de precisión mínima, principalmente para dispositivos de borde (edge). |
data | str | 'coco8.yaml' | Ruta al archivo de configuración del dataset (por defecto: coco8.yaml), esencial para la cuantización. |
fraction | float | 1.0 | Especifica la fracción del conjunto de datos a usar para la calibración de cuantización INT8. Permite calibrar sobre un subconjunto del conjunto de datos completo, útil para experimentos o cuando los recursos son limitados. Si no se especifica con INT8 activado, se usará el conjunto de datos completo. |
device | str | None | Especifica el dispositivo para la exportación: CPU (device=cpu). |
Asegúrate de utilizar una máquina Linux x86 al exportar a EdgeTPU.
Para más detalles sobre el proceso de exportación, visita la página de documentación de Ultralytics sobre exportación.
Desplegar modelos YOLO26 TFLite Edge TPU exportados
Después de exportar con éxito tus modelos Ultralytics YOLO26 al formato TFLite Edge TPU, ya puedes desplegarlos. El paso principal y recomendado para ejecutar un modelo TFLite Edge TPU es utilizar el método YOLO("model_edgetpu.tflite"), como se describe en el fragmento de código de uso anterior.
Sin embargo, para obtener instrucciones detalladas sobre el despliegue de tus modelos TFLite Edge TPU, echa un vistazo a los siguientes recursos:
-
Coral Edge TPU en una Raspberry Pi con Ultralytics YOLO26: Descubre cómo integrar Coral Edge TPUs con Raspberry Pi para mejorar las capacidades de machine learning.
-
Ejemplos de código: Accede a ejemplos prácticos de despliegue de TensorFlow Edge TPU para poner en marcha tus proyectos.
-
Ejecutar inferencia en el Edge TPU con Python: Explora cómo utilizar la API de Python de TensorFlow Lite para aplicaciones de Edge TPU, incluyendo pautas de configuración y uso.
Resumen
En esta guía, hemos aprendido cómo exportar modelos de Ultralytics YOLO26 al formato TFLite Edge TPU. Siguiendo los pasos mencionados anteriormente, puedes aumentar la velocidad y la potencia de tus aplicaciones de visión artificial.
Para más detalles sobre el uso, visita el sitio web oficial de Edge TPU.
Además, para obtener más información sobre otras integraciones de Ultralytics YOLO26, visita nuestra página de guías de integración. Allí, descubrirás recursos e ideas valiosas.
Preguntas frecuentes
¿Cómo exporto un modelo YOLO26 al formato TFLite Edge TPU?
Para exportar un modelo YOLO26 al formato TFLite Edge TPU, puedes seguir estos pasos:
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")Para obtener detalles completos sobre la exportación de modelos a otros formatos, consulta nuestra guía de exportación.
¿Cuáles son los beneficios de exportar modelos YOLO26 a TFLite Edge TPU?
Exportar modelos YOLO26 a TFLite Edge TPU ofrece varios beneficios:
- Rendimiento optimizado: Logra un alto rendimiento de red neuronal con un consumo mínimo de energía.
- Latencia reducida: Procesamiento local rápido de datos sin necesidad de depender de la nube.
- Privacidad mejorada: El procesamiento local mantiene los datos del usuario privados y seguros.
Esto lo hace ideal para aplicaciones en computación en el borde, donde los dispositivos tienen energía y recursos computacionales limitados. Aprende más sobre por qué deberías exportar.
¿Puedo desplegar modelos TFLite Edge TPU en dispositivos móviles e integrados?
Sí, los modelos de TensorFlow Lite Edge TPU pueden desplegarse directamente en dispositivos móviles e integrados. Este enfoque de despliegue permite que los modelos se ejecuten directamente en el hardware, ofreciendo una inferencia más rápida y eficiente. Para ver ejemplos de integración, consulta nuestra guía sobre cómo desplegar Coral Edge TPU en Raspberry Pi.
¿Cuáles son algunos casos de uso comunes para los modelos TFLite Edge TPU?
Los casos de uso comunes para los modelos TFLite Edge TPU incluyen:
- Cámaras inteligentes: Mejora el análisis de imágenes y vídeo en tiempo real.
- Dispositivos IoT: Permite la automatización industrial y de hogares inteligentes.
- Atención médica: Acelera el diagnóstico y la obtención de imágenes médicas.
- Venta minorista: Mejora la gestión de inventario y el análisis del comportamiento del cliente.
Estas aplicaciones se benefician del alto rendimiento y bajo consumo energético de los modelos TFLite Edge TPU. Descubre más sobre escenarios de uso.
¿Cómo puedo solucionar problemas al exportar o desplegar modelos TFLite Edge TPU?
Si encuentras problemas al exportar o desplegar modelos TFLite Edge TPU, consulta nuestra guía de problemas comunes para obtener consejos de solución de problemas. Esta guía cubre problemas y soluciones comunes para ayudarte a garantizar un funcionamiento sin problemas. Para obtener asistencia adicional, visita nuestro Centro de ayuda.