talón TinyML: aplicaciones, limitaciones y su uso en dispositivos IoT y Edge - Unite.AI
Contáctanos

Inteligencia artificial

TinyML: aplicaciones, limitaciones y su uso en dispositivos IoT y Edge

mm
Actualizado on

En los últimos años, la Inteligencia Artificial (IA) y Aprendizaje automático (Machine learning & LLM) (ML) han sido testigos de un aumento meteórico en popularidad y aplicaciones, no solo en la industria sino también en el mundo académico. Sin embargo, los modelos actuales de ML e IA tienen una limitación importante: requieren una inmensa cantidad de potencia informática y de procesamiento para lograr los resultados y la precisión deseados. Esto a menudo limita su uso a dispositivos de alta capacidad con una potencia informática sustancial.

Pero dados los avances realizados en la tecnología de sistemas integrados y el desarrollo sustancial en la industria de Internet de las cosas, es deseable incorporar el uso de técnicas y conceptos de aprendizaje automático en un sistema integrado con recursos limitados para una inteligencia ubicua. El deseo de utilizar conceptos de ML en sistemas integrados y de IoT es el principal factor motivador detrás del desarrollo de TinyML, una técnica de ML integrada que permite modelos y aplicaciones de ML en múltiples dispositivos baratos, con recursos y energía limitados. 

Sin embargo, la implementación de ML en dispositivos con recursos limitados no ha sido sencilla porque implementar modelos de ML en dispositivos con baja potencia informática presenta sus propios desafíos en términos de optimización, capacidad de procesamiento, confiabilidad, mantenimiento de modelos y mucho más. 

En este artículo, profundizaremos en el modelo TinyML y aprenderemos más sobre sus antecedentes, las herramientas que respaldan TinyML y las aplicaciones de TinyML que utilizan tecnologías avanzadas. Entonces comencemos. 

Introducción a TinyML: Por qué el mundo necesita TinyML

Los dispositivos de Internet de las cosas o IoT tienen como objetivo aprovechar la informática de punta, un paradigma informático que se refiere a una variedad de dispositivos y redes cerca del usuario para permitir el procesamiento fluido y en tiempo real de datos de millones de sensores y dispositivos interconectados entre sí. Una de las principales ventajas de los dispositivos IoT es que requieren poca potencia informática y de procesamiento, ya que se pueden implementar en el borde de la red y, por lo tanto, ocupan poca memoria. 

Además, los dispositivos de IoT dependen en gran medida de las plataformas de borde para recopilar y luego transmitir los datos, ya que estos dispositivos de borde recopilan datos sensoriales y luego los transmiten a una ubicación cercana o a plataformas en la nube para su procesamiento. La tecnología de computación de borde almacena y realiza computación sobre los datos y también proporciona la infraestructura necesaria para respaldar la computación distribuida. 

La implementación de la informática de punta en dispositivos IoT proporciona

  1. Seguridad, privacidad y confiabilidad efectivas para los usuarios finales. 
  2. Menor retraso. 
  3. Mayor disponibilidad y respuesta de rendimiento para aplicaciones y servicios. 

Además, debido a que los dispositivos de borde pueden implementar una técnica de colaboración entre los sensores y la nube, el procesamiento de datos se puede realizar en el borde de la red en lugar de realizarse en la plataforma de la nube. Esto puede dar como resultado una gestión de datos eficaz, persistencia de datos, entrega eficaz y almacenamiento en caché de contenido. Además, implementar IoT en aplicaciones que tratan con H2M o interacción entre humanos y máquinas y la informática de punta moderna para el cuidado de la salud proporciona una manera de mejorar significativamente los servicios de red. 

Investigaciones recientes en el campo de la computación perimetral de IoT han demostrado el potencial de implementar técnicas de aprendizaje automático en varios casos de uso de IoT. Sin embargo, el problema principal es que los modelos tradicionales de aprendizaje automático a menudo requieren una gran potencia informática y de procesamiento, y una gran capacidad de memoria que limita la implementación de modelos de aprendizaje automático en dispositivos y aplicaciones de IoT. 

Además, la tecnología de computación de punta hoy en día carece de una alta capacidad de transmisión y de ahorros de energía efectivos, lo que conduce a sistemas heterogéneos, que es la razón principal detrás de la necesidad de una infraestructura armoniosa y holística, principalmente para actualizar, capacitar e implementar modelos de aprendizaje automático. La arquitectura diseñada para dispositivos integrados plantea otro desafío, ya que estas arquitecturas dependen de los requisitos de hardware y software que varían de un dispositivo a otro. Es la razón principal por la que es difícil construir una arquitectura de aprendizaje automático estándar para redes de IoT. 

Además, en el escenario actual, los datos generados por diferentes dispositivos se envían a plataformas en la nube para su procesamiento debido a la naturaleza computacional intensiva de las implementaciones de red. Además, los modelos de aprendizaje automático suelen depender del aprendizaje profundo, las redes neuronales profundas, los circuitos integrados de aplicaciones específicas (ASIC) y las unidades de procesamiento gráfico (GPU) para procesar los datos y, a menudo, tienen mayores requisitos de energía y memoria. Implementar modelos de aprendizaje automático completos en dispositivos IoT no es una solución viable debido a la evidente falta de potencia informática y de procesamiento, y a las limitadas soluciones de almacenamiento. 

La demanda de miniaturizar dispositivos integrados de bajo consumo junto con la optimización de los modelos de ML para hacerlos más eficientes en cuanto a energía y memoria ha allanado el camino para TinyML, que tiene como objetivo implementar modelos y prácticas de ML en dispositivos y marcos de IoT de vanguardia. TinyML permite el procesamiento de señales en dispositivos IoT y proporciona inteligencia integrada, eliminando así la necesidad de transferir datos a plataformas en la nube para su procesamiento. La implementación exitosa de TinyML en dispositivos IoT puede, en última instancia, dar como resultado una mayor privacidad y eficiencia, al tiempo que reduce los costos operativos. Además, lo que hace que TinyML sea más atractivo es que, en caso de una conectividad inadecuada, puede proporcionar análisis locales. 

TinyML: Introducción y descripción general

TinyML es una herramienta de aprendizaje automático que tiene la capacidad de realizar análisis en el dispositivo para diferentes modalidades de detección como audio, visión y voz. Los modelos Ml basados ​​en la herramienta TinyML tienen bajos requisitos de energía, memoria y computación, lo que los hace adecuados para redes integradas y dispositivos que funcionan con batería. Además, los bajos requisitos de TinyML lo convierten en una opción ideal para implementar modelos de aprendizaje automático en el marco de IoT.

En el escenario actual, los sistemas de aprendizaje automático basados ​​en la nube enfrentan algunas dificultades, incluidas preocupaciones de seguridad y privacidad, alto consumo de energía, confiabilidad y problemas de latencia, razón por la cual los modelos en plataformas de hardware y software están preinstalados. Los sensores recopilan datos que simulan el mundo físico y luego se procesan utilizando una CPU o MPU (unidad de microprocesamiento). La MPU satisface las necesidades de soporte analítico de ML habilitado por la arquitectura y las redes de ML con reconocimiento de borde. La arquitectura Edge ML se comunica con la nube de ML para la transferencia de datos, y la implementación de TinyML puede resultar en un avance significativo de la tecnología. 

Sería seguro decir que TinyML es una combinación de software, hardware y algoritmos que funcionan sincronizados entre sí para ofrecer el rendimiento deseado. Es posible que se requiera computación analógica o de memoria para brindar una experiencia de aprendizaje mejor y más efectiva para dispositivos de hardware e IoT que no admiten aceleradores de hardware. En lo que respecta al software, las aplicaciones creadas con TinyML se pueden implementar e implementar en plataformas como Linux o Linux integrado, y en software habilitado para la nube. Finalmente, las aplicaciones y sistemas creados sobre el algoritmo TinyML deben contar con el soporte de nuevos algoritmos que necesitan modelos con poco tamaño de memoria para evitar un alto consumo de memoria. 

En resumen, las aplicaciones creadas con la herramienta TinyML deben optimizar los principios y métodos de ML además de diseñar el software de forma compacta, en presencia de datos de alta calidad. Luego, estos datos deben transmitirse a través de archivos binarios que se generan utilizando modelos entrenados en máquinas con capacidad y potencia informática mucho mayores. 

Además, los sistemas y aplicaciones que se ejecutan en la herramienta TinyML deben proporcionar una alta precisión cuando se ejecutan bajo restricciones más estrictas porque se necesita un software compacto para un consumo de energía pequeño que admita las implicaciones de TinyML. Además, las aplicaciones o módulos de TinyML pueden depender de la energía de la batería para respaldar sus operaciones en sistemas integrados de borde. 

Dicho esto, las aplicaciones TinyML tienen dos requisitos fundamentales.

  1. Capacidad de escalar miles de millones de sistemas integrados baratos. 
  2. Almacenar el código en la RAM del dispositivo con una capacidad inferior a unos pocos KB. 

Aplicaciones de TinyML utilizando tecnologías avanzadas

Una de las principales razones por las que TinyML es un tema candente en la industria de la IA y el aprendizaje automático es por sus posibles aplicaciones, incluidas aplicaciones basadas en la visión y el habla, diagnóstico de salud, compresión y clasificación de patrones de datos, interfaz de control cerebral, computación de vanguardia, fenómica, autocontrol. -conducir automóviles y más. 

Aplicaciones basadas en voz

Comunicaciones de voz

Normalmente, las aplicaciones basadas en voz se basan en métodos de comunicación convencionales en los que todos los datos son importantes y se transmiten. Sin embargo, en los últimos años, la comunicación semántica ha surgido como una alternativa a la comunicación convencional ya que en la comunicación semántica solo se transmite el significado o contexto de los datos. La comunicación semántica se puede implementar en aplicaciones basadas en voz utilizando metodologías TinyML. 

Algunas de las aplicaciones más populares en la industria de las comunicaciones de voz en la actualidad son la detección de voz, el reconocimiento de voz, el aprendizaje en línea, la enseñanza en línea y la comunicación orientada a objetivos. Estas aplicaciones suelen tener un mayor consumo de energía y también tienen altos requisitos de datos en el dispositivo host. Para superar estos requisitos, se introdujo una nueva biblioteca TinySpeech que permite a los desarrolladores crear una arquitectura computacional baja que utiliza redes convolucionales profundas para construir una instalación de almacenamiento bajo. 

Para utilizar TinyML para mejorar el habla, los desarrolladores primero abordaron el tamaño del modelo de mejora del habla porque estaba sujeto a limitaciones y restricciones de hardware. Para abordar el problema, se implementaron poda estructurada y cuantificación de enteros para RNN o modelo de mejora del habla de redes neuronales recurrentes. Los resultados sugirieron que el tamaño del modelo se reduciría casi 12 veces, mientras que las operaciones se reducirían casi 3 veces. Además, es vital que los recursos se utilicen de manera efectiva, especialmente cuando se implementan en aplicaciones con recursos limitados que ejecutan aplicaciones de reconocimiento de voz. 

Como resultado, para dividir el proceso, se propuso un método de codiseño para aplicaciones de reconocimiento de voz y voz basadas en TinyML. Los desarrolladores utilizaron la operación de ventanas para particionar el software y el hardware de manera de procesar previamente los datos de voz sin procesar. El método pareció funcionar ya que los resultados indicaron una disminución en el consumo de energía del hardware. Finalmente, también existe la posibilidad de implementar una partición optimizada entre el codiseño de software y hardware para un mejor rendimiento en un futuro próximo. 

Además, una investigación reciente ha propuesto el uso de un transductor basado en teléfono para sistemas de reconocimiento de voz, y la propuesta tiene como objetivo reemplazar los predictores LSTM con la capa Conv1D para reducir las necesidades de computación en los dispositivos de borde. Cuando se implementó, la propuesta arrojó resultados positivos ya que la SVD o descomposición de valores singulares había comprimido el modelo con éxito, mientras que el uso de decodificación basada en WFST o transductores de estado finito ponderados resultó en una mayor flexibilidad en el sesgo de mejora del modelo. 

Muchas aplicaciones destacadas de reconocimiento de voz, como asistentes virtuales o de voz, subtítulos en vivo y comandos de voz, utilizan técnicas de aprendizaje automático para funcionar. Los asistentes de voz populares actualmente, como Siri y el Asistente de Google, hacen ping a la plataforma en la nube cada vez que reciben algunos datos, lo que genera importantes preocupaciones relacionadas con la privacidad y la seguridad de los datos. TinyML es una solución viable al problema, ya que tiene como objetivo realizar reconocimiento de voz en dispositivos y eliminar la necesidad de migrar datos a plataformas en la nube. Una de las formas de lograr el reconocimiento de voz en el dispositivo es utilizar Tiny Transducer, un modelo de reconocimiento de voz que utiliza una capa DFSMN o bloque de memoria secuencial de alimentación profunda junto con una capa Conv1D en lugar de las capas LSTM para reducir los requisitos de cálculo. y parámetros de red. 

Audífonos

La pérdida de audición es un problema de salud importante en todo el mundo, y la capacidad de los seres humanos para escuchar sonidos generalmente se debilita a medida que envejecen, y es un problema importante en países que enfrentan una población que envejece, incluidos China, Japón y Corea del Sur. Actualmente, los audífonos funcionan según el principio simple de amplificar todos los sonidos de entrada del entorno, lo que dificulta que la persona distinga o diferencie entre el sonido deseado, especialmente en un ambiente ruidoso. 

TinyML podría ser la solución viable para este problema, ya que el uso de un modelo TinyLSTM que utiliza un algoritmo de reconocimiento de voz para audífonos puede ayudar a los usuarios a distinguir entre diferentes sonidos. 

Aplicaciones basadas en la visión

TinyML tiene el potencial de desempeñar un papel crucial en el procesamiento visión de computadora conjuntos de datos basados ​​​​en porque para obtener resultados más rápidos, estos conjuntos de datos deben procesarse en la propia plataforma perimetral. Para lograr esto, el modelo TinyML enfrenta los desafíos prácticos que enfrenta al entrenar el modelo utilizando la placa del microcontrolador OpenMV H7. Los desarrolladores también propusieron una arquitectura para detectar el lenguaje de signos americano con la ayuda de un microcontrolador ARM Cortex M7 que funciona sólo con 496 KB de RAM de frame-buffer. 

La implementación de TinyML para aplicaciones basadas en visión por computadora en plataformas perimetrales requirió que los desarrolladores superaran el principal desafío de CNN o redes neuronales convolucionales con un alto error de generalización y una alta precisión en el entrenamiento y las pruebas. Sin embargo, la implementación no se generalizó de manera efectiva a imágenes dentro de nuevos casos de uso ni a fondos con ruido. Cuando los desarrolladores utilizaron el método de aumento de interpolación, el modelo arrojó una puntuación de precisión de más del 98 % en los datos de prueba y alrededor del 75 % en la generalización. 

Además, se observó que cuando los desarrolladores utilizaron el método de aumento de interpolación, hubo una caída en la precisión del modelo durante la cuantificación, pero al mismo tiempo, también hubo un aumento en la velocidad de inferencia del modelo y en la generalización de la clasificación. Los desarrolladores también propusieron un método para aumentar aún más la precisión del entrenamiento del modelo de generalización en datos obtenidos de una variedad de fuentes diferentes y probar el rendimiento para explorar la posibilidad de implementarlo en plataformas perimetrales como relojes inteligentes portátiles. 

Además, estudios adicionales sobre CNN indicó que es posible implementar y lograr resultados deseables con la arquitectura CNN en dispositivos con recursos limitados. Recientemente, los desarrolladores pudieron desarrollar un marco para la detección de mascarillas médicas en un microcontrolador ARM Cortex M7 con recursos limitados utilizando TensorFlow lite con un uso mínimo de memoria. El tamaño del modelo después de la cuantificación fue de aproximadamente 138 KB, mientras que la velocidad de interferencia en la placa objetivo fue de aproximadamente 30 FPS. 

Otra aplicación de TinyML para aplicaciones basadas en visión por computadora es implementar un dispositivo de reconocimiento de gestos que se puede sujetar a un bastón para ayudar a las personas con discapacidad visual a navegar fácilmente en su vida diaria. Para diseñarlo, los desarrolladores utilizaron el conjunto de datos de gestos y utilizaron el conjunto de datos para entrenar el modelo ProtoNN con un algoritmo de clasificación. Los resultados obtenidos de la configuración fueron precisos, el diseño fue de bajo costo y arrojó resultados satisfactorios. 

Otra aplicación importante de TinyML es en la industria de vehículos autónomos y sin conductor debido a la falta de recursos y potencia de cálculo a bordo. Para abordar el problema, los desarrolladores introdujeron un método de aprendizaje de bucle cerrado basado en el modelo TinyCNN que proponía un modelo predictor en línea que captura la imagen en tiempo de ejecución. El principal problema que enfrentaron los desarrolladores al implementar TinyML para la conducción autónoma fue que el modelo de decisión que fue entrenado para trabajar con datos fuera de línea puede no funcionar igual de bien cuando se trata de datos en línea. Para maximizar al máximo las aplicaciones de los vehículos autónomos y los vehículos autónomos, idealmente el modelo debería poder adaptarse a los datos en tiempo real. 

Clasificación y compresión de patrones de datos

Uno de los mayores desafíos del marco actual TinyML es facilitar su adaptación a los datos de capacitación en línea. Para abordar el problema, los desarrolladores han propuesto un método conocido como TinyOL o TinyML Online Learning para permitir la capacitación con aprendizaje en línea incremental en unidades de microcontroladores, permitiendo así que el modelo se actualice en dispositivos de borde de IoT. La implementación se logró utilizando el lenguaje de programación C++ y se agregó una capa adicional a la arquitectura TinyOL. 

Además, los desarrolladores también realizaron la codificación automática de la placa del sensor Arduino Nano 33 BLE y el modelo entrenado pudo clasificar nuevos patrones de datos. Además, el trabajo de desarrollo incluyó el diseño de algoritmos eficientes y más optimizados para que las redes neuronales admitan patrones de entrenamiento de dispositivos en línea. 

Las investigaciones en TinyOL y TinyML han indicado que la cantidad de capas de activación ha sido un problema importante para los dispositivos de borde de IoT que tienen recursos limitados. Para abordar el problema, los desarrolladores introdujeron el nuevo modelo TinyTL o Tiny Transfer Learning para hacer que la utilización de la memoria en dispositivos de borde de IoT sea mucho más efectiva y evitar el uso de capas intermedias con fines de activación. Además, los desarrolladores también introdujeron un módulo de sesgo completamente nuevo conocido como "módulo residual lite”para maximizar las capacidades de adaptación y, por supuesto, permitir que los extractores de características descubran mapas de características residuales. 

En comparación con el ajuste completo de la red, los resultados favorecieron la arquitectura TinyTL, ya que mostraron que TinyTL reducía la sobrecarga de memoria aproximadamente 6.5 veces con una pérdida de precisión moderada. Cuando se ajustó la última capa, TinyML mejoró la precisión en un 34% con una pérdida de precisión moderada. 

Además, las investigaciones sobre la compresión de datos han indicado que algoritmos de compresión de datos Debe gestionar los datos recopilados en un dispositivo portátil, y para lograr lo mismo, los desarrolladores propusieron TAC o Tiny Anomaly Compressor. El TAC pudo superar los algoritmos SDT o Swing Door Trending y DCT o Discrete Cosine Transform. Además, el algoritmo TAC superó a los algoritmos SDT y DCT al lograr una tasa de compresión máxima de más del 98% y tener la relación pico señal-ruido superior de los tres algoritmos. 

Diagnóstico de Salud

La pandemia global de Covid-19 abrió nuevas puertas de oportunidades para la implementación de TinyML, ya que ahora es una práctica esencial para detectar continuamente síntomas respiratorios relacionados con la tos y el resfriado. Para garantizar un monitoreo ininterrumpido, los desarrolladores propusieron un modelo CNN Tiny RespNet que opera en una configuración de múltiples modelos y el modelo se implementa sobre una FPGA Xilinx Artix-7 100t que permite que el dispositivo procese la información en paralelo y tiene una alta eficiencia. y bajo consumo de energía. Además, el modelo TinyResp también toma el habla de los pacientes, grabaciones de audio e información demográfica como entrada para clasificar, y los síntomas relacionados con la tos de un paciente se clasifican utilizando tres conjuntos de datos distinguidos. 

Además, los desarrolladores también propusieron un modelo capaz de ejecutar cálculos de aprendizaje profundo en dispositivos perimetrales, un modelo TinyML llamado TinyDL. El modelo TinyDL se puede implementar en dispositivos de vanguardia como relojes inteligentes y dispositivos portátiles para diagnóstico de salud, y también es capaz de realizar análisis de rendimiento para reducir el ancho de banda, la latencia y el consumo de energía. Para lograr la implementación de TinyDL en dispositivos portátiles, se diseñó y entrenó un modelo LSTM específicamente para un dispositivo portátil, y se le alimentaron con los datos recopilados como entrada. El modelo tiene una puntuación de precisión de aproximadamente el 75 al 80% y también pudo trabajar con datos fuera del dispositivo. Estos modelos que se ejecutan en dispositivos perimetrales mostraron el potencial para resolver los desafíos actuales que enfrentan los dispositivos de IoT. 

Finalmente, los desarrolladores también propusieron otra aplicación para monitorear la salud de las personas mayores estimando y analizando sus posturas corporales. El modelo utiliza el marco agnóstico en el dispositivo que permite que el modelo habilite la validación y el fomento rápido para realizar adaptaciones. El modelo implementó algoritmos de detección de posturas corporales junto con puntos de referencia faciales para detectar posturas corporales espaciotemporales en tiempo real. 

Edge Computing

Una de las principales aplicaciones de TinyML se encuentra en el campo de la computación de borde, ya que con el aumento en el uso de dispositivos IoT para conectar dispositivos en todo el mundo, es esencial configurar dispositivos de borde, ya que ayudará a reducir la carga sobre las arquitecturas de la nube. . Estos dispositivos de borde contarán con centros de datos individuales que les permitirán realizar computación de alto nivel en el propio dispositivo, en lugar de depender de la arquitectura de la nube. Como resultado, ayudará a reducir la dependencia de la nube, reducir la latencia, mejorar la seguridad y privacidad del usuario y también reducir el ancho de banda. 

Los dispositivos perimetrales que utilizan los algoritmos TinyML ayudarán a resolver las limitaciones actuales relacionadas con los requisitos de energía, computación y memoria, y esto se analiza en la imagen a continuación. 

Además, TinyML también puede mejorar el uso y la aplicación de vehículos aéreos no tripulados o UAV al abordar las limitaciones actuales que enfrentan estas máquinas. El uso de TinyML puede permitir a los desarrolladores implementar un dispositivo energéticamente eficiente con baja latencia y alta potencia informática que puede actuar como controlador para estos UAV. 

Interfaz cerebro-computadora o BCI

TinyML tiene aplicaciones importantes en la industria de la salud y puede resultar muy beneficioso en diferentes áreas, incluida la detección de cáncer y tumores, predicciones de salud mediante señales de ECG y EEG e inteligencia emocional. El uso de TinyML puede permitir que la estimulación cerebral profunda adaptativa o aDBS se adapte con éxito a las adaptaciones clínicas. El uso de TinyMl también puede permitir a aDBS identificar biomarcas relacionadas con enfermedades y sus síntomas mediante grabaciones invasivas de las señales cerebrales. 

Además, la industria de la salud a menudo incluye la recopilación de una gran cantidad de datos de un paciente, y estos datos luego deben procesarse para alcanzar soluciones específicas para el tratamiento de un paciente en las primeras etapas de una enfermedad. Como resultado, es vital construir un sistema que no sólo sea altamente efectivo sino también altamente seguro. Cuando combinamos la aplicación de IoT con el modelo TinyML, nace un nuevo campo denominado H-IoT o Internet de las cosas para la atención médica, y las principales aplicaciones de H-IoT son el diagnóstico, el monitoreo, la logística, el control de propagación y los sistemas de asistencia. Si queremos desarrollar dispositivos que sean capaces de detectar y analizar la salud de un paciente de forma remota, es fundamental desarrollar un sistema que tenga accesibilidad global y baja latencia. 

Vehículos autónomos

Finalmente, TinyML puede tener aplicaciones generalizadas en la industria de vehículos autónomos, ya que estos vehículos se pueden utilizar de diferentes maneras, incluido el seguimiento humano, fines militares y aplicaciones industriales. Estos vehículos tienen el requisito principal de poder identificar objetos de manera eficiente cuando se busca el objeto. 

A partir de ahora, los vehículos autónomos y la conducción autónoma son una tarea bastante compleja, especialmente cuando se desarrollan vehículos mini o de tamaño pequeño. Los desarrollos recientes han demostrado potencial para mejorar la aplicación de la conducción autónoma para mini vehículos mediante el uso de una arquitectura CNN y la implementación del modelo sobre el MCI GAP8. 

Desafios

TinyML es un concepto relativamente nuevo en la industria de AI y ML y, a pesar del progreso, todavía no es tan efectivo como lo necesitamos para la implementación masiva de dispositivos de borde e IoT. 

El mayor desafío al que se enfrentan actualmente los dispositivos TinyML es el consumo de energía de estos dispositivos. Idealmente, se espera que los dispositivos IoT y de borde integrados tengan una duración de batería de más de 10 años. Por ejemplo, en condiciones ideales, se supone que un dispositivo IoT que funciona con una batería de 2 Ah tiene una duración de más de 10 años, dado que el consumo de energía del dispositivo es de aproximadamente 12 ua. Sin embargo, en el estado dado, una arquitectura IoT con un sensor de temperatura, una unidad MCU y un módulo WiFi, el consumo actual es de aproximadamente 176.4 mA, y con este consumo de energía, la batería durará solo aproximadamente 11 horas, en lugar de eso. de los 10 años requeridos de duración de la batería. 

Restricciones de recursos

Para mantener la coherencia de un algoritmo, es vital mantener la disponibilidad de energía y, dado el escenario actual, la disponibilidad de energía limitada para los dispositivos TinyML es un desafío crítico. Además, las limitaciones de memoria también son un desafío importante, ya que la implementación de modelos a menudo requiere una gran cantidad de memoria para funcionar de manera efectiva y precisa. 

Restricciones de hardware

Las limitaciones de hardware dificultan la implementación de algoritmos TinyML a gran escala debido a la heterogeneidad de los dispositivos de hardware. Hay miles de dispositivos, cada uno con sus propias especificaciones y requisitos de hardware y, como resultado, actualmente es necesario modificar un algoritmo TinyML para cada dispositivo individual, lo que hace que la implementación masiva sea un problema importante. 

Restricciones del conjunto de datos

Uno de los principales problemas de los modelos TinyML es que no admiten los conjuntos de datos existentes. Es un desafío para todos los dispositivos de vanguardia, ya que recopilan datos mediante sensores externos y estos dispositivos a menudo tienen limitaciones de potencia y energía. Por lo tanto, los conjuntos de datos existentes no se pueden utilizar para entrenar los modelos TinyML de forma eficaz. 

Consideraciones Finales:

El desarrollo de técnicas de ML ha provocado una revolución y un cambio de perspectiva en el ecosistema de IoT. La integración de modelos de ML en dispositivos de IoT permitirá que estos dispositivos de borde tomen decisiones inteligentes por sí solos sin ninguna intervención humana externa. Sin embargo, convencionalmente, los modelos de aprendizaje automático a menudo tienen requisitos de computación, memoria y alta potencia que los unifican para su implementación en dispositivos de borde que a menudo tienen recursos limitados. 

Como resultado, se dedicó una nueva rama de la IA al uso de ML para dispositivos IoT y se denominó TinyML. TinyML es un marco de aprendizaje automático que permite que incluso los dispositivos con recursos limitados aprovechen el poder de la IA y el aprendizaje automático para garantizar una mayor precisión, inteligencia y eficiencia. 

En este artículo, hablamos sobre la implementación de modelos TinyML en dispositivos IoT con recursos limitados, y esta implementación requiere entrenar los modelos, implementarlos en el hardware y realizar técnicas de cuantificación. Sin embargo, dado el alcance actual, los modelos de aprendizaje automático listos para implementarse en IoT y dispositivos de borde tienen varias complejidades y restricciones, incluidos problemas de compatibilidad de hardware y marco. 

"Ingeniero de profesión, escritor de corazón". Kunal es un escritor técnico con un profundo amor y comprensión de AI y ML, dedicado a simplificar conceptos complejos en estos campos a través de su atractiva e informativa documentación.