Dallo SGD agli spettri: la teoria dietro l’evoluzione dei pesi

Un gruppo di Caltech modella l'addestramento come un'equazione differenziale stocastica e mostra che i valori singolari dei pesi si comportano come particelle che si respingono. Ne esce una spiegazione del perché i loro spettri assumono sempre la stessa forma "corpo più coda".

Quando poche persone salgono su un vagone quasi vuoto, non si siedono a caso. Ognuna sceglie un posto lontano dalle altre, e più il vagone si riempie più i corpi si distribuiscono in un ordine curiosamente regolare, mantenendo tra loro una distanza minima. I fisici conoscono bene questo comportamento: nei sistemi di particelle cariche si chiama repulsione, e ha una controparte esatta nel mondo delle matrici, dove certi numeri chiamati autovalori sembrano tenersi a distanza gli uni dagli altri come i passeggeri sui sedili. Un gruppo di ricercatori del Caltech ha mostrato che i numeri che descrivono i pesi di una rete neurale, mentre la rete viene addestrata, si comportano proprio come quei passeggeri. E che la repulsione, alimentata dall’apparente casualità dell’addestramento, non è un fastidio ma il meccanismo che dà forma a ciò che la rete impara.

Il paper si intitola From SGD to Spectra: A Theory of Neural Network Weight Dynamics ed è firmato da Brian Richard Olsen, Sam Fatehmanesh, Frank Xiao, Adarsh Kumarappan e Anirudh Gajula. È stato presentato a ICML 2025. La domanda che si pone è tra le più antiche e imbarazzanti del deep learning: sappiamo che le reti funzionano, ma non sappiamo bene perché. E in particolare non abbiamo una teoria che colleghi ciò che accade nel piccolo — i minuscoli aggiornamenti che la discesa del gradiente stocastica, lo SGD, applica ai pesi a ogni mini-batch — a ciò che si osserva nel grande, cioè la forma complessiva che le matrici dei pesi assumono a fine addestramento.

Cosa manca alle teorie esistenti

Per capire la posta in gioco serve un attrezzo: i valori singolari di una matrice. Ogni matrice di pesi può essere scomposta e descritta da un elenco di numeri non negativi che misurano quanto «peso» essa dà a certe direzioni. L’insieme di questi valori è lo spettro della matrice, e la sua forma racconta molto: dice se il modello sta usando molte direzioni in modo bilanciato o se poche direzioni dominano. È una specie di radiografia dei pesi.

All’inizio dell’addestramento, quando i pesi sono casuali, questa radiografia è ben compresa: lo spettro segue la legge di Marchenko-Pastur, un risultato classico della teoria delle matrici casuali, con il bordo governato dalla distribuzione di Tracy-Widom. Il problema è che l’addestramento distrugge quella forma pulita. Dopo un po’ di batch, gli spettri delle reti — quasi indipendentemente dall’architettura — assumono una struttura che gli autori chiamano bulk più tail, «corpo più coda»: la maggior parte dei valori singolari resta ammassata in una gobba, mentre pochi valori grandi si staccano formando una coda pesante. E questa coda, si sa da lavori precedenti, correla con la capacità di generalizzare.

Il punto è che nessuna teoria spiegava questa trasformazione. La teoria delle matrici casuali descrive solo la condizione iniziale. Le equazioni che modellano lo SGD esistevano, ma si concentravano su parametri scalari o su modelli a basso rango, senza catturare la dinamica dell’intera matrice. Mancava, scrivono gli autori, un quadro unico che legasse il micro al macro. È quel ponte che il paper prova a costruire.

Il rumore come scultore

Il punto di partenza è tradurre lo SGD, che procede a passi discreti, in un flusso continuo nel tempo. Ogni aggiornamento sposta i pesi un po’ nella direzione che riduce la perdita, ma con un tremolio dovuto al fatto che ogni mini-batch è un campione diverso dei dati. Gli autori scrivono questa dinamica come un’equazione differenziale stocastica sull’intera matrice dei pesi $W$:

$$dW = -\eta\, \nabla_W L\, dt + \sqrt{2\eta D}\, dW_t$$

Il primo termine è la discesa vera e propria, guidata dal gradiente della perdita $\nabla_W L$ con learning rate $\eta$. Il secondo è il tremolio: un rumore browniano di intensità regolata dalla costante di diffusione $D$. La mossa chiave del paper è chiedersi non come si muova la matrice intera, ma come si muovano i suoi valori singolari. Applicando il calcolo di Itô alla decomposizione della matrice, gli autori ricavano l’equazione che governa ciascun valore singolare $\sigma_k$:

$$d\sigma_k = \Big[-\eta\, u_k^\top (\nabla_W L)\, v_k + \eta D\Big(\tfrac{m-n+1}{2\sigma_k} + \sum_{j\neq k}\frac{\sigma_k}{\sigma_k^2-\sigma_j^2}\Big)\Big]dt + \sqrt{2\eta D}\, d\beta_k$$

La formula sembra intimidatoria, ma il pezzo che conta è la somma con $j\neq k$. Ogni valore singolare $\sigma_k$ sente una spinta che dipende dagli altri: quando due valori si avvicinano, il denominatore $\sigma_k^2-\sigma_j^2$ si fa piccolo e la spinta esplode, allontanandoli. È esattamente la repulsione dei passeggeri sul vagone. In matematica questo tipo di moto ha un nome, moto browniano di Dyson, e descrive un gas di particelle cariche — un «gas di Coulomb» — che si respingono mentre vengono scosse dal caso. Gli autori dimostrano che i quadrati dei valori singolari seguono proprio un moto di Dyson con parametro $\beta = 1$. Il rumore dello SGD, in questa lettura, non spinge i valori a collassare tutti insieme: li allarga, li tiene distanziati, li scolpisce. Da qui l’immagine con cui il paper riassume l’idea: lo SGD è uno scultore spettrale.

Lo scultore spettrale: come evolve lo spettro dei valori singolari batch 0 gobba di Marchenko-Pastur batch 200 il bordo cresce corpo coda batch 400 struttura corpo + coda addestramento →

All’inizio lo spettro è una gobba pulita prevista dalla teoria delle matrici casuali. Man mano che l’addestramento procede, il rumore dello SGD allontana i valori singolari e ne stacca alcuni sulla destra, formando la coda pesante che il paper collega alla generalizzazione.

Dove finisce lo spettro

La repulsione spiega perché lo spettro si allarga, ma non basta a spiegare la forma finale. Il gradiente della perdita, che nella prima parte dell’analisi viene messo da parte, torna in gioco: attira i valori verso una configurazione utile. Gli autori trattano questa attrazione con un’approssimazione di campo medio e ricavano la distribuzione a cui lo spettro tende a riposo. È una densità di tipo gamma con coda a legge di potenza, che in forma essenziale si scrive:

$$p_\sigma(\sigma)\;\propto\;\sigma^{\frac{m-n+1}{2}}\; e^{-\frac{\beta_1}{4\eta D}\,\sigma^2}$$

Dove $m$ e $n$ sono le dimensioni della matrice, $\beta_1$ è una costante che misura la forza di richiamo del gradiente e $D$ la diffusione del rumore. La cosa notevole è che questa forma matematica — una gobba principale più una coda che si assottiglia lentamente — è proprio la struttura «corpo più coda» che si osserva empiricamente nelle reti addestrate. È, sostengono gli autori, la prima spiegazione teorica di quel fenomeno.

I numeri, onestamente

Essendo un paper di teoria, non ci sono record di accuratezza da sventolare: il metro di giudizio è se le previsioni combaciano con ciò che le reti fanno davvero. Gli autori addestrano con SGD tre architetture — un GPT-2 su testo di Shakespeare, un Vision Transformer e un MLP su MNIST e CIFAR — e confrontano.

Al batch 0 lo spettro aderisce quasi esattamente alla legge di Marchenko-Pastur, senza valori oltre il bordo di Tracy-Widom: le ipotesi di inizializzazione casuale reggono. Al batch 200 le previsioni cominciano a sottostimare la massa vicino al bordo. Al batch 400 la coda è ormai pronunciata, con un manipolo di valori grandi ben fuori dal supporto previsto per una matrice casuale. In un esperimento separato gli autori seguono gli 8 valori singolari più grandi di uno strato lineare di un MLP su CIFAR-10 lungo 800 batch: l’algoritmo di previsione ricostruisce bene le traiettorie, con scarti che iniziano ad allargarsi verso il batch 300, quando emerge la coda.

C’è poi un risultato che vale da solo il paper. Se il rumore dello SGD fosse davvero casuale e isotropo, non ci sarebbe motivo per cui il termine di repulsione risulti correlato con le altre forze del sistema. Eppure lo è, e fortemente. Gli autori interpretano questa correlazione come la prova che i «colpi» apparentemente casuali dello SGD sono in realtà allineati con la geometria del paesaggio di perdita: quando due valori si avvicinano troppo, il rumore tende a spingere proprio nella direzione che li separa. Il tremolio, insomma, non si limita a far scappare il modello dai minimi troppo stretti; rinforza attivamente la dinamica che serve. È una forma sofisticata di regolarizzazione implicita.

Il rumore dello SGD non è ciò che il modello deve sopportare per imparare. È parte di come impara.

I limiti dichiarati

Gli autori sono espliciti su cosa hanno semplificato. L’intera derivazione assume che il rumore dello SGD sia isotropo, cioè uguale in tutte le direzioni. È un’idealizzazione, e loro lo dicono chiaramente: il rumore vero dello SGD è anisotropo e dipende dai parametri. Questa è la spiegazione che avanzano per lo scarto più visibile dei loro esperimenti: quando provano a prevedere il conteggio dei valori nella coda, ne sottostimano parecchi, e attribuiscono la discrepanza proprio all’anisotropia trascurata. Estendere la teoria al caso anisotropo è indicato come la direzione futura cruciale.

Vanno pesati anche altri due punti. Gli esperimenti sono controllati e su piccola scala — GPT-2, non un modello di frontiera — una scelta rivendicata come metodo per isolare i meccanismi, ma pur sempre una distanza dai sistemi reali. E la distribuzione stazionaria viene trattata in modo fenomenologico, con un adattamento ai dati; la sua giustificazione poggia su un risultato recente secondo cui i punti stazionari di una rete corrispondono all’ottimo di un problema convesso ben definito, il che rende lecito il campo medio ma resta un’assunzione teorica da non dare per scontata.

Perché importa

Se il rumore è uno scultore, allora si può imparare a usarlo. Gli autori indicano alcune direzioni concrete: schemi di inizializzazione che pre-configurino la struttura corpo più coda per accelerare la convergenza; scheduling del learning rate che regoli il rapporto $\eta/D$ in base a quanto lo spettro si è concentrato; potatura dei pesi che preservi i pochi contributori della coda mentre comprime aggressivamente il corpo; ottimizzatori che trattino diversamente le direzioni a valore singolare grande e quelle del corpo. Sono ipotesi, non prodotti, ma discendono in modo diretto dalla teoria.

Al di là delle applicazioni, resta l’idea che dà il titolo al paper: un ponte dallo SGD agli spettri, dal micro degli aggiornamenti al macro delle forme. Per anni il «corpo più coda» è stato un fatto osservato di cui si sospettava l’importanza senza saperlo derivare. Qui viene fatto scendere da un’equazione, e la casualità dell’addestramento smette di essere un difetto da tollerare per diventare un ingranaggio. È un tassello nella risposta, ancora lontana dall’essere completa, alla domanda che tiene aperto tutto il campo: perché il deep learning funziona.

Il paper

Brian Richard Olsen, Sam Fatehmanesh, Frank Xiao, Adarsh Kumarappan, Anirudh Gajula, From SGD to Spectra: A Theory of Neural Network Weight Dynamics, ICML 2025 (PMLR 267). Disponibile su arXiv: arxiv.org/abs/2507.12709.

I commenti sono riservati agli iscritti.

Accedi per commentare