← Ultimi articoli
🤖 machine learning

Neural Network Training with Approximate Logarithmic Computations

Questo articolo propone uno schema di addestramento e inferenza di una rete neurale profonda end-to-end utilizzando computazioni con sistema numerico logaritmico approssimato con aritmetica a virgola fissa, dimostrando che l'elaborazione in dominio logaritmico a 16 bit raggiunge un'accuratezza di classificazione entro circa l'1% dei baseline a virgola mobile pur eliminando la necessità di moltiplicatori hardware.

Autori originali: Arnab Sanyal, Peter A. Beerel, Keith M. Chugg

Pubblicato 2019-10-22
📖 4 min di lettura☕ Lettura da pausa caffè

Autori originali: Arnab Sanyal, Peter A. Beerel, Keith M. Chugg

✨ Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo

Nel mondo moderno, i computer sono diventati straordinariamente bravi nel riconoscere gli schemi, dall'identificare un gatto in una fotografia al comprendere le parole pronunciate. Questa capacità deriva da un tipo di software chiamato rete neurale, che è progettata per imitare il modo in cui il cervello umano elabora le informazioni collegando tra loro molte unità di elaborazione semplici. Per rendere queste reti intelligenti, devono essere addestrate utilizzando enormi quantità di dati, un processo che richiede al computer di eseguire miliardi di calcoli complessi. Tradizionalmente, questi calcoli si basano pesantemente sulla moltiplicazione, un'operazione matematicamente lineare ma che richiede energia significativa e hardware specializzato per essere eseguita rapidamente. Mentre cerchiamo di far girare questi sistemi intelligenti su dispositivi più piccoli e alimentati a batteria come smartphone o sensori, l'elevata richiesta di moltiplicazione diventa un collo di bottiglia, esaurendo la potenza e rallentando il processo di apprendimento.

Un team di ricercatori dell'Università della California Meridionale ha proposto un modo diverso per gestire questi calcoli, un modo che potrebbe rendere l'addestramento di queste reti molto più efficiente. Invece di eseguire la moltiplicazione standard richiesta dai metodi tradizionali, suggeriscono di convertire tutti i numeri in un formato logaritmico. In questo sistema, il compito difficile di moltiplicare due numeri è sostituito dal compito molto più semplice di sommarli tra loro. Sebbene questa conversione sembri promettente, introduce una nuova sfida: sommare numeri in questo formato logaritmico non è semplice come l'addizione standard e solitamente richiede tabelle di consultazione complesse o approssimazioni per funzionare correttamente. I ricercatori si sono posti l'obiettivo di vedere se potessero semplificare ulteriormente queste addizioni, utilizzando approssimazioni grossolane che siano facili da costruire per l'hardware, senza rovinare l'accuratezza del risultato finale.

I ricercatori hanno sviluppato un sistema completo in cui l'intero processo di addestramento e test di una rete neurale avviene all'interno di questo mondo logaritmico. Hanno sostituito i passaggi di moltiplicazione standard con l'addizione e hanno gestito le parti difficili dell'addizione logaritmica utilizzando due scorciatoie specifiche. Una scorciatoia utilizza una piccola tabella di valori precalcolati, simile a un foglio di riepilogo, mentre l'altra utilizza una semplice tecnica di bit-shifting, che è un modo veloce per i computer di moltiplicare per potenze di due. Per testare la loro idea, hanno costruito una simulazione digitale di una rete neurale e l'hanno addestrata su diversi dataset di immagini ben noti, inclusi disegni di cifre scritte a mano e capi d'abbigliamento. Hanno confrontato il loro nuovo metodo logaritmico con il metodo standard a virgola mobile ad alta precisione attualmente utilizzato nella maggior parte dei computer potenti.

I risultati sono stati sorprendentemente incoraggianti. Quando i ricercatori hanno utilizzato una rappresentazione a 16 bit per i loro numeri, il metodo logaritmico ha raggiunto un'accuratezza di classificazione che era entro circa l'uno percento del metodo a virgola mobile standard. Ciò significa che, nonostante l'uso di matematica semplificata e approssimazioni, la rete ha imparato a riconoscere le immagini quasi altrettanto bene del sistema tradizionale. Hanno scoperto che anche con una tabella di consultazione molto piccola contenente solo venti voci, il sistema funzionava bene e, in molti casi, la semplice scorciatoia del bit-shifting era sufficiente per mantenere un'alta accuratezza. Lo studio suggerisce che per molti compiti comuni, una rappresentazione a virgola fissa a 16 bit nel dominio logaritmico è sufficiente per avvicinarsi alle prestazioni di calcoli a virgola mobile molto più complessi.

Questo lavoro dimostra che è possibile addestrare reti neurali profonde senza fare affidamento su costosi hardware per la moltiplicazione, a condizione che le operazioni di addizione siano gestite con queste specifiche approssimazioni. I ricercatori hanno dimostrato che il degrado dell'accuratezza è minimo, suggerendo che i futi design hardware potrebbero potenzialmente eliminare del tutto i moltiplicatori per i compiti di addestramento e inferenza. Ciò porterebbe a dispositivi più piccoli, più veloci e più efficienti dal punto di vista energetico, capaci di apprendere e adattarsi direttamente sull'edge senza la necessità di inviare dati a un server di grandi dimensioni. Sebbene lo studio si sia concentrato su tipi specifici di reti e dataset, i risultati indicano una via percorribile per rendere l'intelligenza artificiale avanzata più accessibile e pratica per i dispositivi di uso quotidiano.

Sommerso dagli articoli nel tuo campo?

Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.

Prova Digest →