«Il gatto dorme sul divano» e «Il gatto dorme sul teorema»: due frasi grammaticalmente identiche, ma una delle due vi ha fatto alzare un sopracciglio. Quel sopracciglio alzato è, in miniatura, esattamente ciò che la perplexity misura in un modello linguistico. È la metrica più citata nei paper sugli LLM — e una delle meno capite. Vale la pena smontarla pezzo per pezzo, perché dietro c’è l’idea fondante di tutto il campo: un modello linguistico è una macchina che assegna probabilità alle frasi.
I modelli n-gram, il problema degli zeri e la perplessità come pagella della scommessa stanno nel libro.
Leggi «Scommettere sulla prossima parola: i modelli n-gram» nel libro →
Un modello linguistico è un misuratore di probabilità
Prima di generare testo, un modello linguistico fa una cosa più umile: dà un punteggio. Per ogni sequenza di token, calcola quanto quella sequenza è plausibile secondo ciò che ha imparato durante l’addestramento. Non lo fa in blocco: procede un token alla volta. Dato «Il gatto dorme sul», il modello produce una distribuzione di probabilità su tutto il vocabolario — decine di migliaia di token — e a ciascuno assegna una quota: divano magari il 12%, letto l’8%, teorema uno 0,001%.
La probabilità dell’intera frase è il prodotto delle probabilità dei singoli token, ognuno condizionato a tutti i precedenti. È come una catena: ogni anello dipende da quelli prima. Se anche un solo anello è debolissimo — un token che il modello considerava quasi impossibile — la probabilità complessiva crolla.
Dalla probabilità alla sorpresa
C’è un problema pratico: moltiplicare tante probabilità piccole produce numeri microscopici, scomodi da confrontare e da calcolare. La soluzione, ereditata dalla teoria dell’informazione di Claude Shannon, è passare ai logaritmi: invece di moltiplicare probabilità, si sommano log-probabilità. E il logaritmo negativo di una probabilità ha un nome evocativo: sorpresa (o autoinformazione).
L’intuizione è quotidiana. Se un evento era quasi certo — la probabilità era alta — la sorpresa è vicina a zero: nessuna notizia. Se un evento era quasi impossibile, la sorpresa esplode. La media delle sorprese su tutti i token di un testo si chiama cross-entropy: è, letteralmente, quanto il modello è rimasto spiazzato in media a ogni parola.
La perplexity non misura quanto un testo è bello o corretto. Misura quanto il modello se lo aspettava.
E finalmente: la perplexity
La perplexity è semplicemente l’esponenziale della cross-entropy media: PPL = exp(cross-entropy). Questo passaggio, che sembra un vezzo matematico, serve a rendere il numero leggibile. Una perplexity di 20 ha un’interpretazione concreta: a ogni passo, il modello è mediamente incerto come se dovesse scegliere alla cieca tra 20 alternative equiprobabili. È il «numero effettivo di strade» tra cui il modello esita.
L’analogia migliore è il navigatore in una città sconosciuta. In autostrada la perplexity è bassa: c’è una sola strada plausibile, si va dritti. In un centro storico pieno di vicoli, a ogni incrocio ci sono dieci svolte possibili: perplexity alta. Un buon modello linguistico è uno che, leggendo testo reale, si trova quasi sempre «in autostrada»: aveva già previsto dove si andava a parare.
La probabilità di una frase è il prodotto delle probabilità dei singoli token, ognuna condizionata a ciò che precede. La perplexity la ricapitola in un numero: quante alternative equiprobabili il modello stava soppesando, in media, a ogni passo.
A cosa serve davvero
Storicamente, la perplexity è stata la metrica per confrontare modelli linguistici: si prende un corpus di test mai visto in addestramento, lo si fa «leggere» al modello e si misura quanto è rimasto sorpreso. Meno sorpresa, migliore il modello — almeno nel compito di prevedere testo. GPT-2, GPT-3 e i loro successori sono stati valutati anche così, su corpus standard come WikiText.
Ma la perplexity ha usi più operativi. Durante l’addestramento è la spia sul cruscotto: se scende, il modello sta imparando; se sale sul set di validazione mentre scende su quello di training, è overfitting. Nel confronto tra tokenizzatori o tra tecniche di compressione dei modelli (quantizzazione, pruning), la perplexity dice quanto si è perso per strada. E nei sistemi di detection, un testo con perplexity anormalmente bassa può suggerire che sia stato generato proprio da quel modello: la macchina non si sorprende mai di se stessa.
I limiti: dove la metrica inganna
Attenzione però ai confronti disinvolti. La perplexity dipende dal tokenizzatore: due modelli che spezzano il testo in token diversi producono numeri non direttamente confrontabili, come misurare una strada in chilometri e in miglia. Dipende dal corpus di test: una perplexity bassa su Wikipedia non dice nulla sulla capacità di scrivere una mail o del codice. E soprattutto non misura la qualità della generazione: un modello può prevedere benissimo il prossimo token e produrre comunque testi vaghi, prolissi o fattualmente sbagliati.
È il motivo per cui, nell’era dei modelli instruction-tuned, la perplexity ha perso centralità a favore di benchmark su compiti concreti e valutazioni umane. Un chatbot non deve prevedere il testo più probabile: deve rispondere bene. Le due cose sono correlate, ma non coincidono — anzi, il fine-tuning con feedback umano peggiora tipicamente la perplexity sul testo generico, pur migliorando l’utilità percepita.
Perché vi riguarda
Se lavorate con gli LLM, la perplexity vi riguarda in almeno tre momenti. Quando leggete un paper o una model card, è spesso il primo numero dichiarato: ora sapete interpretarlo e sapete quando il confronto è scorretto. Quando fate fine-tuning di un modello open source, è la metrica che vi dice se state andando nella direzione giusta senza dover valutare a mano centinaia di output. E quando vi chiedete perché un modello «va meglio» sull’inglese che sull’italiano, la risposta passa anche da qui: meno testo italiano nel training significa più sorpresa a ogni token, cioè perplexity più alta — e generazioni meno sicure. Dietro il sopracciglio alzato del modello c’è tutta la sua storia di lettore.

I commenti sono riservati agli iscritti.
Accedi per commentare