Investigadores de IMDEA Networks crean un algoritmo que maximiza la precisión de la inferencia de sensores de IoT usando la computación de borde
Estamos en una era fascinante en la que incluso dispositivos con pocos recursos, como los sensores del Internet de las Cosas (IoT), pueden utilizar algoritmos de aprendizaje profundo para abordar problemas complejos como la clasificación de imágenes o el procesamiento del lenguaje natural (rama de la inteligencia artificial que se ocupa de dotar a los ordenadores de la capacidad de entender lenguaje hablado y escrito del mismo modo que los seres humanos). Sin embargo, el aprendizaje profundo en los sensores de IoT puede no ser capaz de garantizar los requisitos de calidad de los servicios, como la precisión de la inferencia y la latencia. Con el crecimiento exponencial de los datos recogidos por miles de millones de dispositivos IoT se ha planteado la necesidad de cambiar a un modelo distribuido en el que parte de la computación se produce en el borde de la red (“Edge computing”), más cerca de donde se crean los datos, en lugar de enviarlos a la nube para su procesamiento y almacenamiento.
Los investigadores de IMDEA Networks Andrea Fresa (PhD Student) y Jaya Prakash Champati (Research Assistant Professor) han realizado un estudio en el que han presentado el algoritmo AMR², que hace uso de la infraestructura de computación de borde (procesamiento, análisis y almacenamiento de los datos más cerca de donde se generan para permitir análisis y respuestas más rápidos, casi en tiempo real) para aumentar la precisión de la inferencia de los sensores de IoT mientras se observan las limitaciones de latencia y han demostrado que el problema queda resuelto. El paper “An Offloading Algorithm for Maximizing Inference Accuracy on Edge Device in an Edge Intelligence System” se ha publicado esta semana en la conferencia MSWiM.
Para entender qué es la inferencia hay que explicar primero que el machine learning (ML) o aprendizaje automático trabaja en dos fases principalmente. La primera hace referencia al entrenamiento, cuando el desarrollador alimenta su modelo con un conjunto de datos curados para que pueda “aprender” todo lo que necesita sobre el tipo de datos que va a analizar. La siguiente fase es la de inferencia: el modelo puede hacer predicciones basadas en datos reales para producir resultados procesables.
En su publicación, los investigadores han llegado a la conclusión de que la precisión de la inferencia aumentó hasta un 40% si se compara el algoritmo AMR² con las técnicas de programación básicas. Asimismo, han descubierto que para soportar adecuadamente los algoritmos de aprendizaje automático en el borde la red es esencial un algoritmo de programación eficiente.
“Los resultados de nuestro estudio podrían ser muy útiles para las aplicaciones de aprendizaje automático que necesitan una inferencia rápida y precisa en los dispositivos finales. Pensemos en un servicio como Google Photos, por ejemplo, que categoriza los elementos de las imágenes. Podemos garantizar el retardo de ejecución utilizando el algoritmo AMR², lo que puede ser muy provechoso para un desarrollador que puede utilizarlo en el diseño para garantizar que los retrasos no sean visibles para el usuario”, explica Andrea Fresa.
El principal obstáculo que han encontrado al realizar este estudio es demostrar el rendimiento teórico del algoritmo AMR² y validarlo utilizando un banco de pruebas experimental que consiste en una Raspberry Pi y un servidor conectados a través de una LAN. “Para demostrar los límites de rendimiento de AMR², empleamos ideas fundamentales de la programación lineal e instrumentos de la investigación operativa”, subraya Fresa.
No obstante, con este trabajo los investigadores de IMDEA Networks han sentado las bases para futuras investigaciones que ayudarán a hacer posible la ejecución de aplicaciones de aprendizaje automático en el borde de la red de forma rápida y precisa.