rivista di opinione, ricerca e studi filosofici
rivista di opinione, ricerca e studi filosofici

Dal BASIC alle reti neurali: come il computer ha smesso di obbedire e ha imparato a improvvisare

Il viaggio dalla logica rigida dell'IF/THEN alla creatività statistica dell'intelligenza artificiale. E perché oggi parliamo alle macchine come parliamo tra noi

di Francesco Pungitore

 

C'era un tempo in cui programmare significava dare ordini. Ordini chiari, sequenziali, privi di qualsiasi ambiguità. Chi negli anni Ottanta accendeva un Commodore 64 o un Olivetti M24 e digitava la prima riga in BASIC — quel celebre 10 PRINT "CIAO" seguito da 20 GOTO 10 — stava compiendo un atto che, nella sua elementarità, conteneva l'intera filosofia dell'informatica classica: l'uomo pensa, la macchina esegue.

Il costrutto IF/THEN era la colonna vertebrale di quel mondo. Se la variabile A è maggiore di 10, allora stampa "GRANDE". Altrimenti, stampa "PICCOLO". Nessuna sfumatura, nessuna interpretazione, nessuno spazio per l'imprevisto. La macchina era un servitore perfetto proprio perché perfettamente stupido: faceva esattamente ciò che le si diceva di fare, né un passo in più, né uno in meno.

Quel paradigma ha retto per decenni. Ha mandato uomini sulla Luna, ha gestito le prime reti di comunicazione, ha reso possibile il sistema bancario globale. Ma conteneva un limite strutturale che nessuna sofisticazione sintattica avrebbe potuto superare: ogni singolo comportamento doveva essere anticipato e codificato dal programmatore. Il software era, in ultima analisi, un albero decisionale — per quanto complesso, per quanto ramificato — in cui ogni bivio era stato previsto da una mente umana.

La domanda che ha cambiato tutto

Verso la fine degli anni Cinquanta, prima ancora che il BASIC venisse inventato da John Kemeny e Thomas Kurtz a Dartmouth nel 1964, un gruppetto di ricercatori si stava già ponendo una domanda diversa: e se la macchina potesse imparare da sola? Non eseguire istruzioni, ma estrarre regole dall'esperienza?

La cibernetica di Norbert Wiener aveva già intuito che i sistemi — biologici o artificiali — potessero autoregolarsi attraverso meccanismi di retroazione. Ma il vero scarto concettuale si consumò in un passaggio che ancora oggi molti faticano a comprendere: il passaggio dalla logica formale alla statistica.

L'informatica classica è figlia della logica di Boole, di Turing, di von Neumann. È un mondo in bianco e nero, dove ogni proposizione è vera o falsa, dove ogni operazione è deterministica. Le reti neurali, al contrario, sono figlie della statistica e della teoria delle probabilità. Non rispondono "sì" o "no": rispondono "probabilmente sì, con un margine di confidenza del 94%".

È uno scarto epistemologico prima ancora che tecnologico. Con il BASIC, il programmatore scriveva regole. Con le reti neurali, il programmatore fornisce esempi e lascia che sia la macchina a dedurre le regole. Il sapere non è più codificato dall'alto: emerge dal basso, da milioni di dati, attraverso un processo che ha più in comune con l'apprendimento di un bambino che con la consultazione di un'enciclopedia.

Anatomia di un neurone artificiale

Ma come funziona, concretamente, una rete neurale? L'idea di base è sorprendentemente semplice, e risale al 1943, quando Warren McCulloch e Walter Pitts proposero un modello matematico del neurone biologico.

Un neurone artificiale riceve degli input numerici, ciascuno moltiplicato per un "peso" — un coefficiente che ne amplifica o attenua l'importanza. Somma tutti questi prodotti, applica una funzione matematica (detta funzione di attivazione) e produce un output. Preso singolarmente, non fa quasi nulla di utile. Ma collegato ad altri centinaia, migliaia, milioni di neuroni artificiali, organizzati in strati successivi, diventa capace di qualcosa che somiglia all'intelligenza.

Il meccanismo di apprendimento è ciò che distingue radicalmente questo approccio dalla programmazione tradizionale. Quando mostriamo a una rete neurale migliaia di fotografie di gatti etichettate come "gatto", la rete non riceve mai una definizione di gatto. Nessuno le dice che un gatto ha quattro zampe, le orecchie a punta, i baffi. Semplicemente, attraverso un processo iterativo chiamato backpropagation — retropropagazione dell'errore —, la rete aggiusta progressivamente i pesi delle connessioni tra i neuroni fino a quando il suo output corrisponde, con sufficiente approssimazione, all'etichetta corretta. Il gatto, per la rete, non è un concetto: è un pattern statistico, una distribuzione di probabilità nello spazio delle caratteristiche visive.

La rivoluzione dei Transformer

Per decenni, le reti neurali sono rimaste una curiosità accademica, frenate dalla limitata potenza di calcolo disponibile. La svolta è arrivata in due ondate.

La prima, nei primi anni 2010, con le reti neurali convoluzionali (CNN) che hanno rivoluzionato il riconoscimento delle immagini. La seconda, e più dirompente, nel 2017, con la pubblicazione di un paper destinato a cambiare la storia dell'informatica: "Attention Is All You Need", firmato da un gruppo di ricercatori di Google. In quel documento nasceva l'architettura Transformer, il fondamento su cui poggiano oggi tutti i grandi modelli linguistici, da GPT a Claude, da Gemini a Llama.

Il meccanismo chiave si chiama attenzione — e il nome non è casuale. Quando leggiamo una frase come "La banca del fiume era coperta di muschio", il nostro cervello assegna automaticamente pesi diversi alle parole circostanti per disambiguare il termine "banca". Allo stesso modo, il meccanismo di attenzione dei Transformer consente al modello di valutare dinamicamente l'importanza relativa di ogni parola rispetto a tutte le altre nel contesto, costruendo una rappresentazione ricca e sfumata del significato.

Come nasce un'immagine dal nulla

Le reti generative — quelle che producono immagini, video, musica — portano questo principio un passo oltre. Modelli come quelli alla base di Midjourney utilizzano un'architettura chiamata diffusion model, il cui funzionamento è elegante nella sua controintuitività: il sistema impara a rimuovere il rumore.

In fase di addestramento, si prendono milioni di immagini reali e le si corrompe progressivamente aggiungendo rumore casuale, fino a ridurle a pura statica. Poi si addestra la rete a invertire il processo, a ricostruire l'immagine originale partendo dal rumore. Una volta completato l'addestramento, la rete è in grado di partire da rumore puro — pixel casuali — e "denoizzarlo" progressivamente fino a produrre un'immagine coerente. Se a questo processo si aggiunge un condizionamento testuale (un prompt in linguaggio naturale), la rete non genera un'immagine qualsiasi, ma un'immagine che corrisponde statisticamente alla descrizione fornita.

Non è magia: è statistica su scala senza precedenti, una statistica così sofisticata e multidimensionale da produrre risultati che percepiamo come creativi.

La parola diventa codice

Ed è qui che si compie il passaggio forse più rivoluzionario di tutti: il linguaggio naturale diventa il nuovo codice di programmazione.

Chi negli anni Ottanta voleva far disegnare un quadrato rosso sullo schermo del proprio computer doveva scrivere qualcosa come:

10 SCREEN 1

20 LINE (100,100)-(200,200), 4, BF

Oggi basta scrivere: "Disegna un quadrato rosso". Non a un compilatore, ma a una rete neurale addestrata su miliardi di testi che ha imparato la correlazione statistica tra le parole e i concetti, tra le descrizioni e le loro rappresentazioni.

Questo non significa che la programmazione tradizionale sia morta. I server che ospitano i modelli di intelligenza artificiale funzionano ancora con codice scritto in Python, C++, CUDA — linguaggi formali, deterministici, figli legittimi di quel BASIC da cui siamo partiti. Ma l'interfaccia tra l'umano e la macchina si è trasformata radicalmente. Non parliamo più alla macchina nel suo linguaggio: è la macchina che ha imparato il nostro.

Il prompt engineering, l'arte di formulare richieste efficaci a un modello di intelligenza artificiale, è la nuova forma di programmazione. Richiede competenze diverse — linguistiche, retoriche, persino psicologiche — ma il principio è lo stesso: trasmettere un'intenzione a una macchina affinché produca un risultato desiderato. Solo che ora l'intenzione si esprime in italiano, in inglese, in qualsiasi lingua umana, e la macchina non la esegue meccanicamente: la interpreta statisticamente.

L'ambiguità come risorsa

Il cambio di paradigma è profondo. La programmazione classica esigeva precisione assoluta: un punto e virgola dimenticato poteva far crollare un intero programma. Il linguaggio naturale, al contrario, è costitutivamente ambiguo, ridondante, impreciso — ed è proprio questa imperfezione a renderlo potente come strumento di interazione con le reti neurali. I modelli linguistici sono progettati per gestire l'ambiguità, per disambiguare dal contesto, per colmare le lacune con inferenze probabilistiche.

Quando scriviamo a un'intelligenza artificiale "fammi una presentazione sul Rinascimento, stile informale, per ragazzi di sedici anni", stiamo fornendo istruzioni che nessun compilatore BASIC potrebbe interpretare. Eppure il modello produce un output coerente, perché ha interiorizzato, attraverso l'addestramento su miliardi di testi, le correlazioni statistiche tra "Rinascimento", "informale" e "sedici anni".

Il prezzo della magia

Questa potenza ha un costo che sarebbe disonesto ignorare. Le reti neurali sono, almeno in parte, scatole nere. Sappiamo cosa entra (i dati di addestramento) e cosa esce (il testo, l'immagine, il video generato), ma il percorso intermedio — quei miliardi di pesi distribuiti su milioni di neuroni artificiali — resta in larga misura opaco anche ai loro creatori.

Il BASIC era trasparente fino alla brutalità: ogni riga di codice poteva essere letta, compresa, verificata. Un programma faceva esattamente ciò che il codice dichiarava, nulla di più. Le reti neurali, invece, possono produrre risultati sorprendenti ma anche errori difficili da diagnosticare, le cosiddette "allucinazioni" — risposte generate con assoluta sicurezza stilistica ma prive di fondamento fattuale.

È la differenza tra un impiegato che segue una procedura scritta e un collaboratore brillante ma talvolta inaffidabile: il primo non sbaglierà mai la procedura, ma non avrà mai un'idea nuova; il secondo può avere intuizioni geniali, ma anche prendere abbagli clamorosi.

Dalla macchina calcolatrice alla macchina interpretante

Il percorso dal 10 IF A > 10 THEN PRINT "GRANDE" ai moderni modelli generativi non è una semplice evoluzione tecnologica: è un cambiamento di natura del rapporto tra l'essere umano e la macchina. La macchina ha cessato di essere un esecutore per diventare un interlocutore. Non comprende, nel senso umano del termine, ma simula la comprensione con tale efficacia da rendere la distinzione, sul piano pratico, sempre meno rilevante.

Chi ha vissuto l'epoca del BASIC ricorda il brivido di vedere il computer rispondere a un comando. Chi vive l'epoca dell'intelligenza artificiale generativa sperimenta un brivido diverso e più perturbante: quello di vedere la macchina rispondere a un'intenzione.

Tra quei due brividi c'è tutta la distanza — immensa, vertiginosa — tra il calcolo e l'interpretazione, tra la logica formale e la statistica computazionale, tra un mondo in cui le macchine facevano ciò che sapevamo dire loro e un mondo in cui le macchine fanno ciò che intendiamo, anche quando non sappiamo dirlo con precisione.

È una rivoluzione che non chiede il permesso. Sta già accadendo. [14.02.1026]

 

Stampa | Mappa del sito
© 2015 - Essere & Pensiero - Testata giornalistica online ai sensi dell'art. 3-bis del d.l. 63/2012 sull'editoria convertito in legge n. 103/2012 - Direttore Responsabile: Francesco Pungitore