Modelli linguistici di grandi dimensioni

Che cos'è un modello linguistico?

Un modello linguistico stima la probabilità di un token o sequenza di token che si verificano all'interno di una sequenza più lunga di token. Un token può essere una parola, una sottoparola (un sottoinsieme di una parola) o anche un singolo carattere.

Prendi in considerazione la seguente frase e i token che potrebbero completarla:

When I hear rain on my roof, I _______ in my kitchen.

Un modello linguistico determina le probabilità di diversi token o sequenze di token per completare il vuoto. Ad esempio, la tabella delle probabilità identifica alcuni token possibili e le relative probabilità:

Probabilità Token
9,4% cucina la zuppa
5,2% riscaldare un bollitore
3,6% accovacciato
2,5% pisolino
2,2% relax

In alcune situazioni, la sequenza di token può essere un'intera frase, un paragrafo o perfino un intero saggio.

Un'applicazione può usare la tabella delle probabilità per fare previsioni. La previsione potrebbe essere la probabilità più alta (ad es. "cuocere la zuppa") o una selezione casuale tra i token con una probabilità superiore a una determinata soglia.

La stima della probabilità di ciò che riempie lo spazio vuoto in una sequenza di testo può essere estesa a attività più complesse, tra cui:

  • Generazione del testo.
  • Traduzione di testo da una lingua a un'altra.
  • Riassumere i documenti.

Modellando i pattern statistici dei token, i modelli linguistici moderni sviluppano rappresentazioni interne del linguaggio estremamente potenti e possono generare linguaggio plausibile.

Modelli linguistici n-grammi

Gli n-grammi sono sequenze ordinate di parole utilizzato per creare modelli linguistici, dove N è il numero di parole nella sequenza. Ad esempio, quando N è 2, l'n-gramma è chiamato 2-gramma (o bigramma); quando N è 5, l'n-gramma è chiamato 5-gramma. Data la seguente frase in un documento di addestramento:

you are very nice

I bigrammi risultanti sono i seguenti:

  • sei
  • sono molto
  • ottimo

Quando N è 3, l'n-gramma è chiamato 3-gramma (o trigramma). Data la stessa frase, gli n-grammi risultanti sono:

  • sei molto
  • sono molto belle

Dati due parole come input, un modello linguistico basato su 3 grammi può prevedere la probabilità della terza parola. Ad esempio, date le seguenti due parole:

orange is

Un modello linguistico esamina tutti i vari grammi che derivano dall'addestramento che iniziano con orange is per determinare la terza parola più probabile. Centinaia di 3-gram potrebbero iniziare con le due parole orange is, ma puoi concentrarti solo sulle due seguenti possibilità:

orange is ripe
orange is cheerful

La prima possibilità (orange is ripe) riguarda il frutto arancione, mentre la seconda possibilità (orange is cheerful) riguarda il colore arancione.

Contesto

Gli esseri umani possono conservare contesti relativamente lunghi. Mentre guardi l'atto 3 di uno spettacolo, mantengano conoscenza dei personaggi introdotti nell'Atto 1. Analogamente, la battuta finale di una lunga barzelletta ti fa ridere perché ricordi il contesto dall'impostazione della barzelletta.

Nei modelli linguistici, il contesto è un'informazione utile che precede o segue token di destinazione. Il contesto può aiutare un modello linguistico a determinare se "arancione" si riferisce a un agrume o a un colore.

Il contesto può aiutare un modello linguistico a fare previsioni migliori, ma 3 grammi di testo? Purtroppo, l'unico contesto fornito da un trigramma è costituito dalle prime due parole. Ad esempio, le due parole orange is non forniscono un contesto sufficiente per consentire al modello linguistico di prevedere la terza parola. A causa della mancanza di contesto, i modelli linguistici basati su 3-gram commettono molti errori.

N-grammi più lunghi fornirebbero certamente più contesto rispetto a N-grammi più brevi. Tuttavia, con l'aumento di N, l'occorrenza relativa di ogni istanza diminuisce. Quando N diventa molto grande, il modello linguistico in genere ha una sola istanza di ogni occorrenza di N token, il che non è molto utile per predire il token target.

Reti neurali ricorrenti

Neural ricorrente reti forniscono più contesto rispetto agli n-grammi. Una rete neurale ricorrente è un tipo di rete neurale che viene addestrata su una sequenza di token. Ad esempio, una rete neurale ricorrente può gradualmente apprendere (e imparare a ignorare) il contesto selezionato di ogni parola di una frase, in modo simile a come faresti quando ascolti qualcuno che parla. Una grande rete neurale ricorrente può acquisire contesto da un passaggio di diversi frasi.

Sebbene le reti neurali ricorrenti apprendano più contesto degli n-grammi, la quantità di contesto utile che le reti neurali ricorrenti possono intuitare è ancora relativamente limitato. Le reti neurali ricorrenti valutano le informazioni "token per token". I modelli linguistici di grandi dimensioni, oggetto della sezione successiva, possono invece valutare l'intero contesto contemporaneamente.

Tieni presente che l'addestramento delle reti neurali ricorrenti per contesti lunghi è limitato dal problema della scomparsa del gradiente.

Esercizio: verifica di aver compreso

Quale modello linguistico fa previsioni migliori per il testo in inglese?
  • un modello linguistico basato su 6 grammi
  • Un modello linguistico basato su 5-gram
La risposta dipende dalle dimensioni e dalla diversità del set di addestramento.
Se il set di addestramento comprende milioni di documenti diversi, il modello basato su 6 grammi avrà probabilmente prestazioni superiori sulla base di 5 grammi.
Il modello linguistico basato su 6 grammi.
Questo modello linguistico ha più contesto, ma a meno che non sia stato addestrato su molti documenti, la maggior parte dei 6-gram sarà rara.
Il modello linguistico basato su 5 grammi.
Questo modello linguistico ha meno contesto, perciò è improbabile che sono superiori rispetto al modello linguistico in base ai 6 grammi.