Scroll Top

Scalabilità e Potenza: i confini del Deep Learning

di Fabio Gnassi
intervista a Marco Canini

Come ormai noto, la recente ascesa dell’intelligenza artificiale nasce dalla convergenza di due fattori: l’enorme quantità di dati generati dalla vita digitale della società contemporanea, facilmente reperibili online, e il continuo progresso della potenza computazionale.

Se l’accumulo di dati è un fenomeno intuitivo, radicato nell’esperienza quotidiana, l’evoluzione delle capacità di calcolo segue invece logiche più complesse e difficili da cogliere, ma essenziali per comprendere a fondo la natura e i limiti di questo fenomeno.

 Il processo di Deep Learning si fonda su tre fattori: potenza computazionale, numero di parametri e dimensione del dataset. Potrebbe spiegarci che cosa sono e a cosa servono?

I modelli di deep learning si basano su un processo di addestramento iterativo, in cui le loro capacità migliorano gradualmente attraverso cicli ripetuti di aggiornamento. Nella fase iniziale, il modello viene avviato con parametri casuali, risultando inizialmente poco efficace. Successivamente, viene esposto a dati specifici, selezionati in base all’attività che deve svolgere. Questi dati sono accompagnati da descrizioni che fungono da “soluzioni”, aiutando il modello a comprendere e apprendere il compito da eseguire.

Chiaramente, per poter eseguire i calcoli richiesti dal processo di addestramento, più grande è il modello, e quindi maggiore è il numero di parametri, più elevato sarà il carico computazionale richiesto. Tuttavia, un numero maggiore di parametri consente di estrarre correlazioni più complesse e apprendere dettagli più sottili. Anche la dimensione del set di dati di addestramento è cruciale: dati più voluminosi migliorano la capacità di apprendimento del modello, aumentando l’accuratezza delle predizioni e la qualità complessiva.

In generale, possiamo affermare che nel deep learning, un incremento della potenza di calcolo, del numero di parametri e della quantità di dati porta a un miglioramento significativo delle prestazioni del modello.

Che cos’è la Legge di Moore e in che modo ha influenzato lo sviluppo e la scalabilità del Deep Learning?

La legge di Moore prende il nome da Gordon Moore, cofondatore e CEO di Intel, che osservò empiricamente come il numero di transistor nei circuiti digitali raddoppiasse approssimativamente ogni due anni. Da una semplice osservazione dei trend storici, emerse una legge che proiettava questa tendenza nel futuro, prevedendo che il miglioramento tecnologico avrebbe permesso all’industria dei semiconduttori di continuare a incrementare le prestazioni dei circuiti aumentando il numero di transistor.

Questa legge ha avuto un impatto significativo sullo sviluppo e la scalabilità del deep learning. Sebbene molti degli sviluppi iniziali nel campo del deep learning risalgano agli anni Settanta con le prime reti neurali, i recenti successi sono stati resi possibili grazie alla disponibilità di grandi quantità di dati e all’incremento della potenza computazionale. Questo aumento di potenza è stato possibile proprio grazie ai progressi tecnologici supportati dalla legge di Moore.

In passato, eseguire calcoli complessi era estremamente costoso, ma oggi, grazie alle GPU, si possono raggiungere livelli di potenza computazionale misurabili in teraflop (un teraflop corrisponde a mille miliardi di operazioni su numeri reali al secondo). Questo ha trasformato radicalmente il panorama moderno, permettendo elaborazioni che una volta erano impensabili.

Una soluzione al problema della scalabilità è il “Distributed Deep Learning”. Quali sono le sue caratteristiche?

Nonostante le previsioni descritte dalla legge di Moore, l’attuale crescita della tecnologia si basa principalmente sulla parallelizzazione dei calcoli su risorse estese, piuttosto che sull’incremento della velocità di calcolo su singoli processori . Tuttavia, uno dei trend che ha subito un rallentamento riguarda la crescita della capacità di memoria e della larghezza di banda per l’accesso alla memoria. Ad esempio, nelle GPU recenti, la quantità di memoria disponibile non sta crescendo allo stesso ritmo con cui cresce la potenza computazionale. Questo rappresenta un problema, poiché i modelli di deep learning richiedono un numero sempre maggiore di parametri per essere efficaci. Quando la memoria di una singola GPU non è più sufficiente, l’addestramento diventa distribuito, utilizzando molte GPU in parallelo per suddividere il carico computazionale.

Questo approccio fa parte del distributed deep learning, che affronta il problema della scalabilità distribuendo il carico computazionale su più GPU. In teoria, ciò consente una crescita lineare della capacità di calcolo e della velocità di addestramento con l’aumento del numero di GPU, riducendo proporzionalmente il tempo necessario per completare l’addestramento. Tuttavia, nella pratica, la scalabilità non è completamente lineare a causa di vari limiti tecnologici. Nonostante queste difficoltà, sono stati compiuti notevoli progressi per rendere il calcolo parallelo sempre più efficiente. A questo ha contribuito l’avvento dei modelli Transformer, utilizzati nei Large Language Models (LLM), che richiedono decine o centinaia di miliardi di parametri, per cui è diventato necessario utilizzare centinaia o migliaia di GPU in parallelo per l’addestramento. 

Sebbene ci siano stati grandi miglioramenti, la ricerca continua, coinvolgendo aziende, università e ricercatori di tutto il mondo per rendere queste procedure sempre più efficienti.

Recentemente sono stati pubblicati studi che evidenziano come lo sviluppo dell’intelligenza artificiale basata su reti neurali abbia raggiunto un livello tale da rendere sempre più complesso migliorare l’efficienza dei modelli. È davvero così?

Sì, è stato dimostrato che, in particolare per i LLM, esiste una forte correlazione tra la potenza computazionale, il numero di parametri e la dimensione dei dataset. L’aumento di questi fattori porta a un miglioramento della qualità dei modelli, ma in modo esponenziale. Ciò significa che per ottenere anche solo un incremento modesto della qualità, è necessario un aumento significativo di tutti questi fattori. Di conseguenza, migliorare l’efficienza dei modelli sta diventando sempre più complesso, poiché i guadagni marginali richiedono enormi investimenti in termini di potenza computazionale, parametri e dimensione dei dataset.

Attualmente, l’addestramento di modelli di grandi dimensioni può costare decine di milioni di dollari, limitando la possibilità di esplorare nuovi approcci o di migliorare significativamente le procedure esistenti. Spesso, si preferisce replicare ricette già collaudate piuttosto che sperimentare soluzioni innovative, data l’elevata complessità e i costi associati.

Questa situazione rende più difficile introdurre nuovi metodi, nonostante l’ampia ricerca e innovazione in corso. Gran parte di questa innovazione è guidata da grandi aziende, che dispongono delle risorse necessarie, mentre l’accademia, pur avendo talento, è limitata dai costi elevati. Inoltre, molte delle conoscenze sviluppate rimangono proprietarie, a causa di interessi commerciali. Tuttavia, iniziative come i modelli open source, ad esempio LLaMA di Meta, rappresentano un importante contributo alla comunità, promuovendo la condivisione del sapere.

MARCO CANINI

Marco Canini è professore associato di informatica presso la KAUST. Ha conseguito il dottorato di ricerca in informatica e ingegneria presso l’Università di Genova nel 2009 dopo aver trascorso l’ultimo anno come studente ospite presso l’Università di Cambridge. È stato ricercatore post-dottorato presso l’EPFL e ricercatore senior presso Deutsche Telekom Innovation Labs e TU Berlin. Prima di entrare a far parte della KAUST, è stato professore associato presso la UCLouvain. Ha ricoperto posizioni anche presso Intel, Microsoft e Google.

LEGGI ALTRO