EMB_85

EMBEDDED 85 • SETTEMBRE • 2022 36 HARDWARE | TINYML Implementazione di TinyML – un’introduzione alle librerie, alle piattaforme e ai flussi di lavoro (2a parte) Nel secondo articolo di questa serie verranno esaminati e spiegati i metodi utilizzati da TensorFlow Lite, Edge Impulse e Fraunhofer AIfES per facilitare l’addestramento e la distribuzione di un modello basato sull’intelligenza artificiale su un microcontrollore con risorse limitate. Mark Patrick Mouser Electronics I primi passi con TinyML possono risultare difficoltosi. Nell’articolo iniziale di questa serie, composta da tre arti- coli, è stata delineate l’evoluzione del concetto di appren- dimento automatico (machine learning) e la sua progres- siva diffusione nelle applicazioni industriali alla periferia (o ai margini) della rete (edge). Solitamente, il processo di selezione del modello di rete neurale più adatto, di ad- destramento del modello e di “messa a punto“ per la sua distribuzione (deployment) è complesso. Tuttavia, la sem- premaggiore disponibilità di risorse AI/ML espressamen- te ideate per applicazioni TinyML contribuisce a sempli- ficare questo processo. Nel secondo articolo di questa serie verranno esaminati e spiegati i metodi utilizzati da TensorFlow Lite, Edge Impulse e Fraunhofer AIfES per facilitare l’addestramento e la distribuzione di unmodello basato sull’intelligenza artificiale su un microcontrollore con risorse limitate. TinyML: come distribuire le applicazioni a bordo rete Inun’applicazione industriale dimonitoraggio delle vibra- zioni di un motore, uno sviluppatore inizierà il processo di progettazione acquisendo i dati provenienti dai sensori di vibrazione relativi a decine di motori differenti utiliz- zando solitamente un accelerometro. Ciascun motore do- vrebbe trovarsi in situazioni diverse per quanto concerne il verificarsi di potenziali guasti in modo da poter acquisi- re dati significativi. Analogamente, è necessario registra- re i dati relativi a un motore perfettamente funzionante. Il passo successivo è la scelta di un algoritmo adatto. L’al- goritmo, rappresentato essenzialmente da linee di codi- ce, può scoprire le regole che permettono di stabilire se le firme vibrazionali di un motore si discostano da quelle che indicano uno stato di funzionamento ottimale. Il team di sviluppo addestra l’algoritmo in modo che possa fare previsioni sulla base dei dati provenienti dal sensore sen- za comprendere la relazione e la complessità dei dati dei singoli sensori di vibrazione. L’algoritmo di apprendimen- to automatico generato diventa un modello del sistema e genera previsioni inerenti le condizioni operative di un motore. A questo punto è importante sottolineare il fatto che mentre un modello di apprendimento automatico è una risorsa utile, l’inferenza fa previsioni, stime e appros- simazioni sulla base dei dati di addestramento piuttosto che sulle risposte esatte. La crescente diffusione dell’inferenza ai bordi della rete è imputabile a diverse ragioni. Innanzitutto, come eviden- ziato nel primo articolo di questa serie, per effettuare il processo inferenziale non è necessario lo streaming dei dati su un server cloud. L’inferenza eseguita alla periferia della rete permette di eliminare i costi legati all’ampiez- za di banda e alla latenza. L’ulteriore vantaggio è rappre- sentato dal fatto che la privacy non rappresenta più un

RkJQdWJsaXNoZXIy Mzg4NjYz