Angolo di Anderson

Le GPU potrebbero essere migliori, non solo più veloci, nell’addestramento di reti neurali profonde

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

I ricercatori della Polonia e del Giappone, che lavorano con Sony, hanno trovato prove che i sistemi di apprendimento automatico addestrati su GPU invece che su CPU possono contenere meno errori durante il processo di addestramento e produrre risultati superiori, contraddicendo la comprensione comune che le GPU eseguano semplicemente tali operazioni più velocemente, piuttosto che meglio.

La ricerca, intitolata Impatto dell’incertezza della GPU sull’addestramento di reti neurali profonde predittive, proviene dalla Facoltà di Psicologia e Scienze Cognitive dell’Università Adam Mickiewicz e due università giapponesi, insieme ai Laboratori di Informatica di Sony.

Lo studio suggerisce che le ‘incertezze’ che le reti neurali profonde presentano di fronte a varie configurazioni hardware e software favoriscono le unità di elaborazione grafica più costose (e sempre più rare) e hanno trovato nei test che una rete neurale profonda addestrata esclusivamente su CPU ha prodotto tassi di errore più alti nel corso dello stesso numero di epoche (il numero di volte che il sistema rielabora i dati di addestramento nel corso di una sessione).

In questo esempio supplementare del documento, vediamo (ultime due righe), una qualità di risultato simile ottenuta da una varietà di GPU, e (prima riga), i risultati inferiori ottenuti da una gamma di CPU altrimenti molto capaci. Fonte: https://arxiv.org/pdf/2109.01451.pdf

In questo esempio supplementare del documento, vediamo (ultime due righe), una qualità di risultato simile ottenuta da una varietà di GPU, e (prima riga), i risultati inferiori ottenuti da una gamma di CPU altrimenti molto capaci. Fonte: https://arxiv.org/pdf/2109.01451.pdf

Fenomeni strani

Questi risultati preliminari non si applicano uniformemente a tutti gli algoritmi di apprendimento automatico popolari e nel caso di architetture di autoencoder semplici, il fenomeno non si verifica.

Tuttavia, il lavoro suggerisce una possibile ‘velocità di fuga’ per l’efficacia dell’addestramento in reti neurali complesse, dove coprire le stesse operazioni a velocità inferiore e tempi di addestramento più lunghi non ottiene la parità di prestazioni che ci si aspetterebbe da routine di iterazione matematica.

I ricercatori suggeriscono che questa disparità di prestazioni potrebbe essere particolare di certi tipi di reti neurali e che gli aspetti indeterminati dell’elaborazione specifica della GPU, frequentemente visti come un ostacolo da superare, potrebbero non solo fornire notevoli vantaggi, ma potrebbero essere anche intenzionalmente incorporati in sistemi successivi. Il documento suggerisce inoltre che i risultati potrebbero offrire approfondite conoscenze sulle funzioni computazionali del cervello.

Identificare le peculiarità che aumentano l’efficienza e la qualità dei risultati in questo modo su GPU tiene il potenziale per ottenere una conoscenza più approfondita delle architetture di intelligenza artificiale ‘scatole nere’ e anche per migliorare le prestazioni della CPU – anche se attualmente le cause sottostanti sono elusive.

Autoencoder Vs. PredNet

Nello studio delle anomalie, i ricercatori hanno utilizzato un autoencoder di base e anche la rete neurale predittiva di Harvard PredNet, ricerca del 2016 progettata per esplorare e tentare di replicare il comportamento della corteccia cerebrale umana.

Entrambi i sistemi sono reti neurali profonde progettate per sintetizzare immagini adeguate attraverso l’apprendimento non supervisionato (con dati dai quali sono stati omessi i label), sebbene l’autoencoder trattasse linearmente un’immagine per batch, che avrebbe poi prodotto un output come l’immagine successiva in una pipeline ricorrente. L’autoencoder è stato addestrato sul database di scrittura MNIST.

L'autoencoder nei test dei ricercatori è stato addestrato sul database MNIST, che comprende 60.000 immagini di addestramento a 28x28 pixel, anti-aliasate per l'induzione in scala di grigi, nonché 10.000 immagini di test.

L’autoencoder nei test dei ricercatori è stato addestrato sul database MNIST, che comprende 60.000 immagini di addestramento a 28×28 pixel, anti-aliasate per l’induzione in scala di grigi, nonché 10.000 immagini di test.

Al contrario, PredNet valuta input video complessi e, nel caso di questa ricerca, è stato addestrato sul set di dati FPSI, che presenta ampie riprese video indossabili di una giornata a Disney World, Orlando, Florida (Disney era uno degli associati di ricerca nel 2012).

Sequenze di immagini da FPSI, che mostrano viste in prima persona di una giornata a Disney World.

Sequenze di immagini da FPSI, che mostrano viste in prima persona di una giornata a Disney World.

I due sistemi sono molto diversi in termini di complessità. L’autoencoder è progettato per ricostruire immagini piuttosto che prevedere valori di destinazione. Al contrario, PredNet presenta quattro livelli, ciascuno dei quali consiste di neuroni di rappresentazione che utilizzano la memoria a lungo termine convoluzionale (LSTM).

I livelli producono previsioni contestuali che vengono poi confrontate con un target per produrre un termine di errore che si propaga attraverso la rete. Entrambi i modelli utilizzano l’apprendimento non supervisionato.

L'architettura lineare semplice dell'autoencoder e la rete più labirintica e ricorsiva di PredNet.

L’architettura lineare semplice dell’autoencoder e la rete più labirintica e ricorsiva di PredNet.

Entrambi i sistemi sono stati testati su una gamma di configurazioni hardware e software, tra cui CPU senza GPU (Intel i5-4590, i7-6800K, i5-7600K o AMD Ryzen-5-3600) e CPU con GPU (Intel i5-7600K + NVIDIA GTX-750Ti, i5-7600K + GTX-970, i7-6700K + GTX-1080, i7-7700K + GTX-1080Ti, i7-9700 + RTX-2080Ti, i5-7600K + RTX-2060 super, AMD Ryzen-5-3600 + RTX-2070 super o i5-9400 + Titan-RTX).

Il visualizzatore di processi interattivo htop è stato utilizzato per assicurarsi che tutto l’addestramento si verificasse su un singolo thread (su un Intel i7-6800K), su quattro thread (su un Intel i5-4590 e i5-7600K) o sei thread (su un AMD Ryzen-5-3600).

Punti di sella

Sull’autoencoder, la differenza media su tutte le configurazioni, con e senza cuDNN, non è stata significativa. Per PredNet, i risultati sono stati più sorprendenti, con differenze notevoli nella valutazione della perdita e della qualità tra l’addestramento su CPU e GPU.

I risultati di perdita medi per l'addestramento di PredNet su quattro CPU e otto GPU, con la rete addestrata su 5000 frame video in 250 batch, con la perdita media per gli ultimi 1000 frame (50 batch) rappresentata. cuDNN è stato disattivato.

I risultati di perdita medi per l’addestramento di PredNet su quattro CPU e otto GPU, con la rete addestrata su 5000 frame video in 250 batch, con la perdita media per gli ultimi 1000 frame (50 batch) rappresentata. cuDNN è stato disattivato.

I ricercatori concludono che ‘Sebbene il meccanismo non sia chiaro, l’hardware della GPU sembra avere la capacità di avanzare l’addestramento delle reti neurali profonde.’

I risultati indicano che le GPU potrebbero essere migliori nell’evitare i punti di sella – le aree in una discesa del gradiente che descrivono il fondo di una pendenza.

Il nadir delle pendenze in una discesa del gradiente è il 'punto di sella', chiamato per ovvi motivi. Fonte: https://www.pinterest.com.au/pin/436849232581124086/

Il nadir delle pendenze in una discesa del gradiente è il ‘punto di sella’, chiamato per ovvi motivi. Fonte: https://www.pinterest.com.au/pin/436849232581124086/

I punti di sella, sebbene siano un ostacolo, sono stati in gran parte liquidati come facilmente superabili nel pensiero recente sull’ottimizzazione della discesa del gradiente stocastico (SGD), ma il nuovo documento suggerisce non solo che le GPU potrebbero essere dotate in modo unico per evitarli, ma che l’influenza dei punti di sella dovrebbe forse essere riesaminata.

Scrittore di apprendimento automatico, specialista nel dominio della sintesi di immagini umane. Ex capo del contenuto di ricerca presso Metaphysic.ai, fino alla sua dissoluzione in DNEG's Brahma.ai.
Portfolio site: martinanderson.ai
Contact: martin@martinanderson.ai