Connect with us

Intelligenza artificiale

GLM-130B: Un modello di pre-addestramento bilingue aperto

mm

La struttura GLM-130B è un modello di linguaggio grande pre-addestrato bilingue con oltre 130 miliardi di parametri in grado di generare output di testo in inglese e cinese. La struttura GLM-130B è un tentativo di aprire un modello di linguaggio a una scala di oltre 100 miliardi di parametri e discutere di come le strutture di tale larga scala possano essere pre-addestrate, poiché attualmente, l’addestramento di un modello di tale larga scala è spesso accompagnato da problemi come la divergenza e le perdite di picco.

In questo articolo, parleremo della struttura GLM-130B, che tenta di elaborare un metodo per pre-addestrare efficacemente grandi modelli di linguaggio con centinaia di miliardi di parametri. Esamineremo più da vicino il funzionamento e l’architettura della struttura GLM-130B, nonché il processo di addestramento e le scelte di progettazione che non solo aiutano ad aumentare l’efficienza, ma anche la stabilità. Gli esperimenti iniziali condotti per testare il funzionamento della struttura GLM-130B su una vasta gamma di benchmark inglese hanno portato al modello GLM-130B che supera il modello GPT-3 attuale di uno stato dell’arte GPT-3 di un margine considerevole. Quindi, iniziamo a esplorare come la struttura GLM-130B fornisce risultati consistenti, precisi e stabili.

Introduzione alla struttura GLM-130B

I grandi modelli di linguaggio in grado di operare in impostazioni a pochi colpi e a zero colpi, specialmente quelli con oltre 100 miliardi di parametri, presentano leggi di scala attraenti, tra cui il modello GPT-3 è uno dei framework più performanti che fornisce miglioramenti delle prestazioni considerevoli rispetto al suo predecessore, il framework BERT. Tuttavia, nonostante la popolarità del framework GPT-3 e le sue applicazioni diffuse, il processo di addestramento e, in alcuni modi, il framework GPT-3 in sé è stato non trasparente al pubblico. Inoltre, elencare empiricamente tutti i possibili progetti per l’addestramento di LLM con oltre 100 miliardi di parametri è computazionalmente non sostenibile, il che rende ancora più critico elaborare un metodo di pre-addestramento per framework LLM di larga scala.

Il punto sopra menzionato rende condivisibile il funzionamento e il processo di addestramento di framework LLM di alta qualità e larga scala come GPT-3 di valore critico, e con le preoccupazioni etiche tenute presente, la struttura GLM-130B è un tentativo di pre-addestrare un LLM preciso e open-source con oltre 100 miliardi di parametri. Durante il corso del loro tentativo, il team di sviluppo GLM-130B ha osservato che pre-addestrare un framework LLM di larga scala è spesso accompagnato da una vasta gamma di sfide tecniche e ingegneristiche in termini di stabilità di pre-addestramento, efficienza e convergenza.

Per essere più specifici, il GLM-130B è un framework denso bidirezionale e bilingue con oltre 130 miliardi di parametri, pre-addestrato su 400 miliardi di token su un cluster di 96 nodi GPU NVIDIA DGX-A100 nel corso di quasi due mesi. Inoltre, invece di optare per l’architettura GPT-style, la struttura GLM-130B utilizza l’algoritmo GLM o General Language Model, un modello di linguaggio basato su transformer che tenta di sfruttare gli obiettivi di riempimento autoregressivo dei vuoti e il vantaggio dell’attenzione bidirezionale. La seguente tabella confronta la struttura GLM-130B con altri modelli con oltre 100 miliardi di parametri, tra cui GPT, BLOOM-176B e OPT-175B.

I concetti di ingegneria e sviluppo coinvolti nella struttura GLM-130B superano quasi ogni framework LLM di larga scala, tra cui GPT-3 e PaLM 540B con oltre 500 miliardi di parametri, in molti casi e in una vasta gamma di benchmark. La seguente figura confronta le prestazioni della struttura GLM-130B con modelli con oltre 100 miliardi di parametri e, come si può vedere, la struttura GLM-130B ha una tossicità e un bias di generazione significativamente inferiori rispetto ai suoi omologhi.

Infine, il GLM-130B è stato progettato per consentire a molti sviluppatori di condurre studi su framework con oltre 100 miliardi di parametri e ci sono due modi in cui la struttura GLM-130B raggiunge questo obiettivo. In primo luogo, invece di utilizzare oltre 175 miliardi di parametri come BLOOM e OPT, la struttura GLM-130B utilizza 130 miliardi di parametri, poiché le dimensioni del modello supportano l’interferenza anche su un solo server A100. In secondo luogo, i requisiti GPU per eseguire la struttura GLM-130B sono inferiori rispetto ad altri framework LLM e la struttura GLM-130B raggiunge questo obiettivo quantizzando il framework originale in precisione INT4. La quantizzazione INT4 utilizzata dalla struttura GLM-130B migliora le prestazioni mantenendo un degrado delle prestazioni trascurabile.

GLM-130B: Architettura

Il bias induttivo di un modello di apprendimento automatico è descritto dalla sua architettura e non sorprende quando gli sviluppatori non possono esplorare vari progetti architettonici per grandi modelli di linguaggio dati i limiti di sostenibilità e fattibilità computazionale. Detto questo, analizziamo l’architettura del GLM-130B.

I framework LLM di larga scala come PaLM, GPT e altri hanno oltre 100 miliardi di parametri e sono costruiti sull’architettura convenzionale decoder-only GPT-style per la modellazione del linguaggio autoregressivo. D’altra parte, la struttura GLM-130B esplora la possibilità di utilizzare un modello di linguaggio generale bidirezionale o GLM, un modello di linguaggio basato su transformer che tenta di sfruttare il riempimento autoregressivo dei vuoti come obiettivo di addestramento, come fondamento. In breve, per una data sequenza di testo, il framework GLM campiona le span di testo che vengono quindi sostituite con un singolo token di maschera.

L’attenzione bidirezionale del modello di linguaggio generale su contesti non corrotti o non mascherati è ciò che separa la struttura GLM-130B dall’approccio GPT-style che utilizza un approccio unidirezionale. Inoltre, per supportare sia la generazione che la comprensione dei dati, il framework GLM combina due strategie di corruzione, ciascuna delle quali è indicata con un token di maschera speciale e univoco.

  • [MASK] : [MASK] è una strategia di corruzione che utilizza spazi vuoti brevi nelle frasi, le lunghezze dei quali si aggiungono fino a una certa percentuale dell’input.
  • [gMASK] : [gMASK] è una strategia di corruzione che utilizza spazi vuoti di lunghezza casuale verso la fine della frase con i contesti di prefisso.

L’approccio seguito dal framework GLM è ciò che consente al framework di registrare un punteggio di accuratezza del 80% su zero-shot LAMBADA language modeling e supera sia il framework PaLM 540B che il framework GPT-3.

Normalizzazione del livello

Una delle principali sfide affrontate dagli sviluppatori quando si addestra un framework LLM è l’instabilità di addestramento e l’utilizzo di una LN (Normalizzazione del livello) appropriata potrebbe aiutare con l’addestramento dei LLM. La struttura GLM-130B utilizza un approccio Post-LN grazie alle sue prestazioni sui compiti downstream.

FFN e codifica posizionale

Le reti neurali feedforward o FFN e la codifica posizionale sono due approcci adottati dalla struttura GLM-130B per introdurre prestazioni downstream di alta qualità e stabilità di addestramento.

Impostazione di pre-addestramento

Gli obiettivi di pre-addestramento della struttura GLM-130B non includono solo l’apprendimento multitasca per un piccolo numero di token, ma anche l’apprendimento autoregressivo GLM per il riempimento dei vuoti, con l’aspettativa che questo approccio aiuterà la struttura GLM-130B nei compiti downstream. Detto questo, l’impostazione di pre-addestramento della struttura GLM-130B sembra la seguente.

Riempimento autoregressivo dei vuoti

Come già menzionato, la struttura GLM-130B utilizza due strategie di corruzione, ovvero [MASK] e [gMASK], e una di queste strategie viene applicata indipendentemente a ogni sequenza di addestramento, una alla volta. Per riempire i vuoti, la strategia [MASK] maschera span consecutive nel 30% della sequenza di addestramento, dove le lunghezze degli span si aggiungono fino al 15% dell’input e segue una distribuzione di Poisson. Per il restante 70% della sequenza, il prefisso di ogni sequenza viene mantenuto come contesto e la strategia [gMASK] aiuta a mascherare il resto e la lunghezza mascherata viene quindi campionata utilizzando la distribuzione uniforme.

Pre-addestramento delle istruzioni multitasca

È stato indicato che seguire un approccio di apprendimento multitasca per pre-addestrare i modelli può fornire risultati migliori rispetto alla regolazione fine, per migliorare il trasferimento di compiti in un’impostazione a zero colpi. Di conseguenza, la struttura GLM-130B propone di utilizzare una serie di set di dati di istruzioni promosse, tra cui generazione del linguaggio, comprensione e estrazione di informazioni durante il pre-addestramento.

Quando confrontato con altri approcci per il trasferimento di compiti a zero colpi che utilizzano la regolazione fine multitasca, l’approccio di pre-addestramento delle istruzioni multitasca seguito dalla struttura GLM-130B rappresenta solo il 5% dei token totali e viene impostato durante la fase di pre-addestramento nel tentativo di prevenire la rottura di altre capacità del framework LLM o, in altre parole, la generazione libera incondizionata.

Strategia di parallelismo 3D

Ci sono due pratiche de facto per l’addestramento di modelli di larga scala con miliardi di parametri, il parallelismo del modello tensoriale e il parallelismo dei dati. Nel tentativo di minimizzare l’utilizzo della GPU e gestire le immense esigenze della GPU, la struttura GLM-130B implementa una strategia di parallelismo 3D che combina il parallelismo del modello a pipeline con le strategie di parallelismo del modello tensoriale e dei dati.

GLM-130B: Stabilità di addestramento

La stabilità di addestramento è un fattore importante quando si determina la qualità di un LLM e la stabilità di addestramento è influenzata pesantemente a seconda del numero di token che passa. Inoltre, è vitale stabilire un compromesso tra stabilità ed efficienza in termini di formati di punto fluttuante dati i vincoli di calcolo. Ad esempio, i formati di punto fluttuante a bassa precisione aumentano l’efficienza del calcolo, ma spesso risultano in crolli di addestramento poiché sono soggetti a errori di underflow e overflow.

Precisione mista

Nel tentativo di aumentare la precisione di addestramento e ridurre l’utilizzo della memoria, la struttura GLM-130B segue la pratica comune di utilizzare precisioni miste, ovvero FP16 per sia il forward che il backward e FP32 per sia i pesi master che gli stati dell’ottimizzatore. Come altri framework LLM popolari, tra cui BLOOM-176B e OPT-175B, la fase di addestramento della struttura GLM-130B utilizzando la strategia di precisione mista affronta frequenti picchi di perdita e la frequenza di questi picchi di perdita tende ad aumentare man mano che il modello continua ad addestrarsi. Inoltre, ci sono problemi principali che gli sviluppatori affrontano quando scalano i transformer.

In primo luogo, la scala di valore del ramo principale del transformer può essere vasta nei livelli più profondi quando si utilizza Pre-LN e nella struttura GLM-130B, viene affrontata utilizzando un Pre-LN basato su DeepNorm, che garantisce che la scala di valore rimanga limitata in tutti i momenti. In secondo luogo, man mano che il modello si scala, i punteggi di attenzione crescono fino a superare la gamma di FP16.

Riduzione del gradiente del livello di incorporamento o EGS

Gli sviluppatori che lavorano sulla struttura GLM-130B hanno identificato che la norma del gradiente può agire come un indicatore informativo per i crolli di addestramento e un crollo di addestramento solitamente segue un picco nella norma del gradiente. La causa di questi picchi è i gradienti anormali del livello di incorporamento e gli sviluppatori hanno osservato che, rispetto alla norma del gradiente degli altri livelli, la norma del gradiente dei livelli di incorporamento è più grande di diverse grandezze e tende anche a fluttuare drasticamente durante l’addestramento iniziale del framework. I modelli di visione affrontano anche questo problema e viene gestito congelando il livello di proiezione del patch. Tuttavia, lo stesso approccio non può essere applicato ai LLM, poiché nei modelli di linguaggio non è possibile congelare i livelli di proiezione.

GLM-130B: Risultati e prestazioni

Per valutare le prestazioni del GLM-130B per i compiti in inglese, vengono implementate le stesse impostazioni seguite da framework LLM comuni, tra cui PaLM e GPT-3 e poiché il GLM-130B è un framework bilingue, viene anche valutato su diversi benchmark cinesi. Le prestazioni del framework GLM-130B verranno misurate su più benchmark, tra cui Modellazione del linguaggio, MMLU o Comprensione del linguaggio multitasca massiccia, BIG-Bench o Beyond the Imitation Game Benchmark e CLUE o Valutazione della comprensione del linguaggio cinese. Quindi, iniziamo.

Modellazione del linguaggio

Il test di modellazione del linguaggio sulla struttura GLM-130B viene eseguito su due set di dati: LAMBADA e Pile.

Il set di dati LAMBADA viene utilizzato per testare le capacità di modellazione della parola finale dei LLM e la struttura GLM-130B raggiunge un punteggio di accuratezza a zero colpi dell’80,2% in un’impostazione bilingue e, di conseguenza, stabilisce un nuovo record di benchmark sul set di dati LAMBADA.

D’altra parte, Pile è un set di test che comprende una serie di benchmark per i modelli di linguaggio. In media, in confronto al GPT-3 e al Jurassic-1, la struttura GLM-130B fornisce le sue migliori prestazioni su 18 set di test condivisi in termini di BPB ponderati. I risultati dimostrano le forti capacità linguistiche della struttura GLM-130B e i risultati sono inclusi nella tabella seguente.

MMLU o Comprensione del linguaggio multitasca massiccia

MMLU o Comprensione del linguaggio multitasca massiccia è un benchmark diversificato che comprende oltre 50 attività di risposta alle domande a scelta multipla relative all’intelligenza e alla conoscenza umana, che vanno dal livello scolastico a quello esperto e viene rilasciato dopo l’arrampicata del set di test Pile, e quindi serve come test ideale per valutare le capacità di apprendimento a pochi colpi di un LLM.

Come si può vedere, in un’impostazione a pochi colpi (5 colpi), le prestazioni della struttura GLM-130B si avvicinano a quelle del modello GPT-3 dopo aver visualizzato quasi 300 miliardi di token. Le prestazioni continuano a migliorare man mano che il training procede ulteriormente e quando il training si conclude, il framework raggiunge un punteggio di accuratezza del 44,8% dopo aver visualizzato un totale di 400 miliardi di token.

BIG-Bench o Beyond the Imitation Game Benchmark

BIG-Bench o Beyond the Imitation Game Benchmark sfide compiti testa le capacità del modello sulla conoscenza, il ragionamento e il senso comune. Come dimostrato nelle figure seguenti, in un’impostazione a zero colpi, la struttura GLM-130B supera sia il framework PaLM 540B che il framework GPT-3 175B, che potrebbe essere dovuto al MIP e all’attenzione del contesto bidirezionale per aumentare le prestazioni del GLM-130B nei compiti non visti in un’impostazione a zero colpi. Inoltre, man mano che aumenta il numero di colpi, le prestazioni della struttura GLM-130B migliorano anche, superando costantemente il framework GPT-3.

CLUE o Valutazione della comprensione del linguaggio cinese

Le prestazioni a zero colpi del GLM-130B in cinese vengono valutate su attività di benchmark NLP stabilite, tra cui CLUE e FewCLUE e vengono confrontate con il 260B ERNIE Titan 3.0, il modello di linguaggio cinese più grande esistente. Come si può osservare, la struttura GLM-130B supera costantemente il framework 260B ERNIE Titan 3.0 su 12 attività diverse e si esegue quasi il 260% meglio del framework ERNIE su due set di dati MRC astratti.

Conclusione

In questo articolo, abbiamo parlato del GLM-130B, un modello di linguaggio grande pre-addestrato bilingue che mira a promuovere la ricerca LLM inclusiva. L’architettura, l’ingegneria e gli sforzi tecnici mirano a fornire alla comunità AI una migliore comprensione dell’architettura dei framework LLM, dell’efficienza di addestramento e della stabilità, degli obiettivi di pre-addestramento e dell’interferenza economica.

Un ingegnere per professione, uno scrittore per passione. Kunal è uno scrittore tecnico con un profondo amore e comprensione di AI e ML, dedicato a semplificare concetti complessi in questi campi attraverso la sua documentazione coinvolgente e informativa.