Cos’è l’attenzione in un transformer?
L’attenzione è la parte di un transformer che permette a ogni token di decidere quali token precedenti contano per lui. Dà un punteggio a ciascuno, trasforma i punteggi in pesi che sommano al 100% e prende un mix pesato delle loro informazioni. È così che «stanco» ritrova «il gatto», e che «pesca» capisce se si parla di frutta o di un lago.
▶ Prova tuPerché è importante
Una parola da sola è spesso ambigua. L’attenzione è il modo in cui un modello linguistico capisce a cosa si riferiscono «lui», «pesca» o «troppo grande», facendo prendere a ogni parola un po’ di significato da quelle prima.
In 6 minuti saprai
- L’attenzione permette a ogni parola di guardare indietro e prendere significato dalle parole che contano per lei.
- I pesi sommano sempre al 100%, quindi più attenzione su una parola vuol dire meno sulle altre.
- Cambia una parola e l’attenzione si sposta: per questo il contesto cambia ciò che un modello capisce.
Cosa eserciterai
Fai la testa di attenzione
Tocca le parole precedenti per versarci sopra attenzione. Spendi tutte e 10 le gocce, poi confronta con una testa addestrata. I pesi sono solo un esempio.
Il gatto dorme perché è stanco
Chi è «stanco»?
Testa addestrata: gatto 64% · dorme 18% · è 8%
Si legge: stanco = il gatto «Stanco» deve trovare chi è stanco. La testa addestrata mette quasi tutto il peso su «gatto», l’unico candidato che può dormire.
Siamo andati al lago per la pesca
Quale «pesca»: il frutto o con la canna?
Testa addestrata: lago 66% · per 16% · andati 8%
Si legge: pesca = andare a pescare Da sola, «pesca» potrebbe essere un frutto. Appoggiandosi a «lago», con un piccolo aiuto da «andati per», il significato si sposta verso l’acqua e la canna.
Il vaso non entra nella scatola . Troppo grande
Cosa è troppo grande?
Testa addestrata: vaso 57% · entra 14% · scatola 13%
Si legge: troppo grande = il vaso Qualcosa di troppo grande non ci sta dentro. Per dare senso a «grande», la testa guarda indietro al vaso, la cosa che deve entrare.
Il vaso non entra nella scatola . Troppo piccola
E adesso: cosa è troppo piccola?
Testa addestrata: scatola 55% · entra 14% · vaso 13%
Si legge: troppo piccola = la scatola Una sola parola ha ribaltato il significato, e i pesi si sono ribaltati con lei. L’attenzione si calcola da capo per ogni testo, non è una tabella fissa da consultare.
Dentro una testa di attenzione
Tocca ogni carta. Ogni token porta con sé tre piccole liste di numeri.
- 🔦 Query: cosa sto cercando?
- Il token che guarda manda una query, come «sono un aggettivo, mi serve un nome che possa essere stanco».
- 🏷️ Key: cosa offro?
- Ogni token precedente mostra una key, un’etichetta di ciò che è. Più una key corrisponde alla query, più alto è il suo punteggio.
- 📦 Value: cosa passo avanti?
- I punteggi diventano pesi che sommano al 100%. La query prende poi un mix pesato dei value dei token precedenti: soprattutto «gatto», un po’ degli altri.
- 🧠 Perché tante teste?
- Ogni strato usa molte teste affiancate. Una può collegare pronomi e nomi, un’altra seguire la parola appena prima, un’altra abbinare le parentesi.
Cosa può cercare una testa?
I ricercatori sbirciano dentro i modelli addestrati. Quali di questi schemi può imparare una testa di attenzione? Scegli tutte le risposte giuste.
- A quale nome si riferisce un pronome come «lei»
- La parola subito prima di quella attuale
- La parentesi aperta che una «)» chiude
- Il soggetto a cui appartiene un verbo
- Parole che arriveranno più avanti nella risposta
- Se la frase è vera nel mondo reale
Ricorda
Ogni token distribuisce il 100% della sua attenzione sui token precedenti e prende un mix di ciò che significano. Il contesto cambia il mix.
Ogni parola distribuisce il 100% della sua attenzione sulle parole precedenti e prende un mix di ciò che significano.
Dati chiave
- Il transformer, l’architettura dietro i grandi modelli linguistici di oggi, è stato presentato in un articolo del 2017 intitolato «Attention Is All You Need». · Fonte: Vaswani et al., Google, 2017
- Il transformer originale usava 8 teste di attenzione affiancate in ogni strato. · Fonte: Vaswani et al., Attention Is All You Need, 2017
- GPT-3 ha 96 strati con 96 teste di attenzione ciascuno. · Fonte: Brown et al., Language Models are Few-Shot Learners, OpenAI, 2020
- Esaminando un modello linguistico addestrato, i ricercatori hanno trovato singole teste che collegano i pronomi ai nomi a cui si riferiscono e i verbi ai loro complementi, senza che nessuno avesse mai insegnato la grammatica. · Fonte: Clark et al., What Does BERT Look At?, 2019
Aggiornato:
Domande frequenti
Cos’è la self-attention in parole semplici?
La self-attention permette a ogni parola di un testo di guardare le altre parole dello stesso testo e decidere quanto conta ciascuna per lei. Poi la parola prende un mix pesato del loro significato.
Cosa sono query, key e value?
Tre piccole liste di numeri che ogni token porta con sé. La query dice cosa cerca un token, la key dice cosa offre, e il value è ciò che passa avanti quando viene scelto.
Cos’è la multi-head attention?
Usare più teste di attenzione in parallelo nello stesso strato. Ogni testa impara a cercare un tipo diverso di relazione, e i loro risultati vengono combinati.
L’attenzione può guardare le parole future?
Non in un modello che scrive da sinistra a destra. Ogni token può prestare attenzione solo a sé stesso e ai token precedenti, perché quelli dopo non sono ancora stati scritti.
Termini correlati
