Google AI presenta CHITA Un approccio basato sull’ottimizzazione per la potatura di reti neurali pre-addestrate su larga scala

Google AI presenta CHITA un'ottimizzazione per reti neurali pre-addestrate su larga scala.

I risultati delle reti neurali di oggi nei campi più diversi come il linguaggio, la matematica e la visione sono notevoli. Tuttavia, queste reti generalmente impiegano strutture elaborate che richiedono molte risorse per essere eseguite. Quando si lavora con risorse limitate, come quelle presenti nei dispositivi indossabili e negli smartphone, consegnare tali modelli agli utenti può essere impraticabile. La potatura delle reti pre-addestrate prevede l’eliminazione di parte dei loro pesi garantendo che la riduzione dell’utilità sia trascurabile per ridurre i costi di inferenza. Ogni peso in una tipica rete neurale specifica il collegamento tra due neuroni. Dopo la riduzione delle conseguenze, l’input passerà attraverso un sottoinsieme più gestibile di collegamenti, riducendo il tempo di elaborazione necessario.

Il framework CHITA (Combinatorial Hessian-free Iterative Thresholding Algorithm), sviluppato da un gruppo di ricercatori del MIT e di Google, è una strategia efficace basata sull’ottimizzazione per la potatura delle reti su larga scala. Questo metodo si basa su ricerche precedenti che approssimavano la funzione di perdita utilizzando una funzione quadratica locale nel secondo ordine dell’essianciana. A differenza di altri sforzi, sfruttano una semplice ma fondamentale intuizione che permette loro di risolvere il problema di ottimizzazione senza calcolare e memorizzare la matrice hessiana (da qui il nome “Hessian-free” nel nome CHITA) e affrontare in modo efficiente reti di grandi dimensioni.

Per ridurre ulteriormente la riformulazione della regressione, propongono un nuovo metodo che utilizza strategie di insiemi attivi, selezione migliorata della dimensione del passo e altre tecniche per accelerare la convergenza al supporto scelto. Rispetto alle tecniche di thresholding duro iterativo ampiamente utilizzate nella letteratura sull’apprendimento sparso, la metodologia suggerita produce guadagni consistenti. Il framework può rendere le reti sparsificate con fino a 4,2 milioni di parametri riducendole al 20%.

Di seguito è riportato un riassunto dei contributi:

Basandosi su approssimazioni quadratiche locali della funzione di perdita, i ricercatori presentano CHITA, un framework di ottimizzazione per la potatura delle reti.

Propongono una riformulazione della regressione sparsa limitata per eliminare il sovraccarico di memoria associato alla memorizzazione di una matrice hessiana ampia e densa.

CHITA si basa fortemente su un nuovo metodo basato su IHT per ottenere soluzioni di alta qualità per la regressione sparso. Sfruttando la struttura del problema, forniscono soluzioni per accelerare la convergenza e migliorare le prestazioni di potatura, come una nuova e efficace strategia di selezione della dimensione del passo e aggiornamenti rapidi ai pesi del supporto. Rispetto agli algoritmi standard di potatura delle reti, questo può migliorare le prestazioni fino a un fattore di mille.

Viene anche dimostrato il miglioramento delle prestazioni dei modelli e dei set di dati da parte dei ricercatori.

Una formulazione di potatura efficiente per il calcolo

Preservando solo alcuni dei pesi della rete originale, è possibile ottenere vari candidati di potatura. Lasciate che k rappresenti un insieme di parametri di pesi mantenuti dall’utente. Tra tutti i potenziali candidati di potatura (cioè sottoinsiemi di pesi con solo k pesi mantenuti), viene scelto il candidato con la perdita più piccola. Questa è una formulazione logica della potatura come problema di selezione del miglior sottoinsieme (BSS).

CHITA evita di calcolare esplicitamente la matrice hessiana utilizzando tutte le sue informazioni tramite una versione riformulata del problema di potatura (BSS con perdita quadratica). Ciò è reso possibile utilizzando il fatto che la matrice di informazioni Fisher empiriche è a basso rango. Questa nuova forma può essere considerata un problema di regressione lineare sparso, in cui i pesi dei neuroni nella rete rappresentano i coefficienti di regressione.

Algoritmi di ottimizzazione che scalano bene

Rispettando il requisito di sparso in cui non più di k dei coefficienti di regressione possono essere zero, CHITA trasforma la potatura in un problema di regressione lineare. I ricercatori stanno pensando di adattare la popolare tecnica di thresholding duro iterativo (IHT) per risolvere questo problema. Tutti i coefficienti di regressione che non sono nei primi k (cioè i k coefficienti con la magnitudine più grande) vengono azzerati dopo ogni aggiornamento nella discesa del gradiente di IHT. Nella maggior parte dei casi, IHT fornisce una risposta soddisfacente ottimizzando congiuntamente i pesi e esaminando iterativamente le possibili alternative di potatura.

In conclusione, i ricercatori hanno presentato CHITA, una formulazione di regressione vincolata unica, senza hessiana e tecniche di ottimizzazione combinatoria basate sulla potatura delle reti. Gli approcci a singolo stadio migliorano significativamente il tempo di esecuzione e l’utilizzo della memoria, ottenendo risultati paragonabili a quelli dei metodi precedenti. Inoltre, la strategia a più stadi può aumentare l’accuratezza del modello poiché si basa sulla metodologia a singolo stadio. Hanno inoltre dimostrato che è possibile ottenere reti sparse con un’accuratezza all’avanguardia aggiungendo le tecniche di potatura ai framework di potatura graduale preesistenti.