AI: ¿Qué tan bajo puedes llegar?

Actualización: 10 de diciembre de 2023

 

AI: ¿Qué tan bajo puedes llegar?

AI: ¿Qué tan bajo puedes llegar?

Los mercados están sujetos a modas y el sector del control integrado está lejos de ser inmune a ellas. En la década de 1990, la lógica difusa parecía ser el camino a seguir y los proveedores de microcontroladores (MCU) se apresuraron a dar soporte a sus ofertas solo para ver cómo se apagaba.

 

El aprendizaje automático integrado (ML) está experimentando un frenesí de alimentación mucho mayor a medida que los jugadores establecidos de MCU y las empresas emergentes de aceleración de IA intentan demostrar su compromiso con la idea, que en su mayoría se encuentra bajo el estandarte de TinyML.

Daniel Situnayake, ingeniero fundador de TinyML en la empresa de herramientas de software Edge Impulse y coautor de un renombrado libro sobre la la tecnología, dice que la situación actual es muy diferente a la de los noventa.

“Lo interesante del aprendizaje automático integrado es que el aprendizaje automático y el aprendizaje profundo no son tecnologías nuevas y no probadas; de hecho, se han implementado con éxito en computadoras de clase servidor durante un tiempo relativamente largo y son la base de un montón de éxitos. productos. El aprendizaje automático integrado se trata de aplicar un conjunto probado de tecnologías a un nuevo contexto que permitirá muchas aplicaciones nuevas que antes no eran posibles ".

ABI Research predice que el mercado de MCU y aceleradores habilitados para IA de bajo consumo para el mercado de TinyML aumentará de menos de $ 30 millones en ingresos anuales este año a más de $ 2 mil millones a principios de la próxima década.

A pesar del rápido crecimiento, el analista de ABI Lian Jye Su espera que la competencia se vuelva más feroz a medida que grandes empresas como Bosch ingresen al mercado. Algunas empresas emergentes como Eta Compute ya se han alejado del silicio por las herramientas de software.

“Vemos cierta consolidación. Al mismo tiempo, la enorme fragmentación en el mercado de IoT significa que un número significativo de proveedores sobrevivirá, como los mercados de conjuntos de chips de IoT o MCU en general ”, dice, señalando la gran cantidad de proveedores que se enfocan en mercados verticales específicos.

TinyML enfrenta severas limitaciones. Pete Warden, líder técnico del marco TensorFlow Micro en el gigante de los motores de búsqueda y coautor de Situnayake en "TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers", dijo en la Fall Processor Conference del Linley Group que El objetivo es tomar modelos de aprendizaje profundo y “hacer que se ejecuten en dispositivos que tengan tan solo 20 KB de RAM. Queremos tomar modelos construidos con esta tecnología de vanguardia. la tecnología y aplastarlos para ejecutarlos en procesadores de muy bajo consumo.

“Debido a que es un software de código abierto, no solo podemos interactuar con los equipos de productos dentro de Google, sino que también recibimos muchas solicitudes de equipos de productos de todo el mundo que intentan crear productos interesantes. Y a menudo tenemos que decir: no, eso todavía no es posible. Llegamos a ver, en conjunto, muchos requisitos no cumplidos ”, dice Warden.

El problema principal es que los modelos de aprendizaje profundo transferidos desde el entorno del servidor requieren que se realicen millones o incluso miles de millones de funciones de adición múltiple (MAC) en un corto espacio de tiempo, incluso para modelos relativamente simples. Linley Gwennap, presidente de Linley Group, dice que las aplicaciones de audio relativamente simples, como la captura de palabras en el habla que pueden activar el reconocimiento de voz, requieren alrededor de 2 millones de MAC por segundo. El video necesita mucho más.

Los proveedores de silicio han podido impulsar el recuento de MAC aprovechando el requisito relativamente bajo de precisión en los cálculos individuales al realizar inferencias. Mientras que el entrenamiento en servidores generalmente exige aritmética de punto flotante de precisión simple o doble, los cálculos de enteros de ancho de byte (int8) parecen ser suficientes para la mayoría de las aplicaciones.

Hay indicaciones de que para las capas seleccionadas en un modelo, incluso los MAC int8 son innecesarios. Los cálculos binarios o ternarios que se pueden realizar utilizando poco más de unas pocas puertas cada uno no perjudican la precisión general en muchos casos. Potencialmente, las ganancias de rendimiento son enormes, pero carecen de la combinación de soporte de hardware y software necesaria para explotarlas por completo, dice Situnayake.

Aunque las herramientas para el marco de trabajo de TensorFlow Lite generalmente admiten pesos int8, la compatibilidad con resoluciones más bajas está lejos de ser generalizada. “Esto está cambiando rápidamente”, señala Situnayake, señalando aceleradores como Syntiant que admiten pesos binarios, de 2 bits y 4 bits, así como el trabajo de Plumerai para entrenar redes neuronales binarizadas directamente.

“Si bien estas tecnologías todavía están a la vanguardia y aún no se han convertido en la corriente principal para los desarrolladores de ML integrado, no pasará mucho tiempo antes de que formen parte del conjunto de herramientas estándar”, agrega.

Reducir la carga aritmética

Hay otras opciones para el trabajo de TinyML que reducen la carga aritmética. Al hablar en la conferencia TinyML Asia a fines del año pasado, Jan Jongboom, cofundador y CTO de Edge Impulse, dijo que el atractivo clave de ML es su capacidad para encontrar correlaciones en datos que los algoritmos convencionales no seleccionan. El problema radica en la gran cantidad de parámetros que la mayoría de los modelos convencionales tienen que procesar para encontrar esas correlaciones si las entradas son muestras sin procesar.

"Quieres echar una mano a tu algoritmo de aprendizaje automático para facilitarle la vida", dice Jongboom. La técnica más útil para las señales típicas en tiempo real es el uso de extracción de características: transformar los datos en representaciones que hacen posible construir redes neuronales con órdenes de magnitud menos de parámetros.

Tomando el habla como ejemplo, una transformación al espacio mel-cepstrum reduce enormemente el número de parámetros que pueden codificar eficientemente los cambios en el sonido.

En otros datos de sensores, como la alimentación de un acelerómetro utilizado para la detección de vibraciones en maquinaria rotativa, a menudo funcionan otras formas de representaciones conjuntas de tiempo y frecuencia.

Este enfoque es utilizado por John Edwards, consultor e ingeniero de DSP en Sigma Numerix y profesor invitado en la Universidad de Oxford, en un proyecto de análisis de vibraciones.

En este caso, una transformada de Fourier corta tuvo la mejor compensación junto con transformaciones que compensan los motores de velocidad variable. La extracción de características redujo el tamaño del modelo a solo dos capas que podrían procesarse fácilmente en un NXP LPC55C69, que combina núcleos Arm Cortex-M33 con un acelerador DSP.

Jongboom dice que, aunque puede ser tentador seguir la ruta del aprendizaje profundo, otros algoritmos de aprendizaje automático pueden ofrecer resultados. "Nuestro mejor modelo de detección de anomalías no es una red neuronal: su agrupación básica de k-medias".

Cuando el aprendizaje profundo es un requisito, la escasez proporciona una reducción adicional en la sobrecarga del modelo. Esto puede tomar la forma de poda, en la que las ponderaciones que tienen poco efecto en la salida del modelo simplemente se eliminan de la canalización. Otra opción es concentrar el esfuerzo en partes del flujo de datos que demuestran cambios a lo largo del tiempo. Por ejemplo, en los videos de vigilancia, esto puede significar el uso de procesamiento de imágenes para detectar objetos en movimiento y separarlos del fondo antes de alimentar los píxeles procesados ​​a un modelo.

Ha sido una experiencia de aprendizaje para Jongboom y otros. Al describir su progreso a través de las etapas de TinyML, en el verano de 2017 pensó que todo el concepto era imposible. Para el verano de 2020, después de haber buscado formas de optimizar la aplicación y el diseño del modelo juntos, su actitud había cambiado y creía que la clasificación de imágenes en tiempo real en hardware de bajo consumo era factible. A medida que aparezcan aceleradores de baja potencia que admiten baja precisión y escasez de manera más eficiente, la gama de modelos que pueden funcionar a micropotencia debería expandirse.

El resultado, afirma Situnayake, probablemente sea que “ML terminará representando una fracción mayor que cualquier otro tipo de carga de trabajo. Las ventajas del aprendizaje automático en el dispositivo impulsarán a la industria a crear e implementar chips de bajo consumo más rápidos y capaces que llegarán a representar la mayoría de la computación integrada en el mundo ”. Aunque habrá muchos dispositivos que no ejecuten estas cargas de trabajo, la necesidad de velocidad a medida que los tamaños de los modelos crezcan inevitablemente centrará la atención en sus necesidades y comenzará a dominar el desarrollo de arquitecturas de software y hardware, siempre que las aplicaciones sigan adelante.