notizia

Dov'è finito il famoso BERT?La risposta a questa domanda segnala un cambiamento di paradigma nel LLM

2024-07-22

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Dov’è finito il modello dell’encoder? Se il BERT funziona bene, perché non estenderlo? Che dire dei modelli con codificatore-decodificatore o solo codificatore?



Nel campo dei modelli linguistici di grandi dimensioni (LLM), è ormai un'era in cui dominano solo i modelli di decodificatori (come la serie di modelli GPT). Che dire dello sviluppo di modelli encoder-decoder o solo encoder? Perché BERT, una volta così famoso, a poco a poco sempre meno persone gli prestano attenzione?

Recentemente, Yi Tay, capo scienziato e co-fondatore della startup AI Reka, ha pubblicato un post sul blog per condividere le sue opinioni. Yi Tay ha lavorato presso Google Research e Google Brain per più di tre anni prima di co-fondare Reka e ha partecipato allo sviluppo di famosi LLM come PaLM, UL2, Flan-2 e Bard, nonché di modelli multimodali come PaLI-X e ViT-22B Lavoro. Quello che segue è il contenuto del suo post sul blog.



Introduzione di base

In generale, l'architettura del modello LLM negli ultimi anni è principalmente divisa in tre paradigmi principali: modello solo codificatore (come BERT), modello codificatore-decodificatore (come T5) e modello solo decodificatore (come la serie GPT Modelli). Le persone sono spesso confuse e fraintendono questi metodi e strutture di classificazione.

La prima cosa da capire è che il modello codificatore-decodificatore è in realtà un modello autoregressivo. Nel modello codificatore-decodificatore, il decodificatore è ancora essenzialmente un decodificatore causale. Invece di precompilare il modello di decodificatore, scarica parte del testo sul codificatore e quindi lo invia al decodificatore tramite attenzione incrociata. Sì, anche il modello T5 è un modello linguistico!

Una variante di questo tipo di modello è il Prefix Language Model, o PrefixLM in breve, che funziona quasi allo stesso modo ma senza attenzione incrociata (e altri piccoli dettagli come pesi condivisi tra codificatore/decodificatore e Nessun collo di bottiglia del codificatore). PrefixLM è talvolta chiamato decodificatore non causale. In poche parole, non c'è molta differenza nel complesso tra i modelli con codificatore-decodificatore, solo decodificatore e PrefixLM!

Nella recente eccellente conferenza di Hyung Won, egli spiega abilmente la relazione tra questi modelli. Per i dettagli si rimanda al rapporto di Machine Heart: "Quale sarà la principale forza trainante per la ricerca sull'IA?" Ricercatore del team ChatGPT: i costi di calcolo diminuiscono》

Allo stesso tempo, il metodo di denoising dei modelli basati solo su codificatore come BERT è diverso (vale a dire sul posto e, in una certa misura, affinché il modello basato solo su codificatore svolga davvero un ruolo dopo la formazione preliminare, è necessario). fare affidamento sull'intestazione "attività" di classificazione. Successivamente, modelli come T5 adottarono una versione "modificata" del bersaglio di denoising, che utilizzava un formato sequenza-sequenza.

A tal fine, è importante sottolineare: il denoising in T5 non è una nuova funzione obiettivo (nel senso dell'apprendimento automatico), ma una trasformazione dei dati attraverso gli input, ovvero è possibile anche utilizzare un decodificatore causale addestrato su obiettivi corrotti (span corruzione obbiettivo).

Le persone presumono sempre che i modelli codificatore-decodificatore debbano essere modelli con denoising, in parte perché T5 è così rappresentativo. Ma non è sempre così. È possibile addestrare il codificatore-decodificatore utilizzando normali attività di modellazione del linguaggio (come la modellazione del linguaggio causale). A loro volta, i decodificatori causali possono anche essere addestrati utilizzando attività di corruzione dello span. Come ho detto prima, questa è fondamentalmente una trasformazione dei dati.

Un altro punto degno di nota: in generale, un codificatore-decodificatore con 2N parametri è computazionalmente uguale a un modello solo decodificatore con N parametri, quindi il loro rapporto tra FLOP e numero di parametri è diverso. È come distribuire la "sparsità del modello" tra input e destinazione.

Questa non è una novità e non l’ho inventato io stesso. Era nel documento T5 del 2019 e anche il documento UL2 ha sottolineato nuovamente questo punto.

Per ora sono felice di poterlo chiarire. Ora passiamo agli obiettivi.

Per quanto riguarda gli obiettivi di denoising (non funziona? Non è scalabile? O è semplicemente troppo facile?)

L'obiettivo di denoising qui si riferisce a qualsiasi variante dell'attività di "danno allo span". Questo a volte viene chiamato "riempire" o "riempire gli spazi vuoti". Esistono molti modi per esprimerlo, come la lunghezza dell'intervallo, la casualità, il token sentinella, ecc. Devi aver capito la chiave.

Sebbene l'obiettivo di denoising dei modelli in stile BERT sia sostanzialmente in atto (ad esempio, l'intestazione della classificazione è sul token della maschera), lo "stile T5" è più moderno, ovvero attraverso un codificatore-decodificatore o un solo decodificatore modello per gestire la trasformazione dei dati. In tale trasformazione dei dati, i token mascherati vengono semplicemente "spostati indietro" in modo che il modello possa fare previsioni.

L’obiettivo principale della pre-formazione è costruire rappresentazioni interne allineate con il compito a valle nel modo più efficiente ed efficace possibile. Migliore è questa rappresentazione interna, più facile sarà utilizzare queste rappresentazioni apprese per compiti successivi. Sappiamo tutti che la semplice previsione della parola successiva funziona molto bene per l'obiettivo della "modellazione del linguaggio causale" ed è diventata il fulcro della rivoluzione LLM. La domanda ora è se l’obiettivo del denoising sia altrettanto valido.

Sulla base delle informazioni pubbliche, sappiamo che il T5-11B funziona abbastanza bene, anche dopo l'allineamento e la messa a punto supervisionata (il punteggio MMLU di Flan-T5 XXL è 55+, che all'epoca era abbastanza buono per un modello di queste dimensioni) . Pertanto, possiamo concludere che il processo di trasferimento dei target di denoising (pre-addestramento → allineamento) funziona relativamente bene su questa scala.

La mia opinione è che il target di denoising funzioni bene, ma non abbastanza bene da costituire un target a sé stante. Un enorme svantaggio deriva dalla cosiddetta minore “esposizione alle perdite”. Nel target di denoising, solo un piccolo numero di token viene mascherato e appreso (cioè preso in considerazione nella perdita). Al contrario, nella modellazione linguistica regolare questo è vicino al 100%. Ciò rende i campioni per FLOP molto inefficienti, il che pone l'obiettivo di denoising in una posizione di svantaggio significativo nei confronti su base flop.

Un altro svantaggio del denoising degli obiettivi è che sono meno naturali della normale modellazione linguistica, poiché riformatta l’input/output in un modo strano, il che li rende meno adatti all’apprendimento “low-shot”. (Ma è ancora possibile mettere a punto questi modelli per ottenere prestazioni ragionevolmente buone su compiti con poche riprese.) Pertanto, credo che gli obiettivi di denoising dovrebbero essere usati solo come obiettivi complementari alla normale modellazione del linguaggio.

Gli albori dell’unità e il motivo per cui i modelli simili a BERT sono scomparsi

Modelli come BERT sono gradualmente scomparsi e non sono più in molti a parlarne. Questo può anche spiegare perché ora non possiamo vedere modelli BERT su larga scala. qual è il motivo? Ciò è in gran parte dovuto all’unificazione e allo spostamento dei paradigmi compito/modellazione. I modelli in stile BERT sono ingombranti, ma il vero motivo per cui i modelli BERT sono stati deprecati è che le persone volevano fare tutto in una volta, quindi è stato adottato un modo migliore per eliminare il rumore, utilizzando modelli autoregressivi.

Nel periodo 2018-2021 si è verificato un implicito cambio di paradigma: dalla messa a punto di un singolo compito a modelli multitasking su larga scala. Ciò ci ha portato lentamente al modello SFT unificato, che è il modello universale che vediamo oggi. Questo è difficile da fare con BERT. Non penso che questo abbia molto a che fare con il "denoising". Per le persone che desiderano ancora utilizzare un modello del genere (ad esempio T5), hanno trovato un modo per riformulare l'attività di pre-formazione di denoising, il che rende i modelli in stile BERT sostanzialmente deprecati al giorno d'oggi perché ne abbiamo di piani alternativi migliori.

Più precisamente, i modelli codificatore-decodificatore e solo decodificatore possono essere utilizzati per una varietà di attività senza la necessità di intestazioni di classificazione specifiche per l'attività. Per quanto riguarda l'encoder-decoder, ricercatori e ingegneri hanno iniziato a scoprire che l'effetto della rinuncia all'encoder era simile a quello dell'encoder BERT. Inoltre, ciò preserva i vantaggi dell’attenzione bidirezionale, un vantaggio che rende BERT competitivo con GPT su piccola scala (spesso su scala di produzione).

Il valore del target di riduzione del rumore

Il target pre-addestramento al denoising impara anche a prevedere la parola successiva in modo simile alla normale modellazione linguistica. Tuttavia, a differenza della modellazione del linguaggio causale convenzionale, ciò richiede l'utilizzo di una trasformazione dei dati sulla sequenza in modo che il modello possa imparare a "riempire gli spazi vuoti" anziché semplicemente prevedere il testo naturale da sinistra a destra.

Vale la pena notare che gli obiettivi di denoising sono talvolta chiamati “attività di riempimento” e talvolta sono mescolati con normali attività di modellazione del linguaggio nel processo di pre-formazione.

Sebbene i dettagli esatti di configurazione e implementazione possano variare, i moderni LLM di oggi possono utilizzare una combinazione di modellazione e riempimento del linguaggio. È interessante notare che questo ibrido di "modello linguistico + riempimento" si è effettivamente diffuso nello stesso periodo (come UL2, FIM, GLM, CM3) e molti team hanno portato le proprie soluzioni ibride uniche. Per inciso, il più grande modello conosciuto addestrato in questo modo è probabilmente PaLM-2.

Va inoltre notato che il mix di attività di pre-addestramento può anche essere impilato in ordine e non deve necessariamente essere mescolato allo stesso tempo. Ad esempio, Flan-T5 è stato inizialmente addestrato su token danneggiati di 1T span e poi cambiato a 100B token per il target di modellazione del linguaggio feedforward, quindi ottimizzare il comando flan. In una certa misura, questo è adatto per modelli ibridi di denoising/bersaglio LM. Per essere chiari, l'obiettivo della modellazione del linguaggio del prefisso (da non confondere con l'architettura) è la modellazione del linguaggio puramente causale, con un punto di divisione determinato casualmente e inviato all'input (senza perdita e mascheramento non causale).

Per inciso, il riempimento potrebbe aver avuto origine dal campo del codice LLM, dove "riempire gli spazi vuoti" era più una funzione richiesta per scrivere il codice. Allo stesso tempo, la motivazione di UL2 è più quella di unificare l'obiettivo di denoising e la classe di attività in cui LLM bidirezionale eccelle con attività intrinsecamente generative (come il riepilogo o la generazione a tempo indeterminato). Il vantaggio di questo "spostamento all'indietro" della decodifica autoregressiva è che non solo consente al modello di apprendere dipendenze a lungo raggio, ma gli consente anche di beneficiare implicitamente dell'attenzione bidirezionale non esplicita (perché per riempire gli spazi vuoti, è necessario hanno visto il futuro).

Esiste un’esperienza leggendaria: le rappresentazioni apprese eliminando il rumore degli obiettivi ottengono risultati migliori su categorie di attività specifiche e talvolta hanno una maggiore efficienza del campione. Nel documento U-PaLM, mostriamo come una piccola quantità di up-training danneggiato cambi il comportamento e i fenomeni emergenti su una serie di compiti BIG-Bench. Su questa base, la messa a punto di un modello addestrato con questo obiettivo spesso si traduce in un modello ottimizzato con una supervisione migliore, soprattutto quando la scala è piccola.

In termini di messa a punto del singolo compito, si può vedere che il modello PaLM-1 62B è sconfitto dal modello T5 molto più piccolo. Su una scala relativamente piccola, "attenzione bidirezionale + bersaglio denoising" è una bellissima combinazione di colpi! Credo che anche molti professionisti abbiano notato questa situazione, soprattutto nelle applicazioni di produzione.

E l’attenzione bidirezionale?

L'attenzione bidirezionale è un interessante "bias induttivo" per i modelli linguistici, che le persone spesso confondono con gli obiettivi e le strutture portanti del modello. La polarizzazione induttiva ha usi diversi in diversi domini informatici e può avere effetti diversi sulla curva di espansione. Detto questo, l’attenzione bidirezionale può essere meno importante su scala più ampia che su scala più piccola, o può avere effetti diversi su compiti o modalità diverse. PaliGemma, ad esempio, utilizza l'architettura PrefixLM.

Hyung Won ha anche sottolineato nel suo discorso: Anche i modelli PrefixLM (modelli solo decoder che utilizzano l'attenzione bidirezionale) hanno problemi di memorizzazione nella cache, che è un difetto intrinseco di questo tipo di architettura. Tuttavia, penso che ci siano molti modi per aggirare questo difetto, ma questo va oltre lo scopo di questo articolo.

Pro e contro dell'architettura codificatore-decodificatore

L'architettura encoder-decoder presenta vantaggi e svantaggi rispetto al modello solo decoder. Il primo caso è che il lato encoder non è vincolato dalla maschera causale. In una certa misura, puoi togliere le mani dal livello di attenzione ed eseguire il pooling o qualsiasi forma di attenzione lineare in modo aggressivo senza preoccuparti delle limitazioni di progettazione dell'autoregressione. Questo è un ottimo modo per scaricare il "contesto" meno importante sul codificatore. Puoi anche rimpicciolire l'encoder, il che è anche un vantaggio.

Un esempio di architettura codificatore-decodificatore richiesta è Charformer, che fa un uso audace dei codificatori e mitiga lo svantaggio di velocità dei modelli a livello di byte. Innovare dal lato del codificatore può portare rapidi vantaggi senza preoccuparsi delle significative insidie ​​del mascheramento causale.

Allo stesso tempo, rispetto a PrefixLM, uno svantaggio del codificatore-decodificatore è che all'ingresso e al target deve essere assegnato un budget fisso. Ad esempio, se il budget di input è di 1024 token, il lato codificatore deve adeguarsi a questo valore, il che potrebbe sprecare molti calcoli. Al contrario, in PrefixLM, input e target possono essere collegati direttamente, alleviando così questo problema.

Rilevanza rispetto ai modelli odierni e punti chiave

Nell'era odierna, una capacità chiave per essere un ricercatore e professionista LLM qualificato è essere in grado di dedurre pregiudizi induttivi sia dall'aspetto architettonico che dall'aspetto pre-formazione. Comprendere le sottili differenze può aiutare le persone a estrapolare e continuare a innovare.

Ecco i miei punti salienti:

I modelli codificatore-decodificatore e solo decodificatore sono entrambi modelli autoregressivi e differiscono a livello di implementazione e presentano vantaggi e svantaggi. Sono pregiudizi induttivi leggermente diversi. Quale utilizzare dipende dai casi d'uso a valle e dai vincoli dell'applicazione. Allo stesso tempo, i modelli di encoder in stile BERT possono essere considerati obsoleti per la maggior parte dei casi d’uso LLM e di nicchia.

Il target di denoising può essere utilizzato principalmente come supplemento al modello del linguaggio causale. Sono stati utilizzati con successo come "obiettivi di supporto" durante la fase di formazione. La formazione di modelli di linguaggio causale che utilizzano obiettivi di denoising spesso aiuta in una certa misura. Sebbene questo sia molto comune nel mondo dei modelli di codice (ovvero il code stuffing), è anche comune oggi per i modelli generici utilizzare un modello di linguaggio causale più alcuni obiettivi di denoising per il pre-addestramento.

L'attenzione bidirezionale può essere di grande aiuto per i modelli più piccoli, ma è superflua per i modelli più grandi. Si tratta per lo più di voci. Penso che l'attenzione bidirezionale abbia un pregiudizio induttivo, simile a molti altri tipi di modifiche al modello Transformer.

Infine, un riassunto. Attualmente non esiste una versione su larga scala del modello BERT in funzione: il modello BERT è stato deprecato e sostituito dal modello T5 con denoising (autoregressivo) più flessibile. Ciò è dovuto principalmente all’unificazione dei paradigmi, ovvero le persone preferiscono utilizzare un modello generale per eseguire vari compiti (piuttosto che utilizzare un modello specifico per un compito). Allo stesso tempo, il denoising autoregressivo può talvolta essere utilizzato come obiettivo secondario dei modelli linguistici causali.

Link originale: https://www.yitay.net/blog/model-architecture-blogpost-encoders-prefixlm-denoising