Una panoramica accessibile del Transformer: solo attenzione per la modellazione di sequenze

Sintesi del paper “Attention Is All You Need” (Vaswani et al., 2017)

La sfida

I compiti di trasduzione di sequenze (es. traduzione automatica) richiedono catturare dipendenze a lungo raggio tra token, senza sacrificare l’efficienza di addestramento su larga scala. Le architetture encoder–decoder dominanti basate su ricorrenze (LSTM/GRU con attenzione) o su convoluzioni profonde hanno migliorato i benchmark, ma soffrono di:

  • Parallelismo limitato dovuto a calcoli sequenziali o a profondità elevate.
  • Difficoltà crescente nel modellare relazioni a lunga distanza all’aumentare della distanza tra token.

L’autoattenzione era stata usata come componente ausiliaria, non come spina dorsale. Questi vincoli emergono nei compromessi computazionali e nei risultati riportati in Tab. 1 e Tab. 2.

Segnaposto per Tab. 1 — Confronto complessità e lunghezza del cammino (RNN vs CNN vs Self-Attention)
Tab. 1. Confronto dei costi computazionali e della lunghezza massima del cammino informativo tra token per diverse architetture.

La soluzione: il Transformer

Il Transformer sostituisce ricorrenze e convoluzioni con la sola attenzione. Ogni livello comprende:

  • Autoattenzione multi-testa (multi-head self-attention).
  • Rete feed-forward applicata posizione per posizione.
  • Connessioni residue e normalizzazione di livello per stabilità di training.
Segnaposto per Fig. 1 — Architettura encoder–decoder del Transformer
Fig. 1. Schema dell’architettura Transformer con blocchi encoder e decoder.

Il cuore è l’attenzione a prodotto scalare scalato, che usa query, key e value:

$$\mathrm{Attention}(Q, K, V) = \mathrm{softmax}\!\left(\frac{QK^{\top}}{\sqrt{d_k}}\right)V$$

L’attenzione multi-testa esegue tale meccanismo in sottospazi proiettati in parallelo:

$$\text{head}_i = \mathrm{Attention}(QW_i^Q, KW_i^K, VW_i^V), \quad \mathrm{MultiHead}(Q,K,V)=\mathrm{Concat}(\text{head}_1,\dots,\text{head}_h)W^O$$

Segnaposto per Fig. 2 — Meccanismo di attenzione multi-testa
Fig. 2. La multi-head attention consente di catturare diversi tipi di relazioni in parallelo.

Il decoder usa una maschera causale per la generazione autoregressiva e un’attenzione incrociata per condizionarsi sugli stati dell’encoder. Poiché l’attenzione è agnostica all’ordine, le posizioni dei token vengono codificate con funzioni sinusoidali, fornendo segnali posizionali sia assoluti sia relativi.

Eliminando dipendenze seriali, il Transformer permette piena parallelizzazione sulle posizioni della sequenza in addestramento e riduce la lunghezza massima del cammino informativo tra due token a un singolo passo.

Evidenze empiriche

Su WMT 2014 con vocabolari BPE (32k), il Transformer stabilisce un nuovo stato dell’arte a singolo modello:

  • En→De: 27.3 BLEU (base) e 28.4 BLEU (big)
  • En→Fr: 38.1 BLEU (base) e 41.8 BLEU (big)

Questi risultati superano precedenti singoli modelli e perfino alcuni ensemble. L’addestramento è sensibilmente più rapido rispetto a RNN/CNN:

  • Modello base: ≈12 ore su 8 GPU NVIDIA P100 (En→De).
  • Modello big: ≈3.5 giorni su 8 GPU P100.
Segnaposto per Tab. 2 — Risultati BLEU su WMT14 per En→De e En→Fr (modelli base e big)
Tab. 2. Confronto dei punteggi BLEU e dei tempi di addestramento con modelli precedenti.

Messaggio chiave

L’autoattenzione, da sola, è sufficiente (e spesso preferibile) per modellare strutture a lungo raggio, combinando:

  • Alto parallelismo in addestramento.
  • Percorsi informativi brevi tra token.
  • Semplicità modulare (attenzione + feed-forward + normalizzazione) utile per la ricerca e la produzione.

Limiti noti: costo quadratico della self-attention piena nella lunghezza della sequenza e dipendenza dalle codifiche posizionali. Questo motiva linee future verso attenzioni più efficienti (sparse, locali o approssimate) per input molto lunghi.