La possibilità di addestrare un modello di intelligenza artificiale su smartphone e sensori
Una nuova tecnica ha consentito ai modelli di intelligenza artificiale di apprendere dai dati derivati dai dispositivi. Tuttavia, come molti altri modelli, presenta una serie di sfide
Uno dei primi lavori sostanziali sull’intelligenza artificiale (AI) è stato condotto durante la metà del 20° secolo dallo scienziato informatico britannico Alan Mathison Turing . Nel 1935, Turing ha inventato una macchina informatica astratta – uno scanner di memoria illimitato che si muove avanti e indietro – simbolicamente. Questo concetto di programma memorizzato è noto come macchina di Turing , con la possibilità che la macchina modifichi e migliori il proprio programma. In sostanza, tutti i computer moderni oggi sono macchine di Turing universali.
Una serie di tali sviluppi storici ha alimentato i modelli di intelligenza artificiale per creare macchine in grado di replicare l’intelligenza umana in tempo reale. Tuttavia, non è stata raggiunta una vera IA che funzioni come un essere umano, almeno non ancora. Questo non ci esclude dall’adozione di algoritmi di intelligenza artificiale per raggiungere i nostri obiettivi predefiniti. I modelli di intelligenza artificiale sono adatti per risolvere problemi complessi, fornendo maggiore efficienza e precisione rispetto ai metodi più semplici. Ma una nuova tecnica ha consentito ai modelli di intelligenza artificiale di apprendere dai dati derivati dai dispositivi stessi. Tuttavia, come molti altri modelli, ha le sue sfide.
In poche parole, un modello di intelligenza artificiale è definito come uno strumento o un algoritmo basato su determinati set di dati per arrivare a una decisione, il tutto senza la necessità di interferenze umane nel processo decisionale. Ma un modello di apprendimento automatico addestrato su un dispositivo perimetrale intelligente consente al modello di adattarsi ai nuovi dati e fare previsioni migliori. Ad esempio, un modello addestrato su una tastiera intelligente potrebbe consentire al dispositivo di apprendere gradualmente dalla scrittura dell’utente. Tuttavia, il processo di addestramento richiede grandi quantità di memoria, utilizzando potenti computer in un data center, anche prima che il modello venga distribuito su un dispositivo. Questo diventa costoso, oltre a sollevare problemi di privacy.
L’indebolimento del settore fotografico fa di Fujifilm il fulcro del settore sanitario
D’altra parte, i microcontrollori sono computer in miniatura, che eseguono semplici comandi, la base per miliardi di dispositivi connessi, dai sensori nelle automobili ai dispositivi Internet-of-things (IoT) . Tuttavia, i microcontrollori economici e a bassa potenza hanno una memoria estremamente limitata o nessun sistema operativo, il che rende difficile addestrare modelli di intelligenza artificiale su ” dispositivi periferici ” che funzionano indipendentemente dalle risorse di elaborazione centrali.
Per affrontare il problema, i ricercatori del MIT e il MIT-IBM Watson AI Lab hanno sviluppato un nuovo metodo che consente l’addestramento sul dispositivo, che utilizza meno di un quarto di megabyte di memoria. Ciò significa che può essere utilizzato per addestrare un modello ML su un microcontrollore in pochi minuti.
Nel documento intitolato On-Device Training Under 256KB Memory , il team ha sviluppato algoritmi e framework intelligenti per ridurre le dimensioni di calcolo richieste per addestrare un modello. Ciò rende il processo più veloce e più efficiente in termini di memoria. In genere, le soluzioni di formazione progettate in dispositivi connessi utilizzano più di 500 megabyte di memoria, superando la capacità di 256 kilobyte della maggior parte dei microcontrollori.
L’autore senior e membro del MIT-IBM Watson AI Lab Song Han ha descritto l’innovazione, affermando: “Il nostro studio consente ai dispositivi IoT non solo di eseguire l’inferenza, ma anche di aggiornare continuamente i modelli di intelligenza artificiale in base ai dati appena raccolti, aprendo la strada a una continua on- apprendimento del dispositivo. Il basso utilizzo delle risorse rende il deep learning più accessibile e può avere una portata più ampia, soprattutto per i dispositivi edge a basso consumo”.
Confronto con le reti neurali
Uno dei tipi più comuni di modelli di apprendimento automatico sono le reti neurali che sono vagamente basate sul cervello umano. Questi modelli hanno strati di nodi o neuroni interconnessi che utilizzano le informazioni per svolgere attività, come identificare le persone nelle immagini.
Affinché il modello possa apprendere il compito, deve prima essere addestrato, il che implica mostrargli milioni di esempi simili. Potrebbe subire centinaia di aggiornamenti man mano che apprende, con le attivazioni intermedie memorizzate in ogni round. L’attivazione in una rete neurale è il risultato intermedio del livello intermedio. “Questo perché potrebbero esserci milioni di pesi e attivazioni, l’allenamento di un modello richiede molta più memoria rispetto all’esecuzione di un modello pre-addestrato”, ha detto Han.
Il team di Han ha utilizzato due soluzioni algoritmiche per rendere il processo di addestramento meno dispendioso in termini di memoria e più efficiente. “Aggiornare l’intero modello è molto costoso perché ci sono molte attivazioni, quindi le persone tendono ad aggiornare solo l’ultimo livello, ma come puoi immaginare, questo danneggia la precisione. Per il nostro metodo, aggiorniamo selettivamente quei pesi importanti e ci assicuriamo che l’accuratezza sia completamente preservata”, ha aggiunto.
La seconda soluzione prevede la semplificazione dei pesi e dell’allenamento quantizzato, che in genere sono a 32 bit. Attraverso il processo di quantizzazione, un algoritmo arrotonda i pesi a otto bit, riducendo la quantità di memoria sia per l’inferenza che per l’allenamento. Successivamente viene applicato con la tecnica del ridimensionamento consapevole della quantizzazione (QAS) per evitare qualsiasi calo di precisione che potrebbe derivare dall’allenamento.
Inoltre, un sistema chiamato ” minuscolo motore di addestramento” esegue queste innovazioni algoritmiche su un semplice microcontrollore privo di un sistema operativo. Questo sistema modifica l’ordine del processo di addestramento in modo che venga svolto più lavoro nella fase di compilazione prima che il modello venga distribuito sul dispositivo perimetrale.
Un’accelerazione riuscita
Per testare il framework, i ricercatori hanno addestrato un modello di visione artificiale per rilevare le persone nelle immagini. Dopo 10 minuti di formazione, ha completato l’attività con successo. I ricercatori affermano che il metodo è stato in grado di addestrare un modello 20 volte più velocemente di qualsiasi altro approccio. L’ottimizzazione ha richiesto solo 157 kilobyte di memoria per addestrare un modello ML su un microcontrollore. Altre tecniche, progettate per l’allenamento leggero, richiederebbero almeno una memoria compresa tra 300 e 600 megabyte.
Dopo aver dimostrato il successo della tecnica per i modelli di visione artificiale, i ricercatori desiderano applicare la tecnica a modelli linguistici come i dati di serie temporali. Inoltre, sperano di ridurre le dimensioni dei modelli più grandi, senza compromettere la precisione, applicando ciò che hanno appreso.
Pertanto, la nuova tecnica consente ai modelli di intelligenza artificiale di apprendere continuamente dai dati su dispositivi edge intelligenti come sensori e smartphone, riducendo al minimo i costi energetici e i rischi per la privacy. Inoltre, il modello potrebbe anche aiutare a ridurre l’impronta di carbonio causata dalla formazione di modelli ML su larga scala. Poiché il modello apprende continuamente dai dati sul dispositivo, il nuovo benchmark porterà sicuramente progressi nel prossimo futuro.