Visión Artificial: el desafío de procesar en el borde

Visión artificial, tensando la sustentabilidad de IoT

Visión artificial, tensando la sustentabilidad de IoT

La visión artificial ha encontrado rápidamente su lugar en el mundo.  La detección de miradas alerta al conductor peligrosamente inconsciente y evita un accidente.

Los robots industriales que se mueven alrededor del piso de una fábrica dependen de la visión artificial para la detección segura de obstáculos.

Los puntos finales de IoT se encuentran en la frontera de la visión integrada.

Y, al igual que con otras fronteras, existen desafíos, entre los que destaca la eficiencia energética. 

¿Se pueden realizar inferencias en el extremo sin exceder la capacidad de potencia del nodo?

Vale la pena considerar esta pregunta. Esto se debe a que la inferencia en el borde puede evitar la transmisión indiscriminada de datos (solo algunos de los cuales son procesables) a la nube para su análisis. 

Eso reduce los costos de almacenamiento. Además, los viajes a la nube perjudican la latencia y reducen la capacidad en tiempo real. 

Los datos en viaje son datos vulnerables, por lo que es preferible el procesamiento de punto final.

También es ventajoso para reducir los costos pagados a los operadores de red.

Un nuevo enfoque de la arquitectura SoC

No obstante, para todos estos beneficios, ha existido un gran obstáculo.

Las restricciones de consumo de energía en dispositivos que utilizan microcontroladores tradicionales impiden la inferencia de redes neuronales en el extremo.

El rendimiento del microcontrolador convencional (MCU) no depende de las operaciones de ciclo intensivo. 

Una solución de aproximación podría depender de la visión artificial para la clasificación de objetos, que a su vez necesita la Red Neuronal Convolucional (CNN) para realizar operaciones de multiplicación de matrices que se traducen en millones de cálculos de acumulación múltiple (MAC).

Existen una variedad de redes neuronales para MCU. 

Sin embargo, estos no han logrado ponerse al día como soluciones listas para la producción porque el rendimiento necesario no puede superar la barrera de energía.

Superar el dilema potencia-rendimiento es la razón por la cual tiene sentido una solución que adopte un nuevo enfoque para el rol del procesador y la arquitectura SoC. 

Adoptar este nuevo enfoque requiere comprender que los puntos finales de IoT tienen tres cargas de trabajo para abordar para una inferencia exitosa. 

Uno es de procedimiento, uno es para el procesamiento de señales digitales y otro realiza un gran volumen de operaciones MAC. 

Una forma de abordar las necesidades únicas de cada carga de trabajo es combinar en un SoC un DSP doble de MAC de 16 bits para el procesamiento de señales y el aprendizaje automático y una CPU Arm Cortex-M para la carga procesal.

Esta arquitectura híbrida multinúcleo aprovecha los bancos de memoria dual DSP, la sobrecarga de bucle cero y la generación de direcciones complejas. 

Con él se puede procesar cualquier combinación de cargas de trabajo: pilas de red, RTOS, filtros digitales, conversiones de frecuencia de tiempo, RNN, CNN y búsquedas tradicionales de inteligencia artificial, árboles de decisión y regresión lineal, por ejemplo.

Puede producirse una mejora 2x o incluso 3x en el rendimiento del cálculo de la red neuronal cuando entran en juego las fortalezas de la arquitectura DSP.

El cambio de arquitectura solo no es suficiente

Ya sea para sistemas de visión integrados o cualquier otro que dependa de aumentar significativamente la eficiencia de la red neuronal, es importante implementar una arquitectura híbrida multinúcleo. 

Sin embargo, se debe hacer más cuando el objetivo es reducir el consumo de energía al rango de mW. 

Reconociendo esta necesidad, Eta Compute patentó la escala continua de voltaje y frecuencia (CVFS).

CVFS supera un problema con el que se encuentra el Escalado dinámico de frecuencia de voltaje, o DVFS. 

DVFS aprovecha una opción para reducir la potencia, a saber, reducir el voltaje. 

El inconveniente es que la frecuencia máxima disminuye cuando se ejerce esta opción. 

Ese problema ha centrado la efectividad de DVFS en un ámbito estrecho, uno definido por un número estrictamente limitado de niveles de voltaje discretos predefinidos y encerrado en un rango de voltaje de unos pocos cientos de mV.

Por el contrario, para lograr una operación de SoC consistente con el voltaje más eficiente, CVFS utiliza una lógica temporizada. 

Con la lógica automática, cada dispositivo puede ajustar el voltaje y la frecuencia automáticamente en una escala continua. 

Más eficaz que DVFS y más fácil de implementar que el diseño por debajo del umbral, CVFS también difiere de estos en otra forma importante. 

Y esa diferencia clave es que la arquitectura híbrida multinúcleo mencionada anteriormente multiplica lo bueno que ya está haciendo CVFS.

Grado de producción en el borde extremo

Los puntos finales en el extremo, como los de detección de personas, tienen necesidades específicas. 

Si bien las redes neuronales publicadas están disponibles para su uso por cualquiera para estos puntos finales de IoT, no tienen prioridad para abordar estas necesidades. 

La optimización de estas redes utilizando técnicas de diseño de vanguardia aborda esto.

Además de utilizar metodologías de diseño avanzadas, el enfoque de optimización de redes neuronales que han adoptado en Eta Compute se centra en nuestro procesador de sensores neuronales de grado de producción, el ECM3532.

Incorpora todas las ventajas de la arquitectura híbrida multinúcleo y la tecnología CVFS.

Conocimientos adquiridos

Los costos de energía no tienen que elevarse a niveles inaceptables para llevar el aprendizaje profundo a los sistemas de visión integrados.

Si bien no hay una varita mágica para alimentar redes neuronales que consumen mucha energía, un enfoque que combina la eficiencia energética de MCU y las fortalezas DSP junto con la optimización de la red puede ayudar a las aplicaciones a evitar los problemas de seguridad, latencia e ineficiencia que dependen únicamente de las causas de la computación en la nube.

Por Marcelo Lozano – General Publisher IT Connect Latam