Edge Impulse hace que TinyML esté disponible para millones de desarrolladores de Arduino Deja un comentario

 

Ejecutar el aprendizaje automático (ML) en microcontroladores es uno de los desarrollos más emocionantes de los últimos años, ya que permite que dispositivos pequeños alimentados por batería detecten movimientos complejos, reconozca sonidos o encontrar anomalías en los datos del sensor. Para hacer que la construcción y la implementación de estos modelos sean accesibles para todos los desarrolladores integrados, estamos lanzando soporte de primera clase para el Arduino Nano 33 BLE Sense y otras placas Arduino de 32 bits en Edge Impulse.

La tendencia a ejecutar ML en microcontroladores se llama Embedded ML o Tiny ML. Significa que los dispositivos pueden tomar decisiones inteligentes sin necesidad de enviar datos a la nube, lo que es excelente desde una perspectiva de eficiencia y privacidad. Incluso potentes modelos de aprendizaje profundo (basados ​​en redes neuronales artificiales) ahora están llegando a los microcontroladores. El año pasado se hicieron grandes avances para hacer que los modelos de aprendizaje profundo sean más pequeños, más rápidos y ejecutables en hardware integrado a través de proyectos como TensorFlow Lite Micro , uTensor y Arm’s CMSIS-NN [19459011 ]; pero construir un conjunto de datos de calidad, extraer las características correctas, capacitar e implementar estos modelos sigue siendo complicado.

Usando Edge Impulse ahora puede recopilar rápidamente datos de sensores del mundo real, entrenar modelos ML en estos datos en la nube y luego implementar el modelo nuevamente en su dispositivo Arduino. Desde allí, puede integrar el modelo en sus bocetos Arduino con una sola llamada de función. Sus sensores son mucho más inteligentes y pueden dar sentido a eventos complejos en el mundo real. Los ejemplos integrados le permiten recopilar datos del acelerómetro y el micrófono, pero es fácil integrar otros sensores con unas pocas líneas de código.

¿Emocionado? Así es como construyes tu primer modelo de aprendizaje profundo con el Arduino Nano 33 BLE Sense (también hay un video tutorial aquí: configurando el Arduino Nano 33 BLE Sense con Edge Impulse ):

  • Descargue el firmware Arduino Nano 33 BLE Sense – este es un paquete de firmware especial ( código fuente ) que contiene todo el código para recopilar rápidamente datos de sus sensores. Inicie el script flash para su plataforma para actualizar el firmware.
  • Inicie el demonio Edge Impulse para conectar su placa a Edge Impulse. Abra un terminal o símbolo del sistema y ejecute:
 $ npm install edge-impulse-cli -g
$ edge-impulse-daemon 
  • Su dispositivo ahora se muestra en el Estudio Edge Impulse en la pestaña Dispositivos , listo para que pueda recopilar algunos datos y construir un modelo.
  • Una vez que hayas terminado, puedes desplegar tu modelo nuevamente en el Arduino Nano 33 BLE Sense . Ya sea como un binario que incluye su modelo ML completo, o como una biblioteca Arduino que puede integrar en cualquier boceto.
Deploy to Arduino from Edge Impulse
Implementación en Arduino desde Edge Impulse
  • Su máquina de aprendizaje es su máquina modelo de aprendizaje ahora se ejecuta en la placa Arduino. ¡Abra el monitor en serie y ejecute `AT + RUNIMPULSE` para comenzar a clasificar datos del mundo real!
Keyword spotting on the Arduino Nano 33 BLE Sense
Detección de palabras clave en el Arduino Nano 33 BLE Sense

Se integra con su favorito Arino plataforma

Hemos lanzado el Arduino Nano 33 BLE Sense , pero también puedes integrar Edge Impulse con tu plataforma Arduino favorita. Puede recopilar fácilmente datos de cualquier sensor y placa de desarrollo utilizando el Reenviador de datos . Esta es una pequeña aplicación que lee datos en serie y los envía a Edge Impulse. Todo lo que necesita es unas pocas líneas de código en su boceto ( aquí hay un ejemplo ).

Después de construir un modelo, puede exportarlo fácilmente como una biblioteca Arduino. Esta biblioteca se ejecutará en cualquier plataforma Arduino basada en Arm, incluida la familia Arduino MKR o Arduino Nano 33 IoT, siempre que tenga suficiente RAM para ejecutar su modelo. Ahora puede incluir su modelo ML en cualquier boceto de Arduino con solo unas pocas líneas de código. Después de agregar la biblioteca al IDE de Arduino, puede encontrar un ejemplo sobre cómo integrar el modelo en Archivos> Ejemplos> Su proyecto – Edge Impulse> static_buffer .

Para ejecutar sus modelos de la manera más rápida y eficiente posible, aprovechamos automáticamente las capacidades de hardware de su placa Arduino, por ejemplo, las extensiones de procesamiento de señal disponibles en el Arduino Nano BLE Sense basado en Arm Cortex-M4 o el Arm Cortex más potente. M7 basado en Arduino Portenta H7. También aprovechamos los núcleos de red neuronal optimizados que Arm proporciona en CMSIS-NN.

Un camino hacia la producción

Esta versión es el primer paso en una colaboración realmente emocionante. Creemos que muchas aplicaciones integradas pueden beneficiarse de ML hoy, ya sea para mantenimiento predictivo (‘ esta máquina está comenzando a comportarse de manera anormal ‘), para ayudar con la seguridad del trabajador (‘ caída detectada ‘), o en atención médica (‘ detectó signos tempranos de una posible infección ‘). Usando Edge Impulse con la familia Arduino MKR, ya puede implementar rápidamente aplicaciones simples basadas en ML combinadas con LoRa , NB-IoT celular o WiFi conectividad. En los próximos meses también agregaremos integraciones para el Arduino Portenta H7 en Edge Impulse, haciendo posible aplicaciones industriales de mayor rendimiento.

En una nota relacionada: si tiene ideas sobre cómo TinyML puede ayudar a ralentizar o detectar el virus COVID-19, únase al UNDP COVID-19 Detect and Protect Challenge . Para obtener inspiración, consulte la publicación del blog de Kartik Thakore sobre detección de tos con el Arduino Nano 33 BLE Sense y Edge Impulse.

¡No podemos esperar a ver qué construirás!

Jan Jongboom es el CTO y cofundador de Edge Impulse. Construyó sus primeros proyectos de IoT utilizando el kit de inicio Arduino.

Dominic Pajak es Vicepresidente de Desarrollo de Negocios en Arduino .

Puede seguir cualquier respuesta a esta entrada a través del feed RSS 2.0 .
Puede dejar una respuesta o trackback desde su propio sitio.

Fuente:

Edge Impulse makes TinyML available to millions of Arduino developers

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

0
    0
    Tu Carrito
    Tu carrito esta vacíoVolver a la tienda
    Enviar Whatsapp
    Hola 👋
    ¿En qué podemos ayudarte?