TinyML abre nuevas vías de aprendizaje para IoT

heavy automation robot arm machine in smart factory
Sheila Zabeu -

marzo 15, 2023

Uno es bueno, dos es mejor y tres es aún mejor”. Esta máxima puede aplicarse al mundo de la tecnología cuando pensamos en Internet de las Cosas (IoT), Machine Learning (ML) y TinyML. El primer concepto, que se refiere a elementos físicos conectados en red para recoger e intercambiar datos, ya es conocido por los profesionales del área y ahora se hace más común entre los profanos. El segundo concepto, Machine Learning, está ganando la boca de la gente con el gran revuelo en torno a ChatGPT, capaz de reproducir el lenguaje humano para responder a preguntas genéricas. El tercero es una combinación de los dos primeros.

Hablamos de un campo que ofrece una forma, a través de algoritmos de Machine Learning, de transformar grandes volúmenes de datos generados por IoT en insights. Esta inteligencia puede ayudar a fundamentar la toma de decisiones y elevar las iniciativas de automatización a nuevas cotas en diversos sectores.

Cómo consigue la integración entre ambas tecnologías generar tantos beneficios? Por un lado, los datos generados por IoT a partir de diversas fuentes pueden utilizarse para entrenar algoritmos de Machine Learning. Por otro lado, los algoritmos de Machine Learning pueden mejorar la capacidad de los dispositivos IoT para procesar y analizar mejor los datos en tiempo real en los bordes de las redes, reduciendo la latencia.

En la práctica, podemos pensar, por ejemplo, que los sensores de los equipos industriales, tras ser entrenados por algoritmos de Machine Learning, serán capaces en el futuro de analizar los datos de temperatura en tiempo real y avisar de la necesidad de realizar reparaciones preventivas incluso en diferentes épocas del año o si se desplazan.

Pero, ¿qué hay del tercer concepto mencionado al principio del texto, el TinyML? Esta tecnología ha tratado de llevar la potencia del Machine Learning a dispositivos extremadamente pequeños, con una capacidad de procesamiento, memoria y recursos energéticos muy limitados.

Los algoritmos TinyML se desarrollan específicamente para estos dispositivos compactos, habituales en el Internet de las Cosas, de forma muy optimizada para poder realizar tareas complejas como el reconocimiento de imágenes y audio.

El potencial de la diminuta tecnología TinyML se refleja en enormes cifras. Se espera que la cantidad de instalaciones de TinyML aumente de casi 2.000 millones en 2022 a más de 11.000 millones en 2027, según un estudio de ABI Research. “Un tema común del mercado TinyML es la idea de llevar el ML a todas partes. Hay muchos casos de uso posibles. Piense en cualquier tipo de datos sensoriales y probablemente habrá un modelo ML para aplicar a esa información. Los sensores de sonido y de condiciones ambientales siguen siendo los más destacados y deberían impulsar el enorme crecimiento de las instalaciones de dispositivos TinyML”, predice Lian Jye Su, analista principal de investigación de ABI Research.

Así pues, la integración de TinyML en IoT consiste en aunar tres tecnologías prometedoras: la propia Internet de las Cosas, las capacidades de aprendizaje automático y la miniaturización de los dispositivos, preservando la capacidad de realizar tareas complejas con un consumo mínimo de energía. Para ello se requieren conocimientos especializados en optimización de hardware y software, ciencia de datos e Inteligencia Artificial.

Y si tres tecnologías integradas ya es genial, ¿qué tal añadir 5G, Edge Computing y sensores cada vez más sofisticados? Una transferencia de datos más rápida con 5G, una latencia menor con recursos de Edge Computing más avanzados y sensores más sofisticados para captar datos cada vez más variados y precisos generarán transformaciones hasta ahora inimaginables.

Aprendiendo a aprender

Entrenar un modelo de aprendizaje automático en dispositivos diminutos, como los sensores IoT, permite utilizar más datos para hacer mejores predicciones. Sin embargo, el proceso de entrenamiento requiere mucha memoria, de la que no se suele disponer.

Para resolver este impasse, investigadores del MIT y del MIT-IBM Watson AI Lab han desarrollado una nueva técnica de entrenamiento que requiere menos de un cuarto de megabyte de memoria. Otras soluciones utilizan hasta 500 megabytes, lo que supera con creces la capacidad de la mayoría de los dispositivos IoT. El nuevo enfoque puede aplicarse en cuestión de minutos y, además, preserva la privacidad al mantener los datos en el propio dispositivo e incluso puede mejorar la precisión de los resultados. Por si fuera poco, permite personalizar el modelo en función de las demandas del usuario

“Nuestra solución permite a los dispositivos IoT no solo realizar inferencias, sino también actualizar continuamente los modelos de IA en función de los nuevos datos recopilados, allanando el camino para el aprendizaje durante toda la vida útil de los dispositivos. La baja utilización de recursos hace que el aprendizaje profundo sea más accesible y pueda tener un alcance más amplio, especialmente para dispositivos de borde de baja potencia”, afirma Song Han, miembro del MIT-IBM Watson AI Lab y autor principal del artículo que describe la innovación.

Los investigadores emplearon dos soluciones algorítmicas para que el proceso de entrenamiento fuera más eficiente y utilizara menos memoria. La primera, conocida como actualización dispersa, usa un algoritmo que identifica los pesos más importantes que deben actualizarse en cada ronda de entrenamiento.

La segunda solución implica un entrenamiento cuantizado y la simplificación de los pesos, que suelen utilizar 32 bits. Un algoritmo redondea los pesos para que solamente tengan ocho bits, lo que reduce la cantidad de memoria necesaria para el entrenamiento y la inferencia. A continuación, se aplica una técnica denominada “quantization-aware scaling” (QAS) para evitar cualquier pérdida de precisión que pudiera derivarse del entrenamiento cuantizado.

Además, los investigadores han desarrollado un motor de entrenamiento que puede ejecutar estos algoritmos en un simple microcontrolador sin sistema operativo.

El nuevo marco se utilizó para entrenar un modelo de visión por ordenador destinado a detectar personas en imágenes. Tras solamente 10 minutos de entrenamiento, la solución aprendió a realizar la tarea con éxito. El método fue capaz de entrenar un modelo 20 veces más rápido que otros enfoques, según los investigadores, que quieren aplicarlo a modelos lingüísticos y a distintos tipos de datos, además de intentar disminuir el tamaño de modelos más grandes sin sacrificar la precisión.

El proyecto está financiado por la National Science Foundation, MIT-IBM Watson AI Lab, MIT AI Hardware Program, Amazon, Intel, Qualcomm, Ford Motor Company y Google.