Inicio Artículos Edge AI Computing: Computación distribuida de IA para descargar la nube y...

Edge AI Computing: Computación distribuida de IA para descargar la nube y optimizar la experiencia del usuario

Kits de desarrollo Astra Machina

Autor: Nebu Philips, Director de Desarrollo de Estrategia y Negocio, Synaptics Incorporated

En un ámbito que evoluciona a tanta velocidad como el formado por IoT (Internet de las Cosas) y la inteligencia artificial (IA), aumenta con rapidez la cantidad de datos que es necesario procesar y almacenar. En muchas aplicaciones, la edge AI (IA distribuida) puede reducir el volumen de trabajo en los centros de datos que procesan datos en la nube mediante el uso de procesadores muy optimizados y ofrecer importantes ventajas, como mejores niveles de latencia, privacidad y seguridad, menos consumo y mayor eficiencia del ancho de banda.

No obstante, el entorno IoT edge AI (IA distribuida en IoT) se caracteriza por un ecosistema fragmentado formado por una gran diversidad de procesadores, software, herramientas y compiladores. Esta fragmentación contrasta mucho con el ecosistema relativamente maduro de la IA basada en la nube y resulta frustrante para los desarrolladores. Se necesita un planteamiento más consistente para que el potencial de edge AI revolucione la experiencia del usuario final.

Panorama actual de IA e IoT

Gracias a su infraestructura sólida y relativamente consolidada, la nube se ha convertido en el cimiento tradicional de la IA, recurriendo a las GPU y las prestaciones de los hiperescaladores para gestionar la mayor parte del procesamiento de IA. La madurez del lenguaje y de las metodologías empleadas en las señales de IA basadas en la nube indica la existencia de un ecosistema maduro y estable. Sin embargo, cuando nos movemos de la nube hacia los dispositivos edge o distribuidos, la situación es cada más más heterogénea. La ausencia de normas adoptadas de manera generalizada en el entorno IoT da como resultado una experiencia complicada e incoherente para usuarios y desarrolladores.

A diferencia de la nube, que suele utilizar modelos de lenguaje de gran tamaño o LLM (large language models) que consumen mucha energía, los dispositivos IoT necesitan modelos optimizados para entornos con unos recursos limitados en cuanto a consumo y memoria. Además, para entrenar el modelo en la nube es posible que se utilice TensorFlow y quizás otros dos entornos propietarios, pero cuando se trata de dispositivos IoT en el gran mercado del consumo, las empresas y la industria, puede haber un gran número de plataformas y protocolos diferentes. Conseguir que funcionen conjuntamente puede resultar difícil.

Rompecabezas de hardware y software

El desajuste entre los plazos de desarrollo del software y el hardware aumenta la complejidad. Las aplicaciones de software integran capacidades IA con rapidez, como algoritmos de aprendizaje profundo, que no siempre encajan con el hardware en el que se ejecutan.

¿Qué opciones existen en la actualidad para integrar la IA en un diseño IoT? Los fabricantes de dispositivos IoT a menudo intentan reaprovechar en sus aplicaciones unos productos ya existentes y diseñados para mercados como smartphones e infraestructura. Los dispositivos que incorporan motores de inferencia de IA alcanzan una capacidad de aceleración de 1 TOPS o 2 TOPS. Por encima de estos valores existe una importante laguna en el mercado para llegar hasta 16 TOPS, 32 TOPS, 48 TOPS o más. Si bien este método de aprovechar los dispositivos puede funcionar, provoca ineficiencias en la capacidad de procesamiento y el consumo de energía que no pueden ser admitidos por los dispositivos IoT.

Algunos estudios señalan que el mercado de dispositivos edge AI IoT está creciendo alrededor de un 15% año tras año y estará valorado en unos 20.000 a 25.000 millones de dólares dentro de los próximos tres a cuatro años. Se trata de un mercado muy próspero, pero si se trata de soluciones que no cubren las necesidades de los fabricantes de dispositivos IoT, existe un gran hueco por llenar.

Eficiencia energética, latencia, privacidad, facilidad de desarrollo y rendimiento son los principales retos para la integración de la IA en IoT edge. Los modelos LLM basados en la nube consumen mucha energía, mientras que se exige a los dispositivos IoT consumir mucha menos energía ofreciendo un alto rendimiento. Esta disparidad exige un delicado equilibrio entre hardware y software para garantizar que los dispositivos IoT puedan ejecutar aplicaciones IA de manera efectiva y con un consumo mínimo.

La buena noticia es que el panorama actual ofrece muchas opciones a los ingenieros que tratan de integrar la IA en los diseños. El reto consiste en escoger la plataforma adecuada. Muchas tarjetas de referencia y plataformas existentes no han sido especialmente diseñadas para aplicaciones IoT, lo cual dificulta su integración y reduce su rendimiento. Está claro que hace falta una solución fácilmente disponible que se ajuste a los requisitos concretos en cuanto a rendimiento y consumo de energía de las aplicaciones IoT. La generalización de la IA hace que la inferencia segura y la privacidad del usuario sean cada vez más importantes.

Cómo cubrir las necesidades de diversos modelos para personalización

Muchas aplicaciones AI IoT se basan en la visión, y la visión como un tipo de detección se puede utilizar para detectar la presencia y la atención, para estimar la postura del cuerpo y reconocer gestos; todas estas aplicaciones están consolidadas y se encuentran fácilmente disponibles hoy en día en la nube. El siguiente paso consiste en realizar estas funciones a nivel local en un sistema IoT con modelos más optimizados que se ajusten a limitaciones de recursos como el consumo, el coste, el espacio y la memoria.

Al mismo tiempo, también es posible que se desee integrar otras modalidades, como voz y audio, para ampliar el contexto y permitir unas experiencias más personalizadas al usuario. Hay otros experimentos interesantes en marcha para mejorar la experiencia del usuario. Por ejemplo, un planteamiento híbrido permite actualizar los modelos a partir de metadatos enviados a la nube. El modelo se vuelve a entrenar y es implementado de nuevo en el dispositivo IoT, por lo que se adapta más al consumidor. Este es tan solo uno de los muchos lazos existentes entre el edge o periferia y la nube.

Esta interrelación será primordial en el mundo IoT, donde en lugar de ejecutar un modelo único en el hardware, el modelo se puede actualizar y personalizar más a lo largo del tiempo. La IA, tanto si se trata de un altavoz inteligente, una cámara de seguridad doméstica o unos auriculares, aprende explícitamente a partir de patrones, comportamientos o necesidades y se puede actualizar posteriormente cuando se conecta a un smartphone o red Wi-Fi.

Las tecnologías IoT de bajo consumo instaladas en dispositivos de consumo pueden ser más inteligentes y autogestionadas, extendiendo su uso del sector de consumo empresarial y el industrial. Tomemos como ejemplos la seguridad: las continuas mejoras introducidas en los modelos de IA sobre dispositivos edge IoT mejoran la eficiencia y abren la puerta a la disponibilidad de unos sistemas más sofisticados y autónomos.

Necesidad de herramientas Edge AI de código abierto

El éxito no trata tan solo de optimizar un modelo; ese modelo también se ha de integrar en la aplicación. Tomemos como ejemplo la transmisión de vídeo. ¿Cómo se integra un modelo de IA, desde acceder al vídeo, decodificarlo, crear un modelo de IA, codificarlo y enviarlo?

Si bien la optimización de modelos de IA en la nube es cada vez más habitual con IA distribuida, estos ecosistemas aún han de ser desarrollados. Por lo que se refiere a los entornos de modelos (TensorFlow Lite, TensorFlow Micro, PyTorch, ONNX y Caffe), están cada vez más estandarizados. No obstante, la actual generación de compiladores y entornos de ejecución conlleva una experiencia muy particular dependiendo del proveedor. Hace falta un enfoque basado en código abierto para acelerar la implementación.

Cómo superar los retos de Edge IoT Computing

Synaptics ha respondido a estos retos presentando su plataforma informática embebida Astra de «IA nativa». La plataforma Astra unifica el fragmentado ecosistema de IoT proporcionando una experiencia estandardizada y consistente al desarrollador en varios segmentos del mercado, como los dispositivos de consumo, empresariales e industriales. Se basa en SoC (systems on chip) embebidos escalables con software y herramientas de desarrollo de código abierto que cuentan con el soporte de las soluciones de conectividad Synaptics Veros y de un dinámico ecosistema de socios.

Los dispositivos de silicio consisten en unidades de procesamiento neuronal o NPU (neural processing units), CPU, GPU y DSP integrados que alcanzan entre decenas de GOPS y 8 TOPS para los microprocesadores utilizados en las aplicaciones Linux y Android más exigentes. Esta escalabilidad permite que la plataforma para cubrir un amplio espectro de aplicaciones IoT, desde dispositivos con un solo sensor hasta sistemas multimodo que proporcionan contexto a modelos de lenguaje selectos y de bajo consumo para ofrecer unos productos finales más inmersivos e intuitivos.

La empresa ha aprovechado sus conocimientos para centrarse en aplicaciones AI IoT que utilizan la visión como principal modalidad de detección. El reto estriba en reducir el tamaño de estos modelos para que se ajuste a las limitaciones de los sistemas IoT sin comprometer la experiencia del usuario. Synaptics también está explorando otras modalidades, como voz y audio, para perfeccionar estas experiencias más personalizadas del usuario.

Synaptics ha establecido la AI Developer Zone (Zona para Desarrolladores de IA) para apoyar el Desarrollo de soluciones edge AI IoT. Se trata de un entorno dotado de potentes recursos y diseñado para facilitar a los desarrolladores la creación de aplicaciones IA. La zona ofrece kits de desarrollo de software (SDK) de código abierto y herramientas basadas en la nube que simplifican el proceso de desarrollo, hacienda que sea más accesible para un mayor número de desarrolladores. Esta iniciativa forma parte del compromiso de fomentar una vibrante comunidad de desarrolladores que pueda aprovechar sus microcontroladores, microprocesadores y motores de inferencia de IA con NPU adaptativas.

La plataforma Astra también aborda el aspecto crítico de la seguridad en diseños AI IoT. Gracias a su experiencia con fabricantes de terminales set-top box (STB), cuyos requisitos de seguridad son muy estrictos, Synaptics ha creado una cadena segura para inferencia de IA. Los dispositivos y el compilador SyNAP de la plataforma incorporan técnicas de aislamiento que complementan las capas de seguridad del software, garantizando así unas robustas defensas frente a ciberataques.

La plataforma Astra de Synaptics está posicionada estratégicamente para capitalizar el crecimiento previsto para el mercado de dispositivos informáticos, ofreciendo para ello un enfoque con IA nativa y especialmente desarrollado para IoT. Los SoC de la plataforma cuentan motores de IA ejecutados en microcontroladores con IA de muy bajo consumo y microprocesadores de alto rendimiento, proporcionando así una arquitectura unificada y adaptable a varios niveles de rendimiento. Los kits de desarrollo Astra Machina Foundation Series de Synaptics facilitan el desarrollo rápido de prototipos y proporcionan la necesaria experiencia de desarrollo coherente.

La plataforma informática embebida con “IA nativa” Astra de Synaptics unifica el fragmentado ecosistema IoT proporcionando una experiencia estandarizada al desarrollador en varios segmentos del mercado.

El futuro de Edge AI IoT

En un mercado que no deja de cambiar, la plataforma informática embebida con “IA nativa” Astra coloca a Synaptics como el líder tecnológico e intelectual en edge AI para IoT. La plataforma está diseñada para proporcionar una experiencia consistente al usuario, facilitando el desarrollo rápido de prototipos, el procesamiento del tamaño adecuado y conectividad para Linux y Android con BSP (board support packages) de código abierto.

La AI Developer Zone (https://developer.synaptics.com/) de Synaptics y sus iniciativas de código abierto permiten que los desarrolladores aprendan y desarrollen aplicaciones AI Edge. El kit Machina se puede adquirir en internet y también se encuentra en GitHub.

Los kits de desarrollo Astra Machina facilitan el desarrollo rápido de prototipos y proporcionan una experiencia de desarrollo coherente a los ingenieros que trabajan en aplicaciones AI Edge.

El papel de Edge AI será primordial en IoT ya que ofrece una manera de gestionar el aluvión de datos y mejorar las experiencias de los usuarios. Con su plataforma Astra y su especialización en herramientas de código abierto y soporte a desarrolladores, Synaptics ayuda a impulsar la transición hacia experiencias más inteligentes e intuitivas de los usuarios y a gran escala.