Scaling laws: perché i modelli migliorano quando crescono

Come crescono i modelli e perché non basta ingrandirli: le leggi di scala, la ricetta Chinchilla e il muro dei dati.
Immagine realizzata con IA
Le immagini presenti nel post possono essere realizzate o elaborate con strumenti di Intelligenza Artificiale. Questa scelta nasce anche dalla necessità di prevenire le continue contestazioni e richieste economiche improprie che ricevo relative a fotografie utilizzate che sono sempre state acquistate con regolare licenza.
Contenuti dell'articolo

Un modello da 175 miliardi di parametri sembrava irraggiungibile. Poi è arrivato un modello molto più piccolo, addestrato meglio, che su molti compiti se lo è mangiato. Non è un errore di misura e non è magia: nel mezzo è cambiato il modo di spendere il calcolo e di dosare i dati. In questo terzo pezzo della serie provo a raccontare perché i modelli migliorano quando crescono. E perché da un certo punto in poi crescere non basta più.

Se parti da zero, il primo passo sono i Transformer e il significato di parametri. Qui faccio un passo indietro: non come è fatto un modello dentro, ma quanto conviene farlo grande e con quali risorse.

Cos’è una legge di scala

Una legge di scala è una relazione tra una misura di dimensione e una misura di qualità. Nel caso dei modelli da una parte ci sono parametri, token e calcolo, dall’altra la loss, cioè l’errore che il modello fa quando prova a prevedere la parola successiva. Più la loss è bassa, più il modello ha assorbito la regolarità del testo.

Nel 2020 Kaplan e colleghi hanno misurato questa relazione su modelli di dimensioni diverse e hanno trovato una regolarità sorprendente: la loss cala seguendo una legge di potenza in tutte e tre le risorse. In pratica, ogni volta che moltiplichi una risorsa per un fattore fisso, l’errore scende di una frazione fissa. Su un grafico con i due assi in scala logaritmica, la curva diventa quasi una retta.

Gli esponenti sono piccoli e vale la pena scriverli: circa 0,076 per i parametri, 0,095 per i dati e 0,050 per il calcolo. Numeri così bassi spiegano perché le cose sono lente. Per dimezzare la distanza dall’errore minimo non basta raddoppiare: serve un fattore molto più grande. Ogni giro costa soldi veri.

C’è un limite che va detto subito. Queste non sono leggi fisiche, sono regolarità empiriche. Valgono per una famiglia di modelli e per un dataset preciso, con una certa architettura e una certa ricetta di addestramento. Le costanti cambiano se cambi architettura o dati. Sono una bussola per orientarsi, non una profezia.

I tre ingredienti: parametri, dati e calcolo

I parametri sono i numeri che il modello impara: i pesi delle matrici dentro ogni blocco del Transformer. Sono la capacità del modello, lo spazio in cui può immagazzinare regolarità. Un modello con più parametri può rappresentare funzioni più complesse, ma solo se ha abbastanza esempi per riempire quello spazio.

I dati sono i token che il modello vede durante l’addestramento. Non contano solo in quantità: conta la qualità, conta la varietà e conta quante volte lo stesso testo viene ripetuto. Un corpus enorme e pieno di rumore vale meno di un corpus più piccolo e ben filtrato.

Il calcolo è il budget, cioè quante operazioni matematiche puoi permetterti di fare. È il vincolo pratico, quello che si traduce in bolletta e in settimane di GPU accese. Parametri e dati non sono gratis: ogni token in più va moltiplicato per i parametri presenti, quindi il costo cresce su entrambi i fronti.

I tre ingredienti si compensano. A parità di calcolo puoi scegliere un modello grande con pochi dati oppure un modello più piccolo con molti dati. Per anni la risposta istintiva è stata la prima. Chinchilla ha mostrato che l’istinto sbagliava.

La ricetta Chinchilla e i 20 token per parametro

Nel 2022 DeepMind pubblica Chinchilla, uno studio che rifà l’esperimento con più cura: addestra decine di modelli di dimensioni diverse, con quantità di dati diverse. Misura la loss alla fine. Il risultato è una mappa che dice, per ogni budget di calcolo, quanti parametri e quanti token usare.

Il numero rimasto nella memoria collettiva è questo: a parità di budget, il punto ottimale è circa 20 token per parametro. Un modello da 70 miliardi addestrato su 1,4 trilioni di token batte modelli più grandi addestrati con la ricetta precedente. E GPT-3, con i suoi 175 miliardi di parametri e circa 300 miliardi di token, secondo quella ricetta era sotto-addestrato: troppi parametri per i dati che aveva visto.

Grafico della loss su scala logaritmica al crescere del calcolo, con il punto ottimale di Chinchilla a circa 20 token per parametro
La frontiera ottimale scende come una retta su scala logaritmica. A parità di calcolo, la ricetta Chinchilla sposta il punto verso modelli più piccoli e più dati.

La lezione è controintuitiva perché va contro il numero che si legge nel nome del modello. Per anni si è misurata la potenza in miliardi di parametri, come se fossero cavalli. Chinchilla dice che a parità di spesa conviene un modello più piccolo e più affamato di testo. Il collo di bottiglia si sposta dai parametri ai dati.

Attenzione a non leggere la ricetta come una legge da applicare alla lettera. Il rapporto di 20 a 1 è il punto ottimale per un certo budget e per una certa ricetta. Se hai più calcolo, il punto si sposta: i modelli grandi tornano convenienti, ma solo se hai anche i token per riempirli.

Cosa vuol dire “ottimale” e perché non basta ingrandire

Ottimale qui significa una cosa precisa: la loss più bassa ottenibile con quel budget di calcolo. Non il modello migliore in assoluto, non il più intelligente, non il più adatto al tuo caso. È un ottimo vincolato. Il vincolo è quanto puoi spendere.

Questo cambia il modo di leggere la curva. Se hai dieci volte il calcolo di ieri, il punto ottimale non è dieci volte più grande in parametri: è una combinazione diversa di parametri e token. Chi continua a raddoppiare solo i parametri compra un modello più costoso e sottoutilizzato.

C’è poi un secondo costo che le leggi di scala classiche non guardano: l’inferenza. Un modello grande costa di più a ogni domanda, per sempre, anche dopo l’addestramento. Per questo nella pratica si sceglie spesso un modello più piccolo del punto ottimale di addestramento: si paga un po’ di qualità e si risparmia su ogni risposta. È un compromesso ragionevole, non un errore.

E c’è il tempo. Addestrare un modello enorme richiede mesi e un’organizzazione che regga il ritmo. A parità di qualità finale, un modello più piccolo addestrato più a lungo può essere la scelta giusta se devi aggiornarlo spesso. La legge di scala ti dice dove sta il minimo, non quanto ti costa arrivarci.

I salti di capacità esistono davvero?

Per anni si è raccontata una storia semplice: le capacità emergono. Il modello va male, va male, va male, poi a una certa dimensione succede qualcosa e improvvisamente sa fare il compito. Curve piatte seguite da un gradino verticale, come un interruttore che si accende.

Nel 2023 Schaeffer e colleghi pubblicano un articolo dal titolo provocatorio, “Are Emergent Abilities a Mirage?”, cioè: le capacità emergenti sono un miraggio? La loro tesi è che molti di quei salti dipendono dalla metrica scelta. Se misuri l’accuratezza esatta, il modello passa da zero a uno e sembra un salto. La curva diventa liscia se usi una metrica continua, che dà parzialmente ragione a una risposta quasi giusta.

Il dibattito è aperto e non voglio chiuderlo in due righe. Da una parte c’è chi osserva comportamenti nuovi che compaiono solo oltre certe soglie. Dall’altra c’è chi mostra che il modo di misurare decide la forma del grafico. Le due cose possono essere vere insieme: la capacità cresce in modo continuo, mentre la misura la racconta a scalini.

La conseguenza pratica è utile. Quando vedi un grafico con un ginocchio netto, chiediti sempre quale metrica è stata usata. Un salto può essere reale nel comportamento, ma la sua forma dipende da come lo guardi.

Il muro dei dati

Se la ricetta dice di addestrare su molti più token, la domanda successiva è: dove li prendi? Il testo pubblico di qualità non è infinito. Le stime che circolano parlano di esaurimento entro pochi anni, se si continua a consumarlo al ritmo attuale. È il cosiddetto muro dei dati.

Le contromisure sono tre e nessuna è gratis. La prima sono i dati sintetici: far generare testo a un modello per addestrarne un altro. La seconda sono i curricola, cioè ordinare i dati dal semplice al complesso invece di mescolarli a caso. La terza è passare più volte sullo stesso corpus, accettando che il guadagno cali a ogni giro.

I dati sintetici hanno un problema noto: se il modello impara dalle uscite di un altro modello, tende a copiare anche i suoi errori e a perdere varietà. Servono filtri, verifica e una quota di dati veri che tenga il terreno. Non sono una fontana gratuita, sono un modo per allungare il corpus che hai.

Ripetere lo stesso testo aiuta meno di quanto sembri. Il modello rivede esempi già visti e impara a memoria la superficie, non la regolarità profonda. Per questo la qualità e la selezione contano più della quantità grezza: un token scelto bene vale più di molti token qualsiasi.

Perché un modello piccolo oggi batte un gigante di ieri

Torniamo all’inizio. Un modello recente da pochi miliardi di parametri batte un modello da centinaia di miliardi di qualche anno fa. Non è magia e non è un trucco di marketing. Tre cose si sommano.

La prima è la ricetta. Oggi si sa dosare parametri e dati, quindi un modello piccolo viene addestrato su molti più token di quanti ne vedesse un gigante di allora. La seconda sono i dati: corpus filtrati meglio, deduplicati, con una selezione che elimina il rumore. La terza è la distillazione: il modello piccolo non impara solo dal testo grezzo, impara anche imitando le risposte di un modello grande. Questo gli trasferisce capacità che da solo non avrebbe.

Il risultato è che il numero di parametri, da solo, dice sempre meno. Un base model è il prodotto di questa filiera: dati, ricetta e distillazione, non solo dimensione. Due modelli con lo stesso numero di parametri possono avere qualità molto diverse se sono stati addestrati in modo diverso.

Questo non vuol dire che la dimensione non conti. Vuol dire che conta insieme alle altre due variabili. Il confronto tra modelli di anni diversi va fatto a parità di ricetta, non a parità di numero sul nome.

Cosa cambia per chi usa i modelli

La prima conseguenza è pratica: smettere di scegliere un modello dal numero di parametri. Quel numero dice quanto è grande il contenitore, non quanto è stato riempito bene. Chiedi invece quanti dati ha visto, con quale ricetta e quando è stato addestrato.

La seconda riguarda i costi. Se il tuo compito è ripetitivo e ben definito, un modello piccolo addestrato bene spesso basta e costa una frazione. Tenere un gigante per riassumere tre righe di testo è uno spreco che si vede in bolletta alla fine del mese.

La terza riguarda la valutazione. Le classifiche misurano compiti standard, non il tuo. Le leggi di scala descrivono l’andamento medio, non il caso singolo. Prima di scegliere, prova il modello sui tuoi esempi: è l’unico test che conta davvero.

E c’è una lezione più generale. Per anni si è pensato che la strada fosse una sola: più parametri. Oggi sappiamo che la strada ha tre corsie e che la più stretta, i dati, è quella che rischia di chiudersi per prima. Il prossimo salto probabilmente non arriverà da un modello più grande, ma da un modo migliore di usare quello che c’è.

Domande frequenti

Che cosa misura la loss?

Misura quanto è sorpreso il modello dal token successivo. Se assegna poca probabilità alla parola giusta, la loss sale; se le assegna molta, scende. È una misura di compressione del testo, non di intelligenza.

Le leggi di scala valgono anche per i modelli piccoli?

La forma vale per famiglie di modelli di dimensioni diverse, purché addestrate con la stessa ricetta. Cambiano le costanti e cambia la precisione delle stime, perché i modelli piccoli sono più sensibili ai dettagli della ricetta.

Perché 20 token per parametro e non di più?

Perché a parità di calcolo ogni token in più va pagato con meno parametri, o viceversa. Venti è il punto in cui il guadagno dei due lati si bilancia, secondo le misure di Chinchilla.

Un modello più grande è sempre più capace?

No. Un modello grande addestrato su pochi dati può perdere contro uno più piccolo addestrato bene. La dimensione aiuta solo se c’è abbastanza testo per riempirla.

I dati sintetici sono la soluzione al muro dei dati?

Sono un modo per allungare il corpus, non una soluzione completa. Senza filtri e senza una quota di dati veri, il rischio è amplificare gli errori del modello che li ha generati.

Le capacità emergenti sono un mito?

Il dibattito è aperto. Molti salti sono spiegabili con la metrica scelta, altri sembrano comportamenti nuovi. La posizione più onesta è che la capacità cresce in modo continuo e la misura la racconta a gradini.

Per approfondire: i Transformer, query, key e value, anatomia di un blocco e la KV cache.

Newsletter settimanale con le ultime novità sull’intelligenza artificiale

Corso gratuito sull’Intelligenza Artificiale, dalle nozioni base ai concetti più complessi

Condividi:

Potrebbero interessarti