Una tecnologia più recente, i modelli linguistici di grandi dimensioni (LLM) prevedono un token o una sequenza di token, a volte anche molti paragrafi di token previsti. Ricorda che un token può essere una parola, una sottoparola (un sottoinsieme di una parola) o anche un singolo carattere. Gli LLM fanno previsioni molto migliori rispetto ai modelli linguistici N-gram o alle reti neurali ricorrenti perché:
- Gli LLM contengono molti più parametri rispetto ai modelli ricorrenti.
- Gli LLM raccolgono molto più contesto.
Questa sezione introduce l'architettura più efficace e ampiamente utilizzata per la creazione di LLM: Transformer.
Che cos'è un Transformer?
I Transformer sono l'architettura all'avanguardia per una vasta gamma di applicazioni di modelli linguistici, come la traduzione:

I trasformatori completi sono costituiti da un encoder e un decoder:
- Un codificatore converte il testo di input in una rappresentazione intermedia. Un encoder è un'enorme rete neurale.
- Un decodificatore converte questa rappresentazione intermedia in testo utile. Un decodificatore è anche un'enorme rete neurale.
Ad esempio, in un traduttore:
- Il codificatore elabora il testo di input (ad esempio una frase in inglese) in qualche rappresentazione intermedia.
- Il decodificatore converte questa rappresentazione intermedia in testo di output (ad esempio la frase francese equivalente).

Fai clic sull'icona per scoprire di più sui trasformatori parziali.
Che cos'è l'auto-attenzione?
Per migliorare il contesto, i Transformer si basano molto su un concetto chiamato auto-attenzione. In pratica, per conto di ogni token di input, l'autoattenzione pone la seguente domanda:
"In che misura ogni altro token di input influisce sull'interpretazione di questo token?"
Il termine "auto" in "auto-attenzione" si riferisce alla sequenza di input. Alcuni meccanismi di attenzione ponderano le relazioni tra i token di input e i token in una sequenza di output, ad esempio una traduzione, o con i token di un'altra sequenza. Tuttavia, l'auto-attenzione tiene conto solo dell'importanza delle relazioni tra i token nella sequenza di input.
Per semplificare, supponiamo che ogni token sia una parola e che il contesto completo sia costituito da una sola frase. Prendi in considerazione la seguente frase:
The animal didn't cross the street because it was too tired.
La frase precedente contiene undici parole. Ognuna delle undici parole presta attenzione alle altre dieci, chiedendosi quanto ciascuna di queste dieci parole sia importante per se stessa. Ad esempio, tieni presente che la frase contiene il pronome it. I pronomi sono spesso ambigui. Il pronome esso si riferisce in genere a un nome o a una frase nominale recente, ma nella frase di esempio a quale nome recente si riferisce esso: all'animale o alla strada?
Il meccanismo di self-attention determina la pertinenza di ogni parola vicina al pronome esso. La Figura 3 mostra i risultati: più blu è la linea, più importante è la parola per il pronome it. In altre parole, animale è più importante di strada per il pronome esso.

Al contrario, supponiamo che la parola finale della frase cambi come segue:
The animal didn't cross the street because it was too wide.
In questa frase rivista, l'auto-attenzione dovrebbe valutare strada come più pertinente di animale per il pronome esso.
Alcuni meccanismi di auto-attenzione sono bidirezionali, il che significa che calcolano i punteggi di pertinenza per i token precedenti e successivi alla parola oggetto di attenzione. Ad esempio, nella Figura 3, noterai che le parole su entrambi i lati di it vengono esaminate. Pertanto, un meccanismo di self-attention bidirezionale può raccogliere il contesto dalle parole ai lati della parola a cui viene prestata attenzione. Al contrario, un meccanismo di self-attention unidirezionale può raccogliere il contesto solo dalle parole su un lato della parola a cui viene prestata attenzione. L'autoattenzione bidirezionale è particolarmente utile per generare rappresentazioni di intere sequenze, mentre le applicazioni che generano sequenze token per token richiedono l'autoattenzione unidirezionale. Per questo motivo, gli encoder utilizzano l'autoattenzione bidirezionale, mentre i decodificatori utilizzano quella unidirezionale.
Che cos'è l'autoattenzione multi-head?
Ogni livello di auto-attenzione è in genere composto da più funzioni di auto-attenzione. L'output di un livello è un'operazione matematica (ad esempio, media ponderata o prodotto scalare) dell'output dei diversi head.
Poiché ogni livello di auto-attenzione viene inizializzato con valori casuali, diversi head possono apprendere relazioni diverse tra ogni parola a cui viene applicata l'attenzione e le parole vicine. Ad esempio, il livello di auto-attenzione descritto nella sezione precedente si concentrava su come determinare a quale sostantivo si riferiva il pronome esso. Tuttavia, altri livelli di auto-attenzione potrebbero apprendere la pertinenza grammaticale di ogni parola rispetto a tutte le altre o altre interazioni.
Fai clic sull'icona per scoprire di più su Big O per i modelli linguistici di grandi dimensioni.
Fai clic sull'icona per scoprire di più su come vengono addestrati gli LLM.
Perché i Transformers sono così grandi?
I trasformatori contengono centinaia di miliardi o addirittura migliaia di miliardi di parametri. In questo corso è stato generalmente consigliato di creare modelli con un numero inferiore di parametri rispetto a quelli con un numero maggiore di parametri. Dopotutto, un modello con un numero inferiore di parametri utilizza meno risorse per fare previsioni rispetto a un modello con un numero maggiore di parametri. Tuttavia, la ricerca mostra che i transformer con più parametri superano costantemente quelli con meno parametri.
Ma come fa un LLM a generare testo?
Hai visto come i ricercatori addestrano gli LLM a prevedere una o due parole mancanti e potresti non essere impressionato. Dopotutto, la previsione di una o due parole è essenzialmente la funzionalità di completamento automatico integrata in vari software di testo, email e di authoring. Forse ti starai chiedendo in che modo gli LLM possono generare frasi, paragrafi o persino haiku sull'arbitraggio.
In effetti, gli LLM sono essenzialmente meccanismi di completamento automatico che possono predire (completare) automaticamente migliaia di token. Ad esempio, considera una frase followed by a masked sentence:
My dog, Max, knows how to perform many traditional dog tricks. ___ (masked sentence)
Un LLM può generare probabilità per la frase mascherata, tra cui:
Probabilità | Parola o parole |
---|---|
3,1% | Ad esempio, può sedersi, restare fermo e girarsi. |
2,9% | Ad esempio, sa sedersi, stare fermo e girarsi. |
Un LLM sufficientemente grande può generare probabilità per paragrafi e interi temi. Puoi considerare le domande di un utente a un LLM come la frase "data" followed da una maschera immaginaria. Ad esempio:
User's question: What is the easiest trick to teach a dog? LLM's response: ___
L'LLM genera probabilità per varie risposte possibili.
Un altro esempio è un LLM addestrato su un numero enorme di "problemi con enunciato" matematici che può dare l'impressione di svolgere ragionamenti matematici sofisticati. Tuttavia, questi LLM si limitano a completare automaticamente un problema di parole.
Vantaggi degli LLM
Gli LLM possono generare testo chiaro e facile da comprendere per un'ampia gamma di segmenti di pubblico di destinazione. Gli LLM possono fare previsioni sulle attività su cui sono addestrati esplicitamente. Alcuni ricercatori affermano che gli LLM possono anche fare previsioni per gli input su cui non sono stati addestrati esplicitamente, ma altri ricercatori hanno confutato questa affermazione.
Problemi con gli LLM
L'addestramento di un LLM comporta molti problemi, tra cui:
- Raccogliere un enorme set di addestramento.
- Richiede diversi mesi, enormi risorse di calcolo e energia elettrica.
- Risolvere le sfide del parallelismo.
L'utilizzo di LLM per dedurre le previsioni causa i seguenti problemi:
- Gli LLM allucinano, in quanto le loro previsioni spesso contengono errori.
- Gli LLM consumano enormi quantità di risorse di calcolo ed elettricità. L'addestramento degli LLM su set di dati più grandi in genere riduce la quantità di risorse necessarie per l'inferenza, anche se i set di addestramento più grandi richiedono più risorse di addestramento.
- Come tutti i modelli di ML, gli LLM possono presentare tutti i tipi di bias.