Un’intelligenza artificiale può scrivere i numeri interni di una rete neurale senza addestrarla? Ho replicato un’idea nata al MIT su un compito piccolo e controllato. In fondo alla pagina le reti vere girano nel tuo browser.
Una rete neurale è una macchina che riceve dei numeri (i pixel di un’immagine) e ne produce altri (“è un cerchio al 90%”). In mezzo ci sono migliaia di moltiplicazioni governate da altri numeri, i pesi. I pesi sono tutto: la stessa rete con pesi diversi fa cose completamente diverse.
Normalmente nessuno li scrive a mano. Si parte da numeri casuali, si mostrano alla rete migliaia di esempi con la risposta giusta, e un algoritmo li corregge un po’ alla volta. È come imparare a tirare a canestro: provi e aggiusti. Il risultato funziona, ma nessuno sa spiegare cosa fa ogni singolo peso. Una scatola nera.
Il 2 novembre 2026 quattro ricercatori del MIT hanno pubblicato Sparks of Weight-Space Programming: un modello linguistico avanzato (Astra) legge i pesi come fossero codice, li corregge e in alcuni casi li scrive da zero. Per tre videogiochi ha scritto in una sola risposta reti che battevano quelle addestrate per cento milioni di passi.
Volevo sapere se vale anche per le immagini. E senza dare per scontato che funzionasse.
Il compito: immagini in bianco e nero di 16×16 pixel con dentro un cerchio, un quadrato o un triangolo. Le forme cambiano dimensione, sono ruotate, spostate, a volte piene e a volte solo il contorno, con un po’ di rumore come in una foto scattata male. Le genera un programma, quindi sono sempre nuove e nessuno può impararle a memoria.
La rete da riempire è minuscola: circa duemila pesi, abbastanza piccola da girare su un telefono. Ho confrontato tre modi di ottenerli.
Le regole erano fissate prima di cominciare: le 1 200 immagini del voto finale non le ha viste nessuno prima, e sono state usate una volta sola. Ho anche cercato trucchi nei dati (all’inizio la dimensione della forma da sola bastava a indovinare nel 60% dei casi) e corretto il generatore.
Test da 1 200 immagini, margine di errore circa ±1,5 punti. Astra valutata su un test a parte, mai usato prima.
Astra ha progettato una rete sensata. Leggendo i suoi pesi si capisce il ragionamento: otto rilevatori di bordo, uno per direzione, poi tre regole. Quadrato: molti bordi orizzontali e verticali. Triangolo: bordi obliqui sbilanciati. Su quadrati e triangoli indovina 98 volte su 100.
Ma ha dimenticato il cerchio. Non ha scritto nessuna regola per riconoscerlo: il cerchio vince solo quando le altre due regole dicono entrambe di no. Metà dei cerchi finisce classificata come quadrato o triangolo. Sulla carta non si vede; un solo sguardo ai risultati l’avrebbe rivelato.
Qui sotto le forme vengono generate al volo, con lo stesso programma dei test, e passano sotto le tre reti vere: i pesi scritti da Astra, quelli progettati da Claude e quelli addestrati. Le reti sono state riscritte in JavaScript e girano nel tuo browser; i conteggi partono da zero. Con i cursori puoi spingere le forme fuori dalle condizioni di progetto e vedere chi crolla prima.
Oltre i valori di progetto (rumore 0.08, rotazione 15°, traslazione 2 px) le forme sono fuori distribuzione: nessuna rete le ha mai viste.
Prossimi passi: dare ad Astra i risultati del suo primo tentativo e chiederle di correggere, come nell’esperimento 4 del MIT; poi portare la rete migliore su Android e iPhone, offline.