Quali sono le sfide legate allo sviluppo di modelli di machine learning per i nostri dispositivi? Come possono diventare più utili con l’intelligenza artificiale? Risponde Alessandro Grant

Ryan Daws (@Gadget_Ry) ha incontrato Alessandro Grande, responsabile del prodotto presso Edge Impulse, per discutere le questioni critiche relative allo sviluppo di modelli di machine learning per dispositivi edge con risorse limitate e come superarle.

Ecco la sua intervista su quali sono alcune delle sfide legate allo sviluppo di modelli di machine learning per i dispositivi Edge.

L’obiettivo è rendere i dispositivi puiù utili grazie all’intelligenza artificiale.

“La cosa più importante che stiamo sbloccando è davvero la capacità di questi dispositivi di diventare più utili. Penso che tutti abbiamo a che fare con i dispositivi ogni giorno. E alcuni di questi dispositivi sono difficili da usare, complicati, frustranti, davvero stupidi in qualche modo. E mi piacerebbe vedere un mondo in cui i dispositivi di cui disponiamo, abbiamo a che fare con meno dispositivi, prima di tutto. E i dispositivi con cui abbiamo a che fare in realtà ci sono stati più utili. Quindi, nel caso di un termometro piuttosto che darci, solo, la temperatura, per esempio. Come se stessi pensando a un termometro, non voglio solo sapere qual è la mia temperatura. Voglio sapere se sono davvero malato o no.  E se sto impostando una sveglia, non voglio essere svegliato semplicemente quando ho impostato la sveglia. Mi piacerebbe davvero che la sveglia fosse intelligente e magari avere un intervallo di tempo in cui posso essere svegliato. E il sistema dovrebbe decidere o dovrebbe, in base alla sua capacità di rilevare se sono in sonno leggero, per esempio, essere in grado di svegliarmi quando sono in sonno leggero, non quando sono in sonno profondo dormire, giusto, entro quel lasso di tempo. Quindi cose del genere, penso, potrebbero davvero migliorare la nostra vita quotidiana. E sai, si tratta solo di vite in generale. Poi ci sono tutte le vite dei lavoratori. E in un contesto medico ci sono anche molti miglioramenti che potrebbero essere fatti per il monitoraggio dei pazienti.

“Stiamo vedendo molte aziende lottare con il set di dati. Quindi la prima cosa che tutte le aziende devono capire è davvero quali dati sono sufficienti, quali dati dovrebbero raccogliere, quali dati da quali sensori dovrebbero raccogliere i dati. E questa è una grande lotta. E la ragione di questa difficoltà è che molte aziende che costruiscono dispositivi edge non hanno molta familiarità con l’apprendimento automatico. Quindi questo arriva con la seconda lotta o la seconda sfida. Ed è davvero talento o competenza, in effetti. Stiamo vedendo molte aziende essere effettivamente esperte di IoT o embedded, ma non avere molta familiarità con il mondo dei dati. E riunire questi due mondi è la terza sfida, in realtà, quella di far comunicare tra loro i presidi e di essere in grado di condividere conoscenze e lavorare verso gli stessi obiettivi.

E quindi come si ottimizzano i modelli per prestazioni sul dispositivo, ingombro di memoria e latenza? Arriva, direi, è un approccio almeno in tre fasi. Quindi la prima cosa a cui devi pensare è davvero, qual è il mio, tornando al problema dei dati, qual è l’insieme minimo di punti dati o l’insieme minimo di sensori da cui posso raccogliere dati che mi darà il giusto output che Sto cercando, vero? Quindi, ad esempio, se sto cercando di rilevare la rottura di un vetro, giusto, mi serve una telecamera o è sufficiente avere un microfono, giusto? E se è sufficiente avere un microfono, probabilmente richiederà meno calcoli rispetto a quando provo a calcolare le immagini. Quindi questo è il primo modo di pensare, la prima cosa a cui le aziende devono pensare.

Il secondo riguarda in realtà quale modello di architettura scelgo, giusto? E scelgo una combinazione di architetture di modelli? Scelgo l’estrazione delle caratteristiche, eseguendo l’estrazione delle caratteristiche prima di realizzare il modello, o lascio semplicemente che sia il modello a eseguire l’estrazione delle caratteristiche da solo? In molti casi, in realtà, l’estrazione delle funzionalità, l’esecuzione dell’estrazione delle funzionalità come passaggio separato, riduce l’impronta del modello e l’efficienza del modello in esecuzione sul dispositivo.

Il terzo punto riguarda in realtà le tecniche per migliorare le dimensioni del modello o ridurne l’impronta. La quantizzazione, ad esempio, è una grande tecnica in cui è possibile quantizzare la maggior parte dei pesi e delle funzioni di attivazione su 8 bit invece di utilizzare i 16 o 32 bit tipici della matematica in un chip. Ciò riduce notevolmente l’ingombro e migliora anche la velocità con cui avviene il calcolo.

Quindi quali sono alcuni dei compromessi che devi considerare quando metti a punto i tuoi modelli?

Compromessi, è una prospettiva interessante. Penso che la questione sia, ancora una volta, che tipo di sensori ho, giusto? Ad esempio, che tipo di sensori ho a disposizione, ma anche che tipo di sensori scelgo di utilizzare, giusto? Questo è un aspetto. E poi il prossimo sarebbe: qual è l’hardware minimo utilizzabile su cui posso distribuire questo modello? Ho bisogno di un hardware più grande? Perché forse ho, ad esempio, la connettività di cui devo occuparmi, giusto? Quindi ho bisogno di più memoria perché in realtà ho bisogno di eseguire uno stack software più grande, nel qual caso potrei usare la memoria, sai, come parte di quella memoria per il modello. Quindi tutto dipende dal tipo di hardware che ho a disposizione e dal tipo di sensori che utilizzo per costruire quel modello e quindi interpretare il mondo attorno al dispositivo stesso. Grande.

E quindi in che modo Edge Impulse garantisce la precisione e l’affidabilità dei suoi modelli?

Edge Impulse consente agli sviluppatori di farlo da soli, in realtà. Quindi, siamo uno strumento di ingegneria. Mi piace sempre dire che non siamo una soluzione miracolosa. Il ML, in generale, o l’intelligenza artificiale non è una soluzione miracolosa. Stiamo fornendo uno strumento di progettazione che consente ai clienti di esaminare da soli i dati, esaminare il modello e verificare in modo efficace che il modello funzioni correttamente in base a determinati parametri, determinate metriche da noi fornite, metriche ML tipiche con cui gli ingegneri ML hanno familiarità . Nel caso di Edge Impulse, stiamo cercando di renderlo più semplice anche per le persone che non hanno familiarità con il mondo ML. Quindi stiamo cercando di rivolgerci sia al mondo esperto di intelligenza artificiale, giusto, alle persone che hanno esperienza con l’intelligenza artificiale e al machine learning, sia alle persone che non hanno esperienza, quindi ingegneri embedded, ingegneri hardware, ingegneri firmware, e consentendo loro di capire se il modello funzionerà in modo accurato sul dispositivo. E aggiungo solo un’ultima cosa. Stiamo cercando di ridurre davvero il ciclo in base al tempo necessario per implementare effettivamente quel modello scoprendo se le cose non funzioneranno correttamente direttamente sulla piattaforma stessa senza richiedere ai team di implementare i modelli. Perché sappiamo che una volta distribuito il modello, ci sono molti altri vincoli o complicazioni che derivano dal fatto che ora hai a che fare con un dispositivo hardware. Quindi stiamo cercando di aiutare davvero gli ingegneri a capire cosa c’è che non va, cosa non funziona nella piattaforma stessa in Edge Impulse prima di passare all’hardware.

Quindi, approfondendo il modo in cui lavori con sviluppatori e ingegneri, come ti integri con i flussi di lavoro e gli strumenti di machine learning esistenti?

Sì, quindi abbiamo un paio di modi per farlo. Prima di tutto, siamo agnostici nei confronti di qualsiasi fornitore di servizi cloud, quindi possiamo importare dati da qualsiasi fornitore di servizi cloud o da qualsiasi data like. Quindi non ci sono requisiti su quale infrastruttura dati disponi. Siamo completamente agnostici a questo. Pertanto, una volta ricevuti i dati, siamo in grado di eseguire modelli di machine learning o abilitare in modo efficace lo sviluppo di modelli di machine learning utilizzando tipicamente PyTorch o TensorFlow. E questo è familiare a tutti gli ingegneri del machine learning. Se un ingegnere di machine learning dispone già di una pipeline per lo sviluppo dei propri modelli al di fuori di Edge Impulse, può portare il proprio modello all’interno di Edge Impulse in una serie di modi tramite l’interfaccia utente o il nostro SDK Python, in modo efficace, per integrare direttamente le chiamate Python all’interno i propri taccuini Jupyter, per esempio. Il terzo modo in cui siamo in grado di integrarci con i loro flussi è attraverso la capacità efficace per loro di utilizzare la nostra metodologia di analisi, in modo efficace, all’interno del monitoraggio degli esperimenti. In questo modo possono eseguire, ad esempio, un’analisi del loro modello su un dispositivo hardware specifico. Siamo quindi in grado di fornire loro parametri prestazionali che possono poi utilizzare all’interno della propria infrastruttura di monitoraggio degli esperimenti, ad esempio flusso ML o pesi e bias, e possono utilizzare tali parametri per analizzare in modo efficace quale modello è più adatto al dispositivo hardware che stanno prendendo di mira. Grande. Quindi ci sono progetti sicuramente interessanti su cui Edge Impulse ha lavorato? Sì, ce ne sono parecchi. In realtà sono davvero entusiasta di un paio di progetti nello spazio sanitario. Il motivo è che sono dispositivi indossabili che tutti, sai, la maggior parte delle persone possono comprare subito, e danno degli spunti davvero interessanti sulle nostre vite, giusto? Quindi uno di questi è Oura Ring. È un anello che ci permette di capire in modo efficace se hai dormito bene e qual è il tuo livello di attività oggi, giusto? Quali sono i tuoi livelli di attività oggi? Come ti senti oggi? E in un certo senso ti dà un’idea di quale sia effettivamente il tuo benessere. E questo è davvero interessante. Ha venduto più di un miliardo, un milione di pezzi. Ed è qualcosa che tutti possono sperimentare e tutti possono avere un’idea della reale potenza dell’Edge AI. Un’altra azienda davvero interessante è un’azienda con cui lavoriamo, NoLabs, che ha sviluppato un sistema di monitoraggio del glucosio non invasivo che è rivoluzionario nel senso che consente ai clienti, agli utenti, di monitorare i livelli di glucosio, il diabete, giusto, pazienti diabetici, senza punture sul dito o qualsiasi altro monitoraggio intrusivo. Quindi consente davvero una nuova generazione di monitoraggio dei livelli di glucosio. E ne sono davvero appassionato perché penso che migliori davvero la vita. Di grande impatto, sicuramente. E poi, dal punto di vista industriale, penso che sia un altro grande spazio in cui stiamo vedendo molta trazione. È interessante notare molti casi d’uso relativi all’ispezione visiva. Quindi l’idea che c’è in realtà è cercare di capire se ci sono anomalie nelle linee di produzione, per esempio. Sai, ho una linea di produzione con alcune cose che dovrebbero essere generate. Vedo qualcosa di anomalo? Posso segnalare rapidamente le anomalie al personale in modo che possa andare a monitorare la linea di produzione effettiva o anche, in alcuni casi, automatizzare la linea di produzione per spostare effettivamente gli articoli che necessitano di ispezione o riparazione. Quindi è davvero interessante perché consente davvero di aumentare i flussi che abbiamo da un po’ di tempo ormai, ma in realtà migliora l’efficienza su tutta la linea.

Qui trovate l’intervista in inglese: https://www.youtube.com/watch?v=aBhCvamewWs&t=3s

e opinioni espresse in questo articolo sono dell’autore.

Leggi le ultime news su: https://w3b.today

Può interessarti anche:  Il futuro dell’intelligenza artificiale secondo Mustafa Suleiman

Seguici su Telegram https://t.me/presskit

Seguici su Facebook https://www.facebook.com/presskit.it

Copiate l’articolo, se volete, vi chiediamo solo di mettere un link al pezzo originale.