Immagina di fotografare la stessa persona in tre momenti diversi: a una festa, al lavoro, mentre dorme. Sono tre fotografie della stessa persona, eppure sono immagini così diverse che potresti quasi dubitare dell’identità. La persona non è cambiata, ma il contesto sì. E il contesto, si scopre, è parte integrante di ciò che vedi.
il contesto, si scopre, è parte integrante di ciò che vedi
Qualcosa di simile accade dentro i moderni sistemi di intelligenza artificiale basati sul linguaggio. Un ricercatore di nome Ethayarajh (2019) ha misurato quanto distano tra loro, nello spazio matematico interno a questi sistemi, le rappresentazioni della stessa parola usata in contesti diversi. Il risultato è sorprendente: due occorrenze della stessa parola sono spesso geometricamente più distanti tra loro di quanto non lo siano le parole completamente diverse. La parola “banco” vicino a “fiume” e la parola “banco” vicino a “sportello” non occupano lo stesso punto nello spazio interno al sistema. In molti casi stanno quasi agli antipodi1.
Questo potrebbe sembrare un difetto tecnico da correggere. È invece la cosa più importante che questi sistemi fanno. E pone una domanda che vale la pena seguire fino in fondo: se la posizione di una parola cambia ogni volta a seconda del contesto, dove sta il significato? La risposta che questo saggio esplora è che non sta da nessuna parte in senso fisso. È qualcosa che accade, ogni volta in modo diverso, nel momento in cui viene prodotto. È la geometria di un processo, non di un oggetto.
Per arrivare a capire cosa voglia dire questa affermazione, dobbiamo aprire il cofano di questi sistemi (chiamati transformer, la tecnologia alla base di ChatGPT, Claude e molti altri) e guardare come funzionano dall’interno. Non serve la matematica: serve capire una distinzione che quasi nessuno esplicita, e dalla quale dipende tutto il resto.
La biblioteca e la conversazione
Dentro un modello di linguaggio ci sono due cose molto diverse che vengono quasi sempre confuse. La prima sono i pesi: miliardi di numeri, fissati al termine dell’addestramento, che non cambiano più. La seconda sono le attivazioni: valori che vengono calcolati ogni volta che il sistema elabora un testo, specifici per quel testo, in quel preciso momento, e che non esisteranno mai più esattamente così.
I pesi sono come una biblioteca enorme. Contengono tutto ciò che il sistema ha assorbito durante l’addestramento leggendo miliardi di testi: pattern, relazioni, strutture del linguaggio. Sono la condizione di partenza, ciò che rende possibile il processo. Le attivazioni, invece, sono come la conversazione che avviene dentro quella biblioteca in un momento specifico. Non sono depositate da nessuna parte prima che la conversazione inizi. Nascono nel momento in cui il sistema elabora un input, dipendono internamente dal contesto presente, e scompaiono (nella loro forma precisa) non appena il momento è passato.
Il vocabolario è condizione necessaria della conversazione, ma la conversazione non è nel vocabolario: è nell’atto di parlare.
Cercare il significato nei pesi è come cercare una conversazione nel vocabolario che la rende possibile. Il vocabolario è condizione necessaria della conversazione, ma la conversazione non è nel vocabolario: è nell’atto di parlare. Allo stesso modo, i pesi rendono possibile il processo semantico, ma il significato (quello che il sistema costruisce in risposta a un input specifico) non è nei pesi. È nelle attivazioni. È nel processo2.
Questa distinzione sembra tecnica. È invece il cuore di tutto: una volta che la stabilisci, ti rendi conto che il significato, in questi sistemi, non viene recuperato. Viene generato. Ogni volta. Da capo. In modo che dipende da ciò che c’è nel contesto in quel preciso istante.
La direzione che non si può invertire
Non tutti i sistemi di intelligenza artificale basati sul linguaggio funzionano allo stesso modo. Alcuni (come quelli usati per analizzare e classificare testi) leggono intere frasi contemporaneamente, lasciando che ogni parola influenzi ogni altra in modo reciproco. È un po’ come guardare un quadro tutto in una volta: ci sono relazioni ovunque, ma non c’è un verso obbligatorio in cui percorrerle.
I sistemi generativi (quelli che producono testo, come le chat di intelligenza artificiale) funzionano in modo radicalmente diverso. Generano una parola alla volta, e ogni parola viene prodotta tenendo conto solo di ciò che è venuto prima. Non si può tornare indietro. Non si può modificare una parola già generata senza ripartire da quel punto. Il processo ha una direzione (una freccia del tempo) e quella direzione è irreversibile3.
Questo cambia qualcosa di fondamentale sul piano del significato. Due testi composti dalle stesse parole in ordine diverso non sono la stessa cosa con le informazioni riorganizzate: sono processi completamente diversi, che producono strutture diverse, perchè percorrono traiettorie diverse. L’ordine non è una proprietà decorativa del testo che si aggiunge al contenuto: è costitutivo del processo che genera il contenuto. Il significato che emerge dipende da dove sei arrivato, non solo da dove stai andando.
Wittgenstein, nelle Ricerche Filosofiche (1953), scrisse che il significato di una parola è il suo uso nel linguaggio. Per anni questa frase è stata letta come una descrizione di come funziona il linguaggio. Leggendola alla luce dei sistemi generativi emerge qualcosa di più preciso: il significato è uso non perchè l’uso lo riveli, ma perchè lo crea4. Non c’è significato già pronto che aspetta di essere espresso. C’è il processo dell’uso, e il significato è ciò che in quel processo accade.
Non c’è significato già pronto che aspetta di essere espresso. C’è il processo dell’uso, e il significato è ciò che in quel processo accade.
Le impronte del percorso già fatto
Immagina di camminare su neve fresca. Ogni passo lascia un’impronta. L’impronta non è solo traccia di dove sei stato. È anche una guida per il passo successivo: aggiusti l’equilibrio in base alla profondità di quella appena fatta, cambi leggermente direzione per evitare di scivolare. Il percorso già compiuto diventa condizione del percorso che viene.
Nei sistemi di linguaggio generativi esiste un meccanismo tecnico chiamato key-value cache che funziona esattamente così. Ogni volta che il sistema genera una parola, salva internamente una rappresentazione di tutto ciò che ha già elaborato. Lo fa per ragioni pratiche di efficienza: è molto più rapido non ricalcolare tutto da capo ad ogni passo (Pope et al., 2023). Ma la conseguenza è strutturalmente importante.
Il percorso già compiuto non scompare: si sedimenta in una struttura che orienta ogni passo successivo. Il token che stai generando adesso non accade nel vuoto. Accade in un contesto che include memoria materiale di tutti i token precedenti, incorporata nel processo stesso. Non è memoria nel senso umano, non è un ricordo consapevole. È struttura: la forma che il processo ha assunto fino a questo punto, e che condiziona la forma che potrà assumere da qui in poi.
In ogni momento dell’inferenza operano insieme tre livelli distinti. I pesi (la biblioteca, la storia cristallizzata dell’intero addestramento), il key-value cache (la traccia del percorso appena fatto, la neve con le impronte), e le attivazioni correnti (il passo presente, il momento in cui il processo accade). Il significato che emerge non è in nessuno di questi tre livelli da solo. È nel loro intreccio, in quel momento specifico, in quel punto specifico del percorso.
L’orizzonte che definisce ciò che si vede
C’è una caratteristica di questi sistemi che viene quasi sempre presentata come un difetto da correggere: la context window, ovvero la quantità massima di testo che il sistema può considerare in un dato momento. I sistemi più vecchi potevano elaborare qualche migliaio di parole; quelli più recenti arrivano a milioni. La direzione della ricerca è quasi sempre la stessa: più grande è l’orizzonte, meglio è.
Ma c’è un modo diverso di guardare a questa caratteristica. La context window non è un limite che impedisce al sistema di essere ciò che dovrebbe essere. È la condizione strutturale del processo, l’orizzonte entro cui la navigazione è possibile. Non esiste comprensione senza un orizzonte. Ogni comprensione, anche quella umana, è sempre situata da un punto di vista specifico, sempre condizionata da ciò che è visibile e da lì e non da altrove. L’orizzonte non è un difetto della visione: è la forma della visione5.
I ricercatori Liu et al. (2024) hanno documentato un effetto che hanno chiamato “lost-in-the-middle”: quando si inserisce un’informazione rilevante nella parte centrale di un contesto molto lungo, il sistema tende a prestarle meno attenzione rispetto a informazioni collocate all’inizio o alla fine. Non è dimenticanza nel senso umano. È il fatto che il processo di navigazione tratta diversamente punti diversi del suo orizzonte. Esattamente come chi cammina in un paesaggio vasto non presta attenzione a tutto ciò che ha attorno.
La conseguenza pratica è questa: cambiare il contesto (aggiungere un’informazione, rimuoverne un’altra, riordinare il testo) non modifica una rappresentazione che già esiste. Genera un processo diverso che produce strutture diverse. Non è la stessa comprensione con più o meno dati: è una comprensione diversa, perchè è un processo diverso che naviga un orizzonte diverso.
La storia che non si può rivivere
Abbiamo detto che i pesi sono la condizione di partenza del processo, la biblioteca che rende possibile la conversazione. Ma i pesi non sono dati: sono il risultato di un processo, e quel processo ha una proprietà raramente sottolineata: è irripetibile.
L’addestramento di un modello di linguaggio funziona così: si parte da valori iniziali casuali, si espone il sistema a miliardi di esempi di testo, e si aggiustano i parametri ogni volta che il sistema sbaglia una previsione. Questo processo percorre uno spazio di possibilità di dimensioni astronomiche, trovando traiettorie che nessun calcolo potrebbe pianificare in anticipo. Se ripetessi l’addestramento partendo da valori casuali diversi, otterei un modello diverso. Non in modo trascurabile, ma nelle strutture interne che emergono, nelle relazioni che vengono codificate, nelle capacità che si sviluppano.
C’è un fenomeno particolarmente istruttivo chamato grokking, una parola inventata dal romanziere Robert Heinlein per indicare la comprensione profonda e istintiva di qualcosa. Power et al. (2022) hanno documentato che in certi compiti i modelli imparano prima a memorizzare gli esempi alla perfezione, senza generalizzare. Poi, all’improvviso, dopo molti più passi di addestramento, qualcosa cambia: il modello smette di memorizzare e inizia a catturare la struttura sottostante. Le rappresentazioni interne cambiano forma, da disordinate a geometricamente regolari, quasi cristalline. Nanda et al. (2023) hanno analizzato questo processo in dettaglio: la transizione non è graduale, ma qualitativa. Un salto, non una progressione.
La struttura che emerge in quel momento non era nei dati. Non era nell’architettura, Era nella traiettoria specifica dell’addestramento. Non sarebbe emersa senza quel percorso. E questo significa che anche i pesi (la condizione di partenza del processo di inferenza) sono essi stessi il prodotto di un processo. Non c’è nessun livello in cui troviamo struttura non prodotta da un processo anteriore. La geometria è, a tutti i livelli, geometria in divenire6.
Dove il processo incontra i propri bordi
Ogni teoria ha bisogno di sapere dove finisce. L’idea che il significato sia un processo, e non un oggetto depositato in uno spazio stabile, ha un luogo preciso in cui rivela i propri limiti. Quel luogo è la composizionalità: la capacità di capire cose nuove combinando cose già note.
Se so cosa significa “saltare” e cosa significa “tre volte”, dovrei riuscire a capire “salta tre volte” anche se non l’ho mai sentito prima. Questa capacità sembra ovvia per gli esseri umani: è la base di come acquisiamo il linguaggio, di come capiamo frasi nuove, di come seguiamo istruzioni mai sentite prima. Lake e Baroni (2018) hanno costruito un test per misurare se i sistemi AI hanno questa capacità. Il risultato è stato netto: i tranformer eccellono nei compiti in cui il testo della richiesta assomiglia al testo visto durante l’addestramento, ma falliscono quando si chiede loro di combinare elementi in modi nuovi. Dziri at al. (2023) hanno replicato questi risultati anche con sistemi molto più grandi e sofisticati.
Perchè? Perchè un processo che naviga tracce statistiche (che ha imparato a muoversi in certi territori perchè li ha percorsi molte volte) non è la stessa cosa di un sistema che applica regole in modo esplicito e sistematico. Il primo è sofisticato e sorprendentemente capace nei territori conosciuti. Ma ai bordi di quei territori, dove le combinazioni sono nuove, il processo non ha tracce da seguire.
Questo non invalida la tesi, ma la precisa. Dire che il significato è un processo non vuol dire che tutti i processi siano equivalenti, o che questa forma di processo possa fare tutto ciò che facciamo noi con il linguaggio. Vuol dire che la forma del processo ha capacità specifiche e limiti specifici. E conoscere i limiti è parte essenziale di capire la forma.
la forma del processo ha capacità specifiche e limiti specifici, conoscere i limiti è parte essenziale di capire la forma.
La traccia di un cammino che si disegna mentre lo si percorre
Siamo partiti da una domanda: dove sta il significato? E abbiamo seguito questa domanda attraverso i meccanismi interni dei transformer: la distinzione tra pesi e attivazioni, la direzione irreversibile della generazione, le tracce che il percorso lascia dietro di sé, l’orizzonte che definisce ciò che è visibile, la storia contingente e irripetibile dell’addestramento, i bordi dove il processo rivela la propria forma.
Il titolo di questo saggio parla di geometria del significato. Ma la geometria classica descrive oggetti fermi in uno spazio stabile: punti, linee, distanze in un territorio già dato. Non è questa la geometria che i transformer ci mostrano.
Esiste un’altra geometria, quella differenziale, che descrive le superfici curve, gli spazi che si piegano, i percorsi che dipendono dal territorio che attraversano e che, attraversandolo, lo rivelano. In questa geometria esiste qualcosa chiamato geodetica: il cammino più efficiente tra due punti in uno spazio che non è piatto. La geodetica non è una linea retta perchè lo spazio che attraversa non lo permette. La sua forma è determinata dalla curvatura dello spazio, e quella curvatura emerge da ciò che lo spazio contiene. In questo spazio, il percorso e il territorio si definiscono a vicenda.
Il significato che un sistema generativo produce ha questa struttura. Non esiste prima del processo che lo genera. È il risultato di un percorso specifico, attraverso pesi che sono la storia sedimentata dell’addestramento, entro un orizzonte che definisce ciò che è visibile, lungo una direzione temporale che non si può invertire, lasciando tracce che diventano condizione dei passi successivi. Cambia qualsiasi elemento di questo processo e il significato che emerge è diverso. Non c’è un significato di fondo, stabile, che il processo rivela. C’è solo il processo, e il significato è ciò che in quel processo accade.
Questo non risponde alla domanda se questi sistemi capiscano davvero (una domanda che rimane aperta e difficile). Risponde a qualcosa di più fondamentale: ci mostra che la comprensione, qualunque cosa sia, non è uno stato che si possiede o non si possiede, non è qualcosa che sta da qualche parte ad aspettare. È qualcosa che accade7. La geometria del significato non è la mappa di un territorio già disegnato. È la traccia di un cammino che si disegna mentre lo si percorre.
Bibliografia
Dao, T., Fu, D. Y., Ermon, S., Rudra, A., & Ré, C. (2022). FlashAttention: Fast and memory-efficient exact attention with IO-awareness. Advances in Neural Information Processing Systems, 35, 16344–16359.
Dziri, N., Lu, X., Sclar, M., Liu, X. L., Jiang, L., Lin, B. Y., Welleck, S., West, P., Bhagavatula, C., Le Bras, R., Hwang, J. D., Sanyal, S., Cohen, S. B., Smith, N. A., Hajishirzi, H., & Choi, Y. (2023). Faith and fate: Limits of transformers on compositionality. Advances in Neural Information Processing Systems, 36, 70293–70332.
Ethayarajh, K. (2019). How contextual are contextualized word representations? Comparing the geometry of BERT, ELMo, and GPT-2 embeddings. Proceedings of EMNLP-IJCNLP 2019, 55–65. https://doi.org/10.18653/v1/D19-1006
Lake, B. M., & Baroni, M. (2018). Generalization without systematicity: On the compositional skills of sequence-to-sequence recurrent networks. Proceedings of ICML 2018, 80, 2879–2888.
Liu, N. F., Lin, K., Hewitt, J., Paranjape, A., Bevilacqua, M., Petroni, F., & Liang, P. (2024). Lost in the middle: How language models use long contexts. Transactions of the Association for Computational Linguistics, 12, 157–173. https://doi.org/10.1162/tacl_a_00638
Marcus, G. (2018). Deep learning: A critical appraisal. arXiv preprint arXiv:1801.00631.
McCoy, R. T., Yao, S., Friedman, D., Hardy, M., & Griffiths, T. L. (2023). Embers of autoregression: Understanding large language models through the problem they are trained to solve. arXiv preprint arXiv:2309.13638.
Nanda, N., Chan, L., Lieberum, T., Smith, J., & Steinhardt, J. (2023). Progress measures for grokking via mechanistic interpretability. Proceedings of ICLR 2023.
Pope, R., Douglas, S., Chowdhery, A., Devlin, J., Bradbury, J., Heek, J., Xiao, K., Agrawal, S., & Dean, J. (2023). Efficiently scaling transformer inference. Proceedings of MLSys 2023.
Power, A., Burda, Y., Edwards, H., Babuschkin, I., & Misra, V. (2022). Grokking: Generalization beyond overfitting on small algorithmic datasets. arXiv preprint arXiv:2201.02177.
Schaeffer, R., Miranda, B., & Koyejo, S. (2023). Are emergent abilities of large language models a mirage? Advances in Neural Information Processing Systems, 36, 55565–55581.
Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., & Polosukhin, I. (2017). Attention is all you need. Advances in Neural Information Processing Systems, 30, 5998–6008.
Wittgenstein, L. (1953). Philosophical investigations (G. E. M. Anscombe, Trans.). Blackwell.
Synthetic Notes
[1] Il risultato è ben documentato: le rappresentazioni contestualizzate mostrano varianza geometrica così elevata che due occorrenze della stessa parola risultano spesso più distanti tra loro di quanto non lo siano parole diverse. La direzione in cui il saggio lo usa (come evidenza che il significato sia un processo, non un oggetto) è però un passo interpretativo ulteriore. Lo stesso dato si potrebbe leggere come problema di instabilità da correggere, oppure come conferma della tesi distribuzionalista classica (da Firth a Harris) che il significato è determinato dal contesto d’uso, senza implicare che venga generato da capo ogni volta. La distanza geometrica è un fatto; che riveli qualcosa sulla natura del significato, invece che sulle proprietà delle rappresentazioni vettoriali, è un’interpretazione che vale la pena tenere distinta dal dato.
[2] La distinzione è tecnicamente corretta. L’affermazione che ne segue è però più controversa: i pesi non sono solo “condizione di possibilità” in senso vuoto: codificano relazioni semantiche strutturate, quelle stesse analogie (re : regina = uomo : donna) che la tradizione del word embedding aveva già mostrato essere presenti nelle rappresentazioni di addestramento, prima di qualsiasi inferenza. La semantica distribuzionale classica descriveva il significato come struttura di co-occorrenze, già presente in qualche forma nei pesi. Dire che il significato tout court stia nelle attivazioni equivale a identificarlo con la sua realizzazione contestuale, escludendo che esista qualcosa come un contenuto semantico relativamente stabile. È una tesi difendibile, ma non l’unica disponibile.
[3] L’irreversibilità della generazione autoregressiva è reale per i modelli causali come GPT. Valgono però due precisazioni. I modelli bidirezionali (come BERT) elaborano il contesto in entrambe le direzioni simultaneamente: in quei sistemi la freccia del tempo non vale nello stesso senso, il che suggerisce che l’irreversibilità sia una caratteristica di una classe di architetture, non del significato in generale. Inoltre, i meccanismi di revisione esplicita (chain-of-thought, self-correction) dei modelli più recenti permettono, in qualche senso funzionale, al processo di tornare su se stesso. Nessuna delle due complicazioni invalida la tesi principale, ma ne restringono il campo di validità.
[4] La lettura introduce una torsione rispetto al testo delle Ricerche Filosofiche. Wittgenstein non era un costruttivista nel senso qui suggerito: la sua critica alle teorie rappresentazionali non approdava all’idea che l’uso crei il significato ogni volta, ma che il significato non esista indipendentemente dalle pratiche condivise (i giochi linguistici) in cui le parole sono usate. Per Wittgenstein il significato è normativo: si usa una parola correttamente o incorrettamente rispetto a una pratica condivisa, il che presuppone stabilità intersoggettiva. Si potrebbe quindi leggere i tranformer come sistemi che imitano quella pratica senza parteciparne alla normativa. Una lettura compatibile con la tesi del saggio, ma che porta in una direzione diversa.
[5] Il reframing della context window risuona con la nozione gadameriana di orizzonte, approfondita nel saggio La tessitura della coscienza. Vale però la pena nominare una differenza: l’orizzonte gadameriano è determianto dalla storia, dalla lingua, dall’esperienza vissuta del soggetto. È, in un senso profondo, il soggetto stesso nela sua situatezza. La context window è un parametro ingegneristico modificabile, e la ricerca va sistematicamente verso la sua espansione. Se fosse davvero analoga all’orizzonte, questa direzione sarebbe concettualmente incoerente: staremmo cercando di “espandere la forma della visione” come si aumenta la RAM. La metafora illumina, ma la differenza tra i due tipi di limite merita di restare visibile.
[6] L’interpretazione del grokking come emergenza dal percorso dell’addestramento è suggestiva. Non è però del tutto chiaro se quella struttura sia genuinamente nuova rispetto ai dati, o se sia una struttura già presente in essi (la regola aritmetica, la struttura del gruppo) che il sistema riconosce dopo un certo numero di passi. La distinzione non è banale: nel primo caso il percorso crea la struttura; nel secondo la estrae. Esiste inoltre un dibattito sulla generalizzabilità del grokking a modelli di scala reale. Schaeffer et al. (2023), già in bibliografia, hanno messo in discussione l’idea che le capacità emergenti dei grandi modelli siano genuinamente qualitative: un’obiezione che si applica anche all’interpretazione del grokking come “salto” piuttosto che “progressione”.
[7] Il saggio chiude onestamente: l’analisi non risponde se questi sistemi “capiscano davvero”. Il rischio strutturale del percorso argomentativo è la proiezione nella direzione opposta alla solita: invece di attribuire agli LLM proprietà mentali umane, si rischia di attribuire al significato umano le proprietà processuali dei transformer. “La comprensione è qualcosa che accade, non uno stato” è una tesi stimolante, ma richiede un argomento autonomo che vada dall’architettura alla fenomenologia senza assumere che la seconda si comporti come la prima. È precisamente su questo terreno che il saggio L’interfaccia della saggezza pratica costruisce il suo argomento principale.