Chi ha preparato un esame con un solo libro conosce il punto dei rendimenti calanti. La prima lettura chiarisce l’impianto, la seconda fissa i dettagli, la terza serve ancora a qualcosa. Alla decima il libro non ha più niente da dire: le pagine sono identiche, e la testa pure. Rileggere ancora è tempo buttato. I grandi modelli linguistici sono arrivati allo stesso tornante, ma su scala planetaria. Il calcolo disponibile cresce di anno in anno; il testo di buona qualità su cui addestrarli no, è una risorsa finita, e i modelli di frontiera ne hanno già consumato una fetta larga. Quando i dati nuovi scarseggiano, la mossa ovvia è ripassare quelli vecchi — si chiama addestramento multi-epoca. Ma un modello, ripassando lo stesso corpus, satura dopo pochi giri, molto prima che il budget di calcolo sia esaurito. Resta la domanda scomoda: che cosa farsene di tutto quel calcolo in più, una volta che un singolo modello ha smesso di migliorare?
A questa domanda un gruppo di quattro ricercatori — tre di Q Labs, uno di Princeton — risponde con un cambio di prospettiva prima ancora che di tecnica. Il metodo si chiama q0, «pretraining a iper-epoca», e la sua tesi è semplice: smettere di lucidare un solo modello ben oltre il punto in cui le epoche aggiuntive aiutano, e usare quel calcolo per coltivare una popolazione di modelli diversi, combinandone le previsioni al momento dell’inferenza. È un’idea con una lunga genealogia teorica — l’induzione di Solomonoff suggerisce di non scommettere su una sola spiegazione dei dati ma di tenerne molte, pesandole per semplicità — qui riportata a terra. La realizzazione più diretta sarebbe l’ensemble classico: addestrare tanti modelli indipendenti e fare la media. Ma è anche una realizzazione grezza, e gli autori la criticano su tre fronti. Addestrare ogni modello da zero spreca quasi tutto il calcolo. Modelli allenati in modo indipendente hanno qualità simile, quindi aggiungerne non alza il livello. E mediarli con lo stesso peso ignora che alcuni sono più utili di altri. Le tre primitive di q0 nascono una per ciascun difetto.
Le tre primitive in fila. A sinistra, i cicli di learning rate salvano uno snapshot a ogni minimo di un singolo run. Al centro, la chain distillation fa sì che ogni snapshot impari dal precedente. A destra, il prior appreso assegna pesi diversi e tiene solo i K modelli migliori per l’ensemble finale.
Fotografare un solo studente, non assumerne cento
La prima primitiva risolve il costo. Invece di addestrare da zero decine di modelli, q0 ne allena pochissimi e li «fotografa» in momenti diversi del percorso. Il trucco è il ciclo: all’interno di una traiettoria di addestramento il learning rate riparte alto e viene fatto scendere fino a un valore minimo, e alla fine di ogni ciclo si salva una copia dei pesi — uno snapshot. Portare il learning rate in basso serve a far posare il modello in un minimo decente prima dello scatto; rialzarlo di colpo lo scaraventa fuori da quel minimo e lo spinge a esplorare una regione diversa. La salita e discesa ripetute producono snapshot ciascuno ben assestato, ma abbastanza diverso dagli altri da valere la pena di combinarli. A rinforzare l’effetto, il weight decay viene fatto variare in controfase rispetto al learning rate: alto learning rate e basso decay per esplorare, basso learning rate e alto decay per raccogliere i pesi in un bacino a norma bassa poco prima dello scatto. Un paio di traiettorie partite da inizializzazioni casuali diverse aggiungono varietà «tra» i percorsi, non solo dentro. Così un solo run pagato per intero rende molti membri dell’ensemble, invece di uno.
Ogni modello studia sugli appunti del precedente
Gli snapshot così raccolti restano però supervisionati solo dalle etichette vere, una parola giusta per posizione: la loro qualità individuale è limitata da ciò che quel segnale scarno può trasmettere. La seconda primitiva, la chain distillation, arricchisce il segnale. Dopo un rodaggio iniziale, ogni nuovo snapshot viene addestrato non solo sulle etichette ma anche contro il predecessore congelato, usato come insegnante, minimizzando
$$\mathcal{L}_c = (1-\alpha)\,\mathcal{L}_{\mathrm{CE}}(\theta_{n,c}) + \alpha\,T^{2}\,\mathrm{KL}\!\big(\sigma(f(x;\theta_{n,c-1})/T)\,\big\|\,\sigma(f(x;\theta_{n,c})/T)\big),$$
dove il primo termine è la solita cross-entropy sulle etichette e il secondo avvicina la distribuzione del nuovo modello a quella dell’insegnante, con $\alpha$ a dosare i due e $T$ la temperatura. C’è un’obiezione teorica ovvia: se l’insegnante è stato addestrato sugli stessi dati, che informazione nuova aggiunge? Anzi, lavori sul «collasso» dei modelli avvertono che ri-addestrare una rete sui propri output dovrebbe degradarla. Empiricamente si osserva il contrario, dalle born-again networks alla self-distillation: la distribuzione morbida dell’insegnante trasporta un «sapere oscuro» — le probabilità che assegna alle classi sbagliate rivelano somiglianze tra parole che l’etichetta secca non può dire — e riscala implicitamente il peso di ogni esempio secondo la confidenza dell’insegnante. Il segnale è, in senso stretto, più ricco delle sole etichette. Ogni modello parte quindi dagli appunti del compagno che l’ha preceduto, e la qualità della popolazione si accumula invece di ristagnare.
Non tutti i membri del comitato valgono uguale
Resta il terzo difetto: come combinare i modelli. Mediarli con lo stesso peso spreca l’informazione che alcuni generalizzano meglio, o coprono errori che altri non vedono. La terza primitiva è un prior appreso. Su un piccolo insieme di controllo, mai visto in addestramento, si cerca una distribuzione di pesi $w = \mathrm{softmax}(\beta)$ sugli $M$ modelli minimizzando la log-verosimiglianza negativa dell’ensemble:
$$\mathcal{L}(\beta) = -\frac{1}{|\mathcal{F}|}\sum_{t\in\mathcal{F}} \log\!\Big(\sum_{i=1}^{M} w_i\,p_{i,t}\Big).$$
I pesi stanno dentro il logaritmo e si mescolano le probabilità, non i logaritmi: la perdita non si spezza modello per modello, e questo costringe l’ottimizzazione a valutare i contributi congiuntamente. Con i pesi trovati, per qualsiasi budget di inferenza $K$ si tengono i $K$ modelli col peso più alto e si rinormalizza — un solo adattamento serve tutti i budget. La cosa notevole, emersa dall’analisi, è che il prior non sceglie i modelli individualmente migliori: a parità di otto membri condivide solo due degli otto scelti da un criterio «avido» sulla bontà singola, e spende gli altri su snapshot dalla perdita individuale peggiore ma complementari, bravi dove gli altri sbagliano.
I numeri, senza arrotondamenti gentili
Il banco di prova è lo «Slowrun challenge»: un transformer decoder-only da 1,8 miliardi di parametri, addestrato su 100 milioni di token di FineWeb e valutato su 10 milioni tenuti da parte, un regime volutamente piccolo e molto regolarizzato. La configurazione principale di q0 usa due traiettorie parallele da 64 cicli l’una, due epoche per ciclo, per un totale di 128 snapshot e 256 epoche. Il confronto è con un baseline forte: otto modelli indipendenti da 32 epoche ciascuno, mediati uniformemente.
A parità di budget, q0 raggiunge il baseline delle 256 epoche usando circa 56 epoche — 4,6 volte meno — e continua a migliorare oltre, chiudendo a una validation loss di 3,003 contro 3,048 del baseline. Anche limitandosi a otto membri per pareggiare la dimensione dell’ensemble di riferimento, il pareggio arriva a circa 67 epoche, 3,8 volte meno. Una variante scalata scende a 2,987 con 960 epoche complessive. Tradotto nell’efficienza sui dati misurata dalla sfida, il baseline è già a circa 10 volte, q0 sale a 12 volte a parità di budget e a 12,9 nella variante scalata. I guadagni si trasferiscono ai benchmark a valle: su ARC-Easy, PIQA e SciQ l’accuratezza media zero-shot passa da 0,644 del baseline a 0,657, fino a 0,660 nella variante scalata. Un’ablazione conferma il ruolo della chain distillation: toglierla peggiora la loss da 3,003 a 3,028 a 256 epoche. E l’allocazione ottimale del budget non è fissa, ma cresce a gradini con la scala; una regola empirica, che gli autori dichiarano indicativa e non legge, la riassume in $N^\star(E)\approx\max\!\big(1,\ \lfloor\log_2(E/E_0)\rfloor\big)$ con $E_0\approx 64$: grosso modo, ogni traiettoria parallela in più chiede di raddoppiare il budget di epoche.
Dove il conto non torna ancora
Gli autori sono espliciti sui limiti. Il primo è strutturale: q0 consegna i suoi guadagni come ensemble di $K$ modelli, e l’inferenza costa $K$ passaggi in avanti invece di uno. Un $K$ piccolo recupera gran parte del vantaggio, ma in molti scenari di produzione l’onere resta proibitivo. Non è un vincolo fondamentale — l’ensemble si può distillare in un singolo modello studente che gira al costo di uno solo — ma è un passo che il paper non compie. C’è poi il costo in addestramento: la chain distillation aggiunge un passaggio dell’insegnante per ciclo, senza propagazione all’indietro e quindi ottimizzabile con caching. Vale anche una cautela che gli stessi autori non nascondono: oltre le tre traiettorie parallele il vantaggio si assottiglia a differenze dell’ordine del millesimo di loss, e la regola a gradini «sbanda» rispetto a una pulita potenza di due. Soprattutto, tutto questo è misurato in un regime deliberatamente ridotto — 1,8 miliardi di parametri, 100 milioni di token — pensato come sfida controllata: se e come la ricetta si comporti alla scala dei modelli di frontiera resta una questione aperta.
Vale la pena rileggerlo proprio per la cornice, più che per i decimali. Per anni la ricetta del progresso è stata «più dati e più calcolo, insieme». Quando i dati di qualità diventano il fattore scarso, la domanda cambia forma: non quanto testo in più, ma come spendere meglio il calcolo su un testo che non cresce. q0 propone una risposta insieme antica e concreta — cercare tra molte ipotesi invece di raffinarne una sola — e ammette candidamente di essere un primo insieme di strumenti, non l’ultimo. Cercare dentro una popolazione, scrivono, è un problema diverso dallo scendere lungo un singolo gradiente, e probabilmente chiederà primitive ancora da inventare. È un’onestà rara, ed è la parte più utile del paper: dice dove guardare senza promettere di esserci già arrivato.
Il paper
Bishwas Mandal, Shmuel Berman, Akshay Vegesna, Samip Dahal, q0: Primitives for Hyper-Epoch Pretraining, arXiv:2606.03938 (2026). Disponibile su arXiv: arxiv.org/abs/2606.03938.
I commenti sono riservati agli iscritti.
Accedi per commentare