Attenzione a Prodotto Scalare nei Trasformatori: Perché Si Usa e Come Funziona
Chiarimento: “Conversione a Punto” → Attenzione a Prodotto Scalare
Ti riferisci al meccanismo di attenzione a prodotto scalare scalato al centro dell'architettura Transformer (Vaswani et al., 2017).
Perché il Prodotto Scalare?
- Misura di somiglianza: il prodotto scalare
Q·Kᵀquantifica l'allineamento tra vettori query e key. Valore alto = alta rilevanza. - Efficienza computazionale: si riduce a moltiplicazione matriciale in batch (GEMM), altamente ottimizzata su GPU/TPU.
- Parallelismo: tutte le posizioni vengono elaborate simultaneamente—nessuna ricorrenza.
- Allineamento soft: softmax normalizza i punteggi in una distribuzione di probabilità (i pesi sommano a 1), consentendo attenzione differenziabile e amichevole al gradiente.
Passo dopo Passo (Semplificato)
- Token di input → embeddings.
- Proiezioni lineari creano le matrici Query (Q), Key (K), Value (V).
- Punteggi =
Q Kᵀ / √d_k(la scalazione stabilizza i gradienti). - Pesi di attenzione =
softmax(Punteggi). - Contesto =
Pesi × V→ rappresentazione di output.
Alternative
- Attenzione Additiva (Bahdanau):
tanh(W₁Q + W₂K)— più parametri, più lenta. - Multi-head attention: teste di prodotto scalare parallele con diverse proiezioni — cattura relazioni diverse.
La miscela di espressività, velocità e amicizia con l'hardware dell'attenzione a prodotto scalare ha reso i Trasformatori l'architettura dominante per l'NLP e oltre.