Explora TinyML y aprende a implementar Ultralytics en microcontroladores de bajo consumo. Descubre cómo optimizar modelos para el IoT mediante la cuantificación y la Ultralytics .
El aprendizaje automático en dispositivos pequeños, conocido comúnmente como TinyML, constituye un subcampo especializado del aprendizaje automático que se centra en la implementación de modelos en dispositivos de consumo energético ultrabajo y con recursos limitados, como microcontroladores y pequeños dispositivos del IoT. A diferencia de los sistemas tradicionales basados en la nube que dependen de inmensos recursos computacionales, TinyML opera íntegramente en el borde. Al ejecutar algoritmos inteligentes localmente en dispositivos con limitaciones de potencia que a menudo se miden en meros milivatios, este enfoque minimiza la latencia, garantiza la privacidad de los datos y reduce drásticamente el uso del ancho de banda, un paradigma respaldado y promovido por comunidades como la Fundación TinyML.
Para adaptar con éxito arquitecturas complejas de redes neuronales a hardware con grandes limitaciones, como los procesadores ARM Cortex-M, los modelos deben someterse a una rigurosa optimización. Se utilizan técnicas como la cuantificación de modelos—que convierte los pesos de 32 bits en coma flotante a enteros de 8 bits— y la poda de modelos para reducir significativamente el consumo total de memoria. Hoy en día, marcos especializados como TensorFlow for Microcontrollers Google y ExecuTorch PyTorch facilitan estos flujos de trabajo de compresión precisos, aportando inteligencia visual y auditiva avanzada al hardware integrado cotidiano.
Aunque TinyML está estrechamente relacionado con la IA en el borde, la principal diferencia radica en la escala del hardware y el consumo energético. La IA en el borde es un término más amplio que abarca cualquier ejecución local de modelos de IA, a menudo utilizando ordenadores de placa única como una Raspberry Pi o GPU integradas robustas como una NVIDIA . Por el contrario, TinyML se dirige específicamente a sistemas profundamente integrados que funcionan con baterías durante meses o años, como las placas Arduino o los chips de STMicroelectronics. Estos dispositivos suelen tener solo unos pocos cientos de kilobytes de RAM, lo que hace imprescindible una compresión agresiva de los modelos.
La capacidad de implementar la inteligencia directamente en equipos de hardware mínimos ha dado lugar a numerosos casos de uso prácticos en diversos sectores:
La preparación de un modelo para un microcontrolador requiere un formato de exportación estricto. Con Ultralytics , los desarrolladores pueden crear flujos de trabajo robustos de detección de objetos y comprimirlos para dispositivos integrados. Puede gestionar su conjunto de datos y el control de versiones del modelo sin problemas en la Ultralytics antes de exportarlos localmente. La TFLite nativa TFLite permite una conversión sin esfuerzo a los formatos de enteros de 8 bits requeridos para los microcontroladores, complementando otras opciones de implementación de modelos específicas para el hardware , como CoreMLGoogle NVIDIA, Edge TPU y TensorRT.
El siguiente ejemplo muestra cómo exportar un modelo YOLO26 ligero, optimizado específicamente con cuantificación INT8, lo que lo hace adecuado para su implementación en plataformas periféricas compatibles con TinyML:
from ultralytics import YOLO
# Initialize the lightweight YOLO26 Nano model for edge use cases
model = YOLO("yolo26n.pt")
# Export to TFLite format with INT8 quantization and a reduced image size
# This minimizes the memory footprint and accelerates inference on microcontrollers
model.export(format="tflite", int8=True, imgsz=160)
Comience su viaje con el futuro del aprendizaje automático