Modelli e piattaforme di IA

Potenziare i Modelli Linguistici di Grande Scala con la Predizione di Multi-Token

mm
Aggiungi Unite.AI alle tue fonti preferite su Google
div]:bg-bg-300 [&_pre]:-mr-4 md:[&_pre]:-mr-9″>

I modelli linguistici di grande scala (LLM) come GPT, LLaMA e altri hanno fatto scalpore con la loro incredibile capacità di comprendere e generare testi simili a quelli umani. Tuttavia, nonostante le loro impressionanti capacità, il metodo standard di addestramento di questi modelli, noto come “predizione del prossimo token”, ha alcune limitazioni intrinseche.

Nella predizione del prossimo token, il modello viene addestrato a prevedere il prossimo token in una sequenza dato il contesto precedente. Sebbene questo approccio abbia dimostrato di essere efficace, può portare a modelli che lottano con le dipendenze a lungo raggio e compiti di ragionamento complessi. Inoltre, la mancanza di corrispondenza tra il regime di addestramento (forzatura dell’insegnante) e il processo di generazione autoregressiva durante l’inferenza può risultare in prestazioni subottimali.

Un recente articolo di ricerca di Gloeckle et al. (2024) di Meta AI introduce un nuovo paradigma di addestramento chiamato “predizione di multi-token” che mira ad affrontare queste limitazioni e potenziare i modelli linguistici di grande scala. In questo post del blog, esploreremo in profondità i concetti fondamentali, i dettagli tecnici e le potenziali implicazioni di questa ricerca innovativa.

div]:bg-bg-300 [&_pre]:-mr-4 md:[&_pre]:-mr-9″>

Predizione di Singolo Token: L’Approccio Convenzionale

Prima di addentrarci nei dettagli della predizione di multi-token, è essenziale comprendere l’approccio convenzionale che è stato il cavallo di battaglia dell’addestramento dei modelli linguistici di grande scala per anni – la predizione del singolo token, anche nota come predizione del prossimo token.

Il Paradigma della Predizione del Prossimo Token

Nel paradigma della predizione del prossimo token, i modelli linguistici vengono addestrati a prevedere il prossimo token in una sequenza dato il contesto precedente. Più formalmente, il modello è incaricato di massimizzare la probabilità del prossimo token xt+1, dato i token precedenti x1, x2, …, xt. Ciò viene solitamente fatto minimizzando la perdita di entropia incrociata:

L = -Σt log P(xt+1 | x1, x2, …, xt)

Questo semplice ma potente obiettivo di addestramento è stato il fondamento di molti modelli linguistici di grande scala di successo, come GPT (Radford et al., 2018), BERT (Devlin et al., 2019) e le loro varianti.

Forzatura dell’Insegnante e Generazione Autoregressiva

La predizione del prossimo token si basa su una tecnica di addestramento chiamata “forzatura dell’insegnante” in cui al modello viene fornito il ground truth per ogni token futuro durante l’addestramento. Ciò consente al modello di apprendere dal contesto e dalle sequenze di destinazione corrette, facilitando un addestramento più stabile e efficiente.

Tuttavia, durante l’inferenza o la generazione, il modello opera in modo autoregressivo, prevedendo un token alla volta in base ai token generati in precedenza. La mancanza di corrispondenza tra il regime di addestramento (forzatura dell’insegnante) e il regime di inferenza (generazione autoregressiva) può portare a potenziali discrepanze e prestazioni subottimali, specialmente per sequenze più lunghe o compiti di ragionamento complessi.

Limitazioni della Predizione del Prossimo Token

Sebbene la predizione del prossimo token abbia avuto un grande successo, presenta anche alcune limitazioni intrinseche:

  1. Focalizzazione a Breve Termine: Prevedendo solo il prossimo token, il modello può lottare per catturare le dipendenze a lungo raggio e la struttura e la coerenza complessive del testo, portando potenzialmente a incoerenze o generazioni incoerenti.
  2. Aggrapparsi ai Modelli Locali: I modelli di predizione del prossimo token possono aggrapparsi ai modelli locali nei dati di addestramento, rendendo difficile generalizzare a scenari o compiti fuori dalla distribuzione che richiedono un ragionamento più astratto.
  3. Capacità di Ragionamento: Per i compiti che richiedono un ragionamento multi-step, pensiero algoritmico o operazioni logiche complesse, la predizione del prossimo token può non fornire sufficienti pregiudizi induttivi o rappresentazioni per supportare tali capacità in modo efficace.
  4. Inefficienza dei Campioni: A causa della natura locale della predizione del prossimo token, i modelli possono richiedere set di dati di addestramento più grandi per acquisire le conoscenze e le capacità di ragionamento necessarie, portando a potenziali inefficienze dei campioni.

Queste limitazioni hanno motivato i ricercatori a esplorare paradigmi di addestramento alternativi, come la predizione di multi-token, che mira ad affrontare alcune di queste carenze e sbloccare nuove capacità per i modelli linguistici di grande scala.

Contrastando l’approccio convenzionale della predizione del prossimo token con la tecnica innovativa della predizione di multi-token, i lettori possono apprezzare meglio la motivazione e i potenziali vantaggi di quest’ultima, preparando il terreno per un’ulteriore esplorazione di questa ricerca innovativa.

Cosa è la Predizione di Multi-Token?

L’idea chiave alla base della predizione di multi-token è addestrare i modelli linguistici a prevedere più token futuri simultaneamente, anziché solo il prossimo token. In particolare, durante l’addestramento, il modello è incaricato di prevedere i prossimi n token in ogni posizione nel corpus di addestramento, utilizzando n teste di output indipendenti che operano su un tronco di modello condiviso.

Ad esempio, con un setup di predizione di 4 token, il modello verrebbe addestrato a prevedere i prossimi 4 token contemporaneamente, dato il contesto precedente. Questo approccio incoraggia il modello a catturare dipendenze a lungo raggio e a sviluppare una migliore comprensione della struttura e della coerenza complessive del testo.

Un Esempio Semplice

Per comprendere meglio il concetto di predizione di multi-token, consideriamo un semplice esempio. Supponiamo di avere la seguente frase:

“Il rapido volpe marrone salta sopra il cane pigro.”

Nell’approccio standard della predizione del prossimo token, il modello verrebbe addestrato a prevedere il prossimo token dato il contesto precedente. Ad esempio, dato il contesto “Il rapido volpe marrone salta sopra il”, il modello verrebbe incaricato di prevedere il prossimo token, “pigro”.

Con la predizione di multi-token, tuttavia, il modello verrebbe addestrato a prevedere più token futuri contemporaneamente. Ad esempio, se impostiamo n=4, il modello verrebbe addestrato a prevedere i prossimi 4 token contemporaneamente. Dato lo stesso contesto “Il rapido volpe marrone salta sopra il”, il modello verrebbe incaricato di prevedere la sequenza “pigro . ” (Nota lo spazio dopo “pigro” per indicare la fine della frase).

Addestrando il modello a prevedere più token futuri contemporaneamente, si incoraggia il modello a catturare dipendenze a lungo raggio e a sviluppare una migliore comprensione della struttura e della coerenza complessive del testo.

Dettagli Tecnici

Gli autori propongono un’architettura semplice ma efficace per implementare la predizione di multi-token. Il modello consiste in un tronco di trasformatore condiviso che produce una rappresentazione latente del contesto di input, seguito da n layer di trasformatore indipendenti (teste di output) che prevedono i rispettivi token futuri.

Durante l’addestramento, le fasi forward e backward vengono orchestrate con cura per minimizzare l’impronta di memoria della GPU. Il tronco condiviso calcola la rappresentazione latente, e poi ogni testa di output esegue la sua fase forward e backward in sequenza, accumulando gradienti al livello del tronco. Questo approccio evita di materializzare tutti i vettori di logit e i loro gradienti contemporaneamente, riducendo l’utilizzo di memoria della GPU da O(nV + d) a O(V + d), dove V è la dimensione del vocabolario e d è la dimensione della rappresentazione latente.

L’Implementazione Efficientemente in Termini di Memoria

Una delle sfide nell’addestrare i predittori di multi-token è ridurre il loro utilizzo di memoria della GPU. Poiché la dimensione del vocabolario (V) è solitamente molto più grande della dimensione della rappresentazione latente (d), i vettori di logit diventano il collo di bottiglia dell’utilizzo di memoria della GPU.

Per affrontare questa sfida, gli autori propongono un’implementazione efficiente che adatta con cura la sequenza delle operazioni forward e backward. Invece di materializzare tutti i logit e i loro gradienti contemporaneamente, l’implementazione esegue le fasi forward e backward per ogni testa di output indipendente in sequenza, accumulando gradienti al livello del tronco.

Questo approccio evita di memorizzare tutti i vettori di logit e i loro gradienti contemporaneamente, riducendo l’utilizzo di memoria della GPU da O(nV + d) a O(V + d), dove n è il numero di token futuri da prevedere.

Vantaggi della Predizione di Multi-Token

L’articolo di ricerca presenta diversi vantaggi convincenti dell’utilizzo della predizione di multi-token per l’addestramento dei modelli linguistici di grande scala:

  1. Miglior Efficienza dei Campioni: Addestrando il modello a prevedere più token futuri contemporaneamente, la predizione di multi-token incoraggia il modello a migliorare l’efficienza dei campioni. Gli autori dimostrano miglioramenti significativi delle prestazioni nei compiti di comprensione e generazione di codice, con modelli fino a 13B di parametri che risolvono circa il 15% in più di problemi in media.
  2. Inferenza più Veloce: Le teste di output aggiuntive addestrate con la predizione di multi-token possono essere utilizzate per la decodifica speculativa, una variante della decodifica speculativa che consente la predizione parallela dei token. Ciò risulta in tempi di inferenza fino a 3 volte più veloci su una vasta gamma di dimensioni del batch, anche per modelli grandi.
  3. Promozione delle Dipendenze a Lungo Raggio: La predizione di multi-token incoraggia il modello a catturare dipendenze a lungo raggio e modelli nei dati, il che è particolarmente benefico per i compiti che richiedono la comprensione e il ragionamento su contesti più ampi.
  4. Ragionamento Algoritmico: Gli autori presentano esperimenti su compiti sintetici che dimostrano la superiorità della predizione di multi-token nei modelli che sviluppano teste di induzione e capacità di ragionamento algoritmico, specialmente per dimensioni di modello più piccole.
  5. Coerenza e Consistenza: Addestrando il modello a prevedere più token futuri contemporaneamente, la predizione di multi-token incoraggia lo sviluppo di rappresentazioni coerenti e consistenti. Ciò è particolarmente benefico per i compiti che richiedono la generazione di testi più lunghi e coerenti, come la stesura di storie, articoli o manuali di istruzioni.
  6. Miglior Generalizzazione: Gli esperimenti degli autori su compiti sintetici suggeriscono che i modelli di predizione di multi-token esibiscono migliori capacità di generalizzazione, specialmente in scenari fuori dalla distribuzione. Ciò potrebbe essere dovuto alla capacità del modello di catturare modelli a lungo raggio e dipendenze, che possono aiutarlo a extrapolare più efficacemente a scenari non visti.

Esempi e Intuizioni

Per fornire più intuizioni su perché la predizione di multi-token funziona così bene, consideriamo alcuni esempi:

  1. Generazione di Codice: Nel contesto della generazione di codice, prevedere più token contemporaneamente può aiutare il modello a comprendere e generare strutture di codice più complesse. Ad esempio, quando si genera una definizione di funzione, prevedere solo il prossimo token potrebbe non fornire sufficiente contesto per il modello per generare correttamente la firma della funzione. Tuttavia, prevedendo più token contemporaneamente, il modello può catturare meglio le dipendenze tra il nome della funzione, i parametri e il tipo di ritorno, portando a una generazione di codice più precisa e coerente.
  2. Ragionamento Linguistico: Consideriamo uno scenario in cui un modello linguistico è incaricato di rispondere a una domanda che richiede il ragionamento su più passaggi o pezzi di informazione. Prevedendo più token contemporaneamente, il modello può catturare meglio le dipendenze tra i diversi componenti del processo di ragionamento, portando a risposte più coerenti e precise.
  3. Generazione di Testo a Lungo Termine: Quando si genera testo a lungo termine, come storie, articoli o rapporti, mantenere la coerenza e la consistenza su un lungo periodo può essere difficile per i modelli linguistici addestrati con la predizione del prossimo token. La predizione di multi-token incoraggia il modello a sviluppare rappresentazioni che catturano la struttura e il flusso complessivi del testo, portando potenzialmente a generazioni di testo più coerenti e consistenti.

Limitazioni e Direzioni Future

Sebbene i risultati presentati nell’articolo siano impressionanti, ci sono alcune limitazioni e domande aperte che richiedono ulteriori indagini:

  1. Numero Ottimale di Token: L’articolo esplora diversi valori di n (il numero di token futuri da prevedere) e trova che n=4 funziona bene per molti compiti. Tuttavia, il valore ottimale di n potrebbe dipendere dal compito specifico, dal set di dati e dalla dimensione del modello. Sviluppare metodi principali per determinare il valore ottimale di n potrebbe portare a ulteriori miglioramenti delle prestazioni.
  2. Dimensione del Vocabolario e Tokenizzazione: Gli autori notano che la dimensione del vocabolario e la strategia di tokenizzazione ottimali per i modelli di predizione di multi-token potrebbero differire da quelle utilizzate per i modelli di predizione del prossimo token. Esplorare questo aspetto potrebbe portare a migliori compromessi tra la lunghezza della sequenza compressa e l’efficienza computazionale.
  3. Perdite di Predizione Ausiliarie: Gli autori suggeriscono che il loro lavoro potrebbe suscitare interesse nello sviluppo di nuove perdite di predizione ausiliarie per i modelli linguistici di grande scala, al di là della standard predizione del prossimo token. Indagare su perdite ausiliarie alternative e le loro combinazioni con la predizione di multi-token è una direzione di ricerca emozionante.
  4. Comprensione Teorica: Sebbene l’articolo fornisca alcune intuizioni e prove empiriche per l’efficacia della predizione di multi-token, una comprensione teorica più profonda di perché e come questo approccio funziona così bene sarebbe preziosa.

Conclusione

L’articolo di ricerca “Modelli Linguistici di Grande Scala Migliori e più Veloci tramite Predizione di Multi-Token” di Gloeckle et al. introduce un nuovo paradigma di addestramento che ha il potenziale di migliorare significativamente le prestazioni e le capacità dei modelli linguistici di grande scala. Addestrando i modelli a prevedere più token futuri contemporaneamente, la predizione di multi-token incoraggia lo sviluppo di dipendenze a lungo raggio, capacità di ragionamento algoritmico e una migliore efficienza dei campioni.

L’implementazione tecnica proposta dagli autori è elegante e computazionalmente efficiente, rendendola applicabile all’addestramento di modelli linguistici di grande scala. Inoltre, la capacità di sfruttare la decodifica speculativa per un’inferenza più veloce è un significativo vantaggio pratico.

Sebbene ci siano ancora domande aperte e aree di esplorazione, questa ricerca rappresenta un passo emozionante avanti nel campo dei modelli linguistici di grande scala. Man mano che la domanda di modelli linguistici più capaci e efficienti continua a crescere, la predizione di multi-token potrebbe diventare un componente chiave nella prossima generazione di questi potenti sistemi di intelligenza artificiale.

Ho trascorso gli ultimi cinque anni immergendomi nel mondo affascinante del Machine Learning e del Deep Learning. La mia passione e la mia esperienza mi hanno portato a contribuire a oltre 50 progetti di ingegneria del software diversi, con un focus particolare su AI/ML. La mia curiosità in corso mi ha anche portato verso l'elaborazione del linguaggio naturale, un campo che sono ansioso di esplorare ulteriormente.