Propuesta de módulo de taller

Propuesta de módulo de taller

de Pablo Monzon -
Número de respuestas: 0

Titulo: Aprendizaje automático sobre Arduino

Esta propuesta de módulo de taller consiste en introducir al estudiante en como implementar

modelos de aprendizaje automático en microcontroladores con memoria y recursos de cálculo

limitados. En concreto se dispone del Arduino Nano 33 BLE board [1] que contiene:

- Microcontroller nRF52840 a 32-bit ARM® Cortex®-M4 CPU ,64 MHz

- CPU Flash Memory 1MB

- SRAM 256KB

- IMU LSM9DS1

- Microphone MP34DT05

- Gesture, light, proximity APDS9960

- Barometric pressure LPS22HB

- Temperature, humidity HTS221


La tecnología Tiny Machine Learning (TinyML) [2][3] son técnicas de aprendizaje automático que

integran diferentes algoritmos para implementar aplicaciones en dispositivos reducidos de bajo

consumo de energía como microcontroladores. Dicho de otro modo Tiny Machine Learning es el

conjunto de técnicas que permiten llevar la inteligencia artificial a pequeños dispositivos de bajo

costo y bajo consumo para procesar información y tomar decisiones en el mismo lugar donde se

generan los datos.

Siguiendo esta linea, en este trabajo se propone realizar un sistema de identificación de fruta

(manzana, banana o naranja) mediante un modelo de red neuronal embebida en el Arduino Nano

BLE33 board.

Se aprenderá a manejar el IDE de Arduino y las librerías ArduinoBLE library y TensorFlow Lite

Micro Library, así como las herramientas de Edge Impulse [4] y Neuton [5]. También Jupyter

Notebook y Colab.

Se recomienda fuertemente leer las referencias [7] [8] y [9] por mayor información de los

conceptos que se aprenderán durante el desarrollo del módulo de taller y las tareas a realizar.

Como producto final se deberá entregar el código fuente, y la caracterización de la Accuracy,

Inference Time y Total memory footprint.


Contacto: Leonardo Barboni (lbarboni@fing.edu.uy)

Cantidad de créditos: 4

Se podrá trabajar de manera individual o en grupo.

Referencias:

[1] https://store-usa.arduino.cc/products/arduino-nano-33-ble-sense

[2] https://www.tinyml.org/

[3] Norah N. Alajlan and Dina M. Ibrahim "TinyML: Enabling of Inference Deep Learning Models on Ultra-Low-Power IoT Edge Devices for AI Applications" Micromachines 2022, 13(6), 851;

https://doi.org/10.3390/mi13060851

[4] https://docs.arduino.cc/tutorials/nano-33-ble-sense/edge-impulse

[5] https://neuton.ai/?utm_source=TowardsDataScience&utm_medium=Post&utm_campaign=UltraTinyML

[6] https://docs.arduino.cc/tutorials/nano-33-ble-sense/rgb-sensor

[7] https://iopscience.iop.org/article/10.1088/1757-899X/1084/1/012095/pdf

[8] https://blog.tensorflow.org/2019/11/fruit-identification-using-arduino-and-tensorflow.html

[9]https://community.element14.com/challenges-projects/project14/nano-rama/b/blog/posts/tinyml-on-arduino-nano-33-ble-sense---fruit-identification