Quando serve davvero matematica avanzata in AI
La Parte VI si chiama “Matematica avanzata opzionale”, e quella parola — opzionale — vale una spiegazione onesta. Opzionale per chi, e per fare cosa? Questo capitolo non aggiunge un dodicesimo strumento: prende gli undici precedenti e dice quando servono e quando no. La tesi è che il fabbisogno di matematica avanzata non è una costante: cresce lungo un gradiente che va dall’usare un’AI al fare ricerca teorica. Capirlo evita due errori speculari: rinunciare per un prerequisito immaginato troppo alto, e sbattere contro un muro per averlo stimato troppo basso.
Perché questo capitolo
Sezione intitolata “Perché questo capitolo”Undici capitoli fa, la Parte VI si apriva con l’analisi matematica: limiti, continuità, derivate. Da lì sono passati Jacobiani, Hessiane, serie di Taylor, convessità, derivate matriciali, probabilità avanzata, processi stocastici, catene di Markov, calcolo variazionale, equazioni differenziali.
È un percorso che costa tempo reale. Un lettore che lo ha attraversato tutto ha investito settimane; uno che lo sta guardando dall’esterno ha una domanda legittima, e quasi mai posta in modo diretto: mi serve davvero questa roba?
La domanda non è oziosa. C’è una scena che si ripete. Uno sviluppatore esperto, anni di codice alle spalle, decide di entrare nell’AI. Apre un percorso di studio, e la prima cosa che incontra è una lista di prerequisiti matematici: algebra lineare, analisi, probabilità, ottimizzazione.
La lista è lunga, ognuna di quelle voci è un corso da mesi, e il messaggio implicito è “prima questo, poi l’AI”. Lo sviluppatore, che è abituato a imparare facendo, si trova davanti a un muro che non sa se è reale.
Alcuni lo scalano e scoprono dopo che metà non serviva al loro scopo. Altri si fermano e non iniziano mai. Quasi nessuno riceve la risposta onesta: dipende da cosa vuoi fare.
La risposta facile e disonesta è “sì, tutto serve sempre”. La risposta facile e ugualmente disonesta è “no, oggi basta saper scrivere prompt”. Nessuna delle due regge alla prova dei fatti. La verità è condizionale, e questo capitolo esiste per renderla esplicita.
La parola chiave nel nome della Parte è opzionale. Ma “opzionale” non significa “inutile”: significa condizionale all’obiettivo.
Per chi costruisce applicazioni con un LLM, gran parte della Parte VI è effettivamente saltabile. Per chi vuole leggere un paper sui diffusion model senza arenarsi alla terza formula, una metà serve. Per chi progetta un training e lo vede divergere, un’altra metà diventa strumento di lavoro quotidiano. Per chi fa ricerca teorica, la Parte VI non è opzionale affatto: è il pavimento.
Il capitolo fa tre cose. Costruisce il modello del gradiente di fabbisogno — l’idea che la matematica necessaria sia funzione di cosa stai facendo. Disegna la mappa capitolo-per-capitolo della Parte VI verso “dove ricompare nella pratica reale”.
E nomina gli anti-pattern: i modi tipici in cui il rapporto con la matematica avanzata va storto, in entrambe le direzioni — chi ne studia troppa al momento sbagliato, e chi ne studia troppo poca quando salirebbe di gradino.
È il capitolo che chiude la Parte VI e la rende navigabile a posteriori: una bussola, non un dodicesimo strumento.
Contesto
Sezione intitolata “Contesto”Questo è il dodicesimo e ultimo capitolo della Parte VI. La sua collocazione nel grafo della wiki è particolare: non guarda solo a monte, verso gli undici capitoli che lo precedono, ma anche a valle, verso le Parti applicative — il machine learning, l’anatomia degli LLM, il training, gli agenti. È un ponte in due sensi. Ricapitola la Parte VI dall’interno e la collega a ciò che viene dopo.
Va distinto dal capitolo gemello di un’altra Parte. La Parte IV — Fondamenti matematici operativi — ha dato la matematica strettamente necessaria per seguire la wiki: vettori, matrici, probabilità di base, gradienti a intuito. La Parte VI è il livello successivo, dichiaratamente opzionale.
Questo capitolo non riassume la matematica di base: è la guida alla lettura della matematica avanzata. La Parte V — Statistica — ha un capitolo analogo, statistica-e-ml (in preparazione), che fa lo stesso lavoro per la statistica: spiega perché serve. Qui il soggetto è l’analisi e l’ottimizzazione, non l’inferenza.
C’è anche una cornice storica che vale la pena vedere con chiarezza. Per decenni, entrare nell’AI accademica ha significato passare prima da un prerequisito matematico pesante: algebra lineare, analisi, probabilità, ottimizzazione, e solo dopo i modelli.
Il libro Mathematics for Machine Learning di Marc Peter Deisenroth, A. Aldo Faisal e Cheng Soon Ong (Cambridge University Press, 2020) cristallizza quel mondo: il suo scopo dichiarato è “fornire le competenze matematiche necessarie per leggere gli altri libri di machine learning”. La matematica come cancello d’ingresso.
L’era degli LLM e dell’agent coding ha cambiato la struttura della domanda. Una quota enorme di lavoro produttivo con l’AI nel 2024-2026 — costruire applicazioni, integrare modelli via API, orchestrare agenti — non richiede quel cancello.
Questo è un fatto osservabile sulla pratica corrente, non una previsione né un auspicio. Non significa che la matematica sia diventata inutile: significa che il punto di ingresso si è spostato e che il fabbisogno è diventato condizionale al ruolo. La distinzione tra “cancello unico” e “fabbisogno condizionale” è il cardine di tutto il capitolo.
L’ordine delle sezioni segue la costruzione dell’argomento. Prima i due angoli di intuizione che fondano la tesi. Poi il modello formale del gradiente, con i suoi quattro gradini. Poi la mappa capitolo-per-capitolo, che è il cuore operativo.
Seguono il principio “intuizione prima del formalismo” applicato a sé stesso, gli anti-pattern, i percorsi di lettura per obiettivo, e infine la sezione su dove questo modo di ragionare si rompe.
L’intuizione, primo angolo: il gradiente di astrazione
Sezione intitolata “L’intuizione, primo angolo: il gradiente di astrazione”Immagina una scala. Non una metafora vaga: una scala con gradini distinti, e su ogni gradino una persona che lavora con l’AI in un modo diverso.
Al gradino più basso c’è l’uso. Chiedi a un modello di scrivere una funzione, leggi il codice che produce, lo correggi, lo integri. Stai usando uno strumento finito, già costruito.
Per stare su questo gradino non ti serve sapere cos’è una matrice Hessiana, così come per guidare un’auto non ti serve saper progettare un motore.
Salendo, ogni gradino aggiunge un velo di astrazione che devi saper sollevare. Un gradino sopra c’è il leggere paper: vuoi capire come funziona l’architettura che stai usando, e per farlo devi decodificare la notazione in cui i ricercatori la descrivono.
Un gradino ancora sopra c’è il progettare: scegli un optimizer, disegni una loss, debugghi un training che non converge. Al gradino più alto c’è la ricerca teorica: dimostri che un algoritmo converge, proponi un nuovo schema, costruisci garanzie.
Il punto è semplice: più sali, più ti avvicini al punto in cui le cose vengono decise invece che usate. Usare un optimizer non richiede di sapere cos’è una Hessiana. Sceglierne uno nuovo, o capire perché quello che hai scelto si comporta male, sì.
La matematica avanzata è lo strumento per stare ai gradini alti della scala. Se il tuo lavoro vive ai gradini bassi, lo strumento resta nella cassetta, e va benissimo così.
L’errore tipico non è ignorare la matematica. È non sapere a quale gradino si sta lavorando.
Chi non lo sa rischia due cose opposte. O sovrastima il prerequisito — crede che servano i gradini alti per lavorare ai gradini bassi — e non inizia mai. O lo sottostima — crede che i gradini bassi bastino sempre — e poi, quando il training diverge, non ha il vocabolario per formulare nemmeno l’ipotesi giusta su cosa stia andando storto.
L’intuizione, secondo angolo: la matematica come decoder, non come motore
Sezione intitolata “L’intuizione, secondo angolo: la matematica come decoder, non come motore”Il primo angolo riguarda quanto in alto sali. Il secondo riguarda che tipo di conoscenza ti serve, e mette in luce una confusione sottile.
C’è una differenza tra la matematica che fa funzionare una cosa e la matematica che ti serve per capirla. La backpropagation — l’algoritmo che rende addestrabili le reti profonde, vedi Analisi matematica: limiti, continuità, derivate — usa la regola della catena, la regola che permette di derivare una funzione composta. La regola della catena è il motore della backpropagation.
Ma tu, quando addestri una rete, non calcoli la regola della catena a mano: la libreria di automatic differentiation lo fa per te. La matematica è dentro lo strumento, non dentro la tua testa.
Allora a cosa ti serve conoscerla? Come decoder. Quando leggi un paper e incontri il simbolo — il gradiente della loss rispetto ai parametri — la matematica ti permette di decodificare quel simbolo invece di saltarlo.
Lo stesso vale per la diagnosi. Quando il training diverge, un modello mentale della loss ti permette di formulare l’ipotesi giusta — “forse la loss è mal condizionata” — invece di tirare a indovinare. Quando un collega dice “il modello è in una zona piatta della loss landscape”, la matematica ti dà l’immagine mentale corretta di cosa intende, invece di una parola vuota.
Il decoder non è il motore. Puoi guidare un’auto senza saper costruire un motore. Ma se vuoi capire perché l’auto perde potenza in salita, un modello mentale di come funziona il motore aiuta. Per la maggior parte dei praticanti dell’AI, la matematica avanzata è esattamente questo: un decoder per leggere e diagnosticare, non un motore da costruire a mano.
Lo dice senza giri di parole chi ha scritto molto di quel codice. Andrej Karpathy — ricercatore di AI, in passato a Tesla e a OpenAI, autore di materiale didattico molto diffuso sul deep learning — nella sua “Hacker’s Guide to Neural Networks” prende posizione netta.
Scrive che la derivazione matematica delle reti neurali è in larga parte non necessaria, che anzi a volte oscura concetti semplici, e che nella sua pratica raramente deve fare una derivazione più lunga di due righe, mentre il 95% delle volte non scrive nulla.
Questa è una raccomandazione pratica basata sull’esperienza di chi costruisce, non un teorema. Dice due cose: che il motore lo fa lo strumento, e che il fabbisogno reale del praticante è quello del decoder. Va presa per quello che è — la voce di chi lavora ai gradini medio-alti e racconta cosa gli serve davvero — non come permesso universale di ignorare la matematica.
I due angoli convergono sulla stessa conclusione, che è la spina dorsale del capitolo. Il fabbisogno di matematica avanzata non si misura in valore assoluto. Si misura rispetto a un obiettivo: quanto in alto sali sulla scala, e quanto ti serve decodificare invece di eseguire.
La meccanica: i quattro gradini del gradiente
Sezione intitolata “La meccanica: i quattro gradini del gradiente”Rendiamo il modello preciso. Il gradiente di fabbisogno ha quattro gradini, ciascuno con un fabbisogno qualitativo crescente. Non c’è una formula numerica — sarebbe falsa precisione — ma la struttura è netta.
Gradino 1 — Usare l’AI, fare agent coding. L’attività: scrivere prompt, orchestrare tool, leggere e correggere codice generato, costruire applicazioni che chiamano un modello via API.
Il fabbisogno di matematica avanzata è quasi nullo. La matematica che serve è quella della Parte IV — sapere cos’è un vettore, una probabilità, un gradiente a intuito — e nemmeno tutta. Un developer che lavora con un assistente di coding agentico non incontra mai un Jacobiano esplicito.
Gradino 2 — Leggere paper, capire le architetture. L’attività: leggere un articolo di ricerca, capire come è fatta un’architettura, seguire un discorso tecnico su un modello. Il fabbisogno è medio.
Qui la notazione conta: senza derivate matriciali la formula del gradiente di un layer è illeggibile, senza probabilità non si leggono i bound di generalizzazione, senza un’idea delle equazioni differenziali non si capisce cosa dice un paper sui diffusion model. Il fabbisogno è di decodifica: devi saper leggere la notazione, non rifare le derivazioni.
Gradino 3 — Progettare architetture, fare training serio. L’attività: scegliere un optimizer, progettare una loss, debuggare un training che diverge o si appiattisce, decidere un’inizializzazione. Il fabbisogno è alto.
Qui la matematica passa da decoder a strumento di lavoro: per capire perché una loss è mal condizionata devi sapere cos’è la curvatura, per capire perché Adam aiuta devi avere un modello della loss landscape.
Gradino 4 — Ricerca teorica. L’attività: dimostrare un teorema di convergenza, proporre un nuovo schema di ottimizzazione, costruire garanzie di generalizzazione. Il fabbisogno è massimo. La matematica avanzata è la lingua madre. La Parte VI non è il soffitto: è il pavimento.
In pseudocodice, il modello del capitolo si scrive così:
def matematica_avanzata_necessaria(obiettivo): if obiettivo == "usare AI / agent coding": return "quasi nulla — basta la Parte IV" elif obiettivo == "leggere paper / capire architetture": return "media — decodificare notazione, non derivare" elif obiettivo == "progettare / addestrare": return "alta — la matematica come strumento di lavoro" elif obiettivo == "ricerca teorica": return "massima — la matematica come lingua madre"Leggiamo lo pseudocodice riga per riga. La funzione prende un solo argomento, obiettivo: l’input non è “quanto sei bravo” né “quanto è difficile l’AI”, è cosa vuoi fare. Il valore di ritorno non è un voto, è una quantità di prerequisito.
Ci sono due conseguenze non ovvie. La prima: la stessa persona, in due progetti diversi, ottiene due risultati diversi dalla funzione — il fabbisogno non è una proprietà dell’individuo, è una proprietà del compito. La seconda: non c’è un ramo else di default. Senza un obiettivo passato come argomento, la domanda “quanta matematica mi serve” non ha risposta — letteralmente, la funzione non saprebbe cosa restituire.
Una nota sulla classe di questa affermazione. Che i quattro gradini esistano e siano ordinati per fabbisogno crescente è una raccomandazione pratica strutturata, fondata sull’osservazione di come si lavora con l’AI. Non è un teorema: i confini tra i gradini sono sfumati, e una persona può stare su due gradini in due momenti della stessa giornata. È un modello utile, non una legge.
La mappa: capitolo per capitolo verso la pratica
Sezione intitolata “La mappa: capitolo per capitolo verso la pratica”Questa è la sezione operativa centrale. Per ciascuno degli undici capitoli precedenti della Parte VI: dove ricompare nel lavoro reale e a quale gradino del gradiente appartiene. È la prova concreta della tesi — e lo strumento con cui un lettore decide cosa della Parte VI vale il suo tempo.
Analisi matematica: limiti, continuità, derivate. La derivata è il concetto che addestra ogni rete neurale. Ricompare nella backpropagation — la regola della catena applicata a una composizione lunga decine di strati — nella scelta delle funzioni di attivazione, che devono essere derivabili quasi ovunque, e nella diagnosi dei gradienti che svaniscono o esplodono.
Gradino: leggere paper (2). Capire la derivata a intuito basta per usare; capirla formalmente serve per leggere il perché di certe scelte architetturali.
Derivate parziali, gradienti, Jacobiani. Il gradiente è la direzione di discesa; la matrice Jacobiana generalizza la derivata a funzioni che mandano vettori in vettori. Ricompare nell’automatic differentiation.
Vale la pena essere precisi sulla classe del legame. La backpropagation è un caso particolare di automatic differentiation in reverse mode: questa è una filiazione documentata nel survey di Atılım Güneş Baydin e colleghi, “Automatic Differentiation in Machine Learning: a Survey” (Journal of Machine Learning Research, 2018).
Quel survey mostra anche perché la reverse mode è la scelta giusta: è la tecnica efficiente quando si deriva uno scalare — la loss — rispetto a moltissimi parametri, ed è esattamente la situazione del training. Ogni strato è una funzione di cui l’autodiff calcola il prodotto Jacobiano-vettore.
Gradino: leggere paper e capire l’autodiff (2). Chi solo usa una libreria di deep learning non vede mai un Jacobiano esplicito; chi vuole capire perché loss.backward() è efficiente, sì.
Hessiana, curvatura, condizionamento. La Hessiana è la derivata seconda multivariabile: descrive la curvatura della loss.
Ricompare negli optimizer del secondo ordine — Newton, L-BFGS, e i loro discendenti moderni — nella diagnosi di una loss mal condizionata, dove un numero di condizionamento alto significa training lento e instabile, e nella comprensione del perché momentum e Adam aiutano.
Gradino: progettare e addestrare (3). È il capitolo che separa chi usa un optimizer da chi lo sceglie.
Taylor come approssimazione locale. La serie di Taylor approssima una funzione vicino a un punto con un polinomio. Ricompare nell’analisi locale di ogni metodo di ottimizzazione: la discesa del gradiente è l’approssimazione di Taylor al primo ordine, il metodo di Newton è al secondo ordine.
È anche il linguaggio con cui si ragiona sul learning rate e sulla sensibilità di un modello a piccole perturbazioni. Gradino: leggere paper e progettare (2-3).
Convessità, Jensen, minimi globali. Una funzione convessa ha un solo minimo, e quel minimo è globale. Questo capitolo serve a capire perché il deep learning è difficile: le loss delle reti profonde sono non-convesse, e questo è il motivo per cui non c’è garanzia di trovare il minimo globale, per cui l’inizializzazione conta, per cui esistono minimi locali e punti di sella.
La disuguaglianza di Jensen, dallo stesso capitolo, ricompare nella ELBO dei VAE. Gradino: capire il campo (2). Non serve per usare, serve per non farsi illusioni su cosa fa il training — e per non aspettarsi da una rete profonda le garanzie che valgono solo per i problemi convessi.
Derivate matriciali per ML. Il matrix calculus è la notazione con cui i paper esprimono i gradienti rispetto a matrici di pesi. Ricompare in una sola attività, e in modo quasi puro: leggere i paper. Senza matrix calculus, la formula del gradiente di un layer lineare è illeggibile. Gradino: leggere paper (2). È il fabbisogno di decodifica notazionale allo stato più puro.
Variabili aleatorie, convergenza, disuguaglianze. Le disuguaglianze di concentrazione — Markov, Chebyshev, Hoeffding — e i modi di convergenza di variabili aleatorie. Ricompaiono nei bound di generalizzazione: le garanzie teoriche su quanto un modello che fa bene sul training set farà bene su dati nuovi.
Gradino: ricerca teorica (4). Per il praticante medio, questo è il capitolo più “opzionale” dell’opzionale: chi non dimostra teoremi può tranquillamente non aprirlo.
Processi stocastici e dinamiche casuali. Un processo stocastico è una famiglia di variabili aleatorie indicizzate dal tempo. Ricompare nei diffusion model, definiti tramite un processo stocastico — la forward diffusion che aggiunge progressivamente rumore gaussiano — e nella loro formulazione come equazioni differenziali stocastiche. Gradino: leggere paper su modelli generativi (2-3).
Catene di Markov, stazionarietà, mixing. Una catena di Markov è un processo in cui il futuro dipende solo dal presente, non dall’intera storia. Ricompare in MCMC — Markov Chain Monte Carlo — il metodo per campionare da distribuzioni complesse.
Una nota sulla classe di affermazione, importante per non scivolare. Il decoding autoregressivo di un LLM, che genera un token alla volta condizionando sul contesto, ricorda una catena di Markov ma non lo è nel senso classico: il prossimo token dipende dall’intero contesto, non solo dallo stato immediatamente precedente.
È un’analogia utile, non un’equivalenza — chiamarla catena di Markov senza la cautela porta a conclusioni sbagliate sulla memoria del modello. Gradino: leggere paper (2).
Ottimizzare funzioni di funzioni. Il calcolo variazionale ottimizza non un punto ma una funzione intera. Ricompare nell’inferenza variazionale — da cui il nome dei VAE, i variational autoencoder — e nella ELBO, l’Evidence Lower Bound, che è il funzionale che si massimizza per addestrare un VAE. Gradino: leggere paper su modelli generativi (2-3).
Equazioni differenziali: l’intuizione. Le ODE descrivono come un sistema cambia istante per istante. Ricompaiono nei Neural ODE — reti viste come discretizzazione di una dinamica continua — nella formulazione probability-flow ODE dei diffusion model, e nella discesa del gradiente vista come gradient flow.
Gradino: leggere paper recenti su modelli generativi e architetture continue (2-3). È anche, insieme a questo, uno dei due capitoli-ponte che chiudono la Parte VI.
Il pattern che emerge dalla mappa è il fatto che il capitolo voleva dimostrare. Quasi tutto ciò che serve per leggere paper è di gradino 2. Quasi tutto ciò che serve per progettare è di gradino 3. Quasi nulla serve per usare. E un solo capitolo — la probabilità avanzata, con i suoi bound — vive davvero al gradino 4.
La Parte VI non è un blocco monolitico da prendere o lasciare: è un insieme di strumenti, ciascuno con il suo gradino. Letta così, smette di essere un muro e diventa un menù: si prende ciò che il proprio obiettivo richiede.
C’è anche una direzione di lettura che la mappa rende visibile e che vale la pena rendere esplicita. La maggior parte di questi legami va dalla matematica alla pratica — “la Hessiana ricompare negli optimizer del secondo ordine”.
Ma si può percorrere la mappa anche al contrario, partendo da un problema concreto e risalendo allo strumento. Hai un training che non scende? La voce “Hessiana, curvatura, condizionamento” ti dice dove andare. Devi leggere un paper sui diffusion model e ti blocchi su una formula con un integrale stocastico? Le voci “processi stocastici” ed “equazioni differenziali” sono il decoder.
La mappa funziona nei due sensi: come piano di studio quando parti dalla matematica, e come indice diagnostico quando parti dal problema.
La tesi del gradiente è astratta finché non la si vede applicata a casi concreti. Tre esempi eterogenei: uno quantitativo, uno in codice, uno scenario reale.
Esempio 1 — Lo stesso simbolo, tre fabbisogni
Sezione intitolata “Esempio 1 — Lo stesso simbolo, tre fabbisogni”Prendiamo una singola riga di matematica, una che compare in quasi ogni paper di deep learning, e vediamo cosa serve davvero saperne a ciascun gradino. La riga è la regola di aggiornamento della discesa del gradiente:
In parole: i nuovi parametri sono i vecchi parametri meno un passo. Il passo è grande quanto il learning rate (un numero piccolo, tipicamente tra e ) moltiplicato per il gradiente , cioè la direzione in cui la loss cresce più in fretta. Il segno meno dice “vai nella direzione opposta”, cioè verso il basso.
Al gradino 1 — usare l’AI — questa riga non compare mai. Chi costruisce un’applicazione con un LLM non vede gradienti: vede una API che restituisce testo. Fabbisogno: zero.
Al gradino 2 — leggere paper — questa riga va letta. Devi sapere che è un gradiente, che il pedice dice rispetto a cosa si deriva, che è la loss.
Non devi saper calcolare quel gradiente a mano: devi riconoscere la riga e capire che descrive un passo di discesa. Fabbisogno: i capitoli su analisi e gradienti, a livello di lettura.
Al gradino 3 — progettare e addestrare — questa riga diventa una sorgente di decisioni. Quanto deve valere ? Se è troppo grande il training diverge, se è troppo piccolo non avanza.
La risposta non è arbitraria. Dipende dalla curvatura della loss: con un’approssimazione di Taylor al secondo ordine si vede che il learning rate massimo stabile è legato all’autovalore più grande della Hessiana. Qui servono i capitoli su Taylor e Hessiana, e non a livello di lettura ma di strumento: la matematica entra nella decisione, non solo nella comprensione.
Al gradino 4 — ricerca teorica — la stessa riga è l’oggetto di teoremi: sotto quali ipotesi sulla loss la successione converge, con quale velocità, a cosa. Qui serve il capitolo sulla probabilità avanzata e ben oltre.
Una riga, quattro fabbisogni diversi. È la tesi del capitolo ridotta a un caso minimo. La formula non cambia mai: cambia cosa devi saperne, e cosa devi saperne dipende interamente da cosa stai facendo con essa.
Esempio 2 — Cosa la libreria fa al posto tuo
Sezione intitolata “Esempio 2 — Cosa la libreria fa al posto tuo”Questo frammento mostra dove la matematica è davvero richiesta e dove invece è già dentro lo strumento. È pseudocodice in stile PyTorch, il caso tipico di chi addestra un modello.
# Gradino 1-2: tu scrivi questo. Nessuna matematica avanzata.modello = ReteNeral(strati=12)optimizer = Adam(modello.parametri(), lr=3e-4)
for batch in dati: predizione = modello(batch.input) loss = cross_entropy(predizione, batch.target)
loss.backward() # <-- la regola della catena, applicata # a 12 strati, la fa la libreria optimizer.step() # <-- l'aggiornamento dei parametri, # lo fa la libreria optimizer.zero_grad()Le righe che tu scrivi non contengono matematica avanzata: definire il modello, scegliere l’optimizer, iterare sui dati. La regola della catena — il motore — è dentro loss.backward(). Il calcolo del gradiente Jacobiano-vettore strato per strato è dentro l’automatic differentiation della libreria. Tu non lo vedi.
Dove rientra allora la matematica? In tre punti, e tutti al gradino 3.
Primo: il valore 3e-4 del learning rate non è magico, è una scelta che dipende dalla curvatura della loss.
Secondo: se la loss diventa NaN dopo poche iterazioni, la diagnosi — gradienti che esplodono, loss mal condizionata — richiede il vocabolario dei capitoli su Hessiana e Taylor.
Terzo: scegliere Adam invece di SGD semplice è una decisione che ha senso solo se si capisce perché il momentum e la normalizzazione adattiva aiutano su loss non-convesse.
La lezione del frammento è netta: il codice che funziona si scrive senza matematica avanzata, il codice che smette di funzionare si debugga con la matematica avanzata. Il fabbisogno non è nella scrittura, è nella diagnosi. E la diagnosi arriva sempre, prima o poi, a chi addestra modelli sul serio.
Esempio 3 — Due sviluppatori, due percorsi giusti
Sezione intitolata “Esempio 3 — Due sviluppatori, due percorsi giusti”Scenario reale. Due sviluppatori entrano nell’AI nello stesso mese, con lo stesso background — anni di backend, matematica da liceo, zero ML formale.
La prima, chiamiamola sviluppatrice A, vuole costruire un assistente interno per la sua azienda: un agente che legge la documentazione e risponde a domande dei colleghi. Il suo lavoro è prompt, tool, retrieval, orchestrazione, valutazione. Vive al gradino 1.
Se A passasse tre mesi sulla Parte VI prima di iniziare, sarebbero tre mesi sottratti al progetto per un prerequisito che il progetto non userà. Per A la Parte VI è correttamente opzionale: la salta, e fa bene.
Il secondo, lo sviluppatore B, vuole fare fine-tuning di modelli per un dominio specifico, e a tendere capire abbastanza da contribuire all’architettura. Comincia anche lui al gradino 1 — è giusto così, si parte sempre dal basso — ma il suo obiettivo lo porterà al gradino 3.
Per B la Parte VI non è opzionale: è il materiale che gli servirà quando il primo training divergerà e dovrà capire perché. La differenza non è che B è “più bravo” di A. È che ha un obiettivo diverso, su un gradino diverso.
L’errore sarebbe dare a entrambi lo stesso consiglio. “Studia la matematica prima” rovina il percorso di A. “Salta la matematica, tanto la fa la libreria” prepara male B per il gradino dove arriverà. Il consiglio giusto è lo stesso modello del capitolo: guarda l’obiettivo, individua il gradino, calibra il fabbisogno su quello.
Intuizione prima del formalismo, applicata a sé stessa
Sezione intitolata “Intuizione prima del formalismo, applicata a sé stessa”La wiki ha un principio editoriale ripetuto in ogni capitolo: intuizione prima del formalismo. Qui quel principio diventa esso stesso oggetto di analisi, perché aiuta a tagliare ancora più fine la domanda “quanta matematica”.
Per quasi ogni concetto della Parte VI esistono due livelli di comprensione. Un livello a intuito e un livello formale. E l’obiettivo determina quale dei due basta.
Prendiamo la Hessiana. A intuito: la Hessiana ti dice se sei in una valle, su una cresta o su una sella, e quanto è ripida la curvatura attorno a te. Questo livello basta per capire un discorso su loss landscape, e per leggere la grande maggioranza dei paper che la menzionano.
A livello formale, invece, la Hessiana è la matrice delle derivate seconde, i suoi autovalori danno le curvature lungo le direzioni principali, il rapporto tra l’autovalore più grande e il più piccolo è il numero di condizionamento. Questo secondo livello serve solo se vuoi implementare o analizzare un optimizer del secondo ordine.
Stessa cosa per le ODE. A intuito: una ODE descrive una regola locale sul cambiamento, e da quella regola la traiettoria emerge per integrazione. Basta per leggere un paper sui Neural ODE e capire cosa afferma. A livello formale: esistenza e unicità delle soluzioni, metodi numerici, stabilità degli equilibri. Serve solo se progetti uno di quei modelli.
La regola pratica, da prendere come raccomandazione e non come prescrizione rigida: per ogni concetto, chiediti a quale gradino del gradiente stai lavorando, e fermati al livello di comprensione che quel gradino richiede.
Salire oltre non è un errore — la curiosità è legittima — ma non è un prerequisito. E trattare come prerequisito ciò che è curiosità è precisamente la radice degli anti-pattern della prossima sezione.
Dove si rompe: gli anti-pattern
Sezione intitolata “Dove si rompe: gli anti-pattern”Il modello del gradiente è utile, ma il modo in cui le persone lo applicano va storto in maniere prevedibili. Questa sezione raccoglie i fallimenti tipici. Sono osservazioni sulla pratica di apprendimento, ben caratterizzate nella letteratura su come gli sviluppatori imparano, anche se non sono fatti sperimentali nel senso forte.
Anti-pattern 1: la matematica come procrastinazione. Il copione: “Prima studio bene l’algebra lineare e l’analisi, poi inizio con il machine learning.” Suona responsabile. Il problema è che “studiare bene” non ha un punto di arrivo definito.
La matematica è infinita; il progetto no. “Quando sarò pronto” è una soglia che si sposta in avanti ogni volta che ci si avvicina, e lo studio diventa un modo socialmente accettabile — perfino lodevole in apparenza — di non iniziare mai il lavoro vero.
È quella che la letteratura sull’apprendimento del codice chiama analysis paralysis, la paralisi da analisi: l’abbondanza di risorse rende più facile continuare a consumare che iniziare a creare.
Il rimedio non è studiare di meno: è agganciare lo studio a un progetto, così che la matematica abbia un punto di arrivo dato dal progetto. La curvatura della loss studiata perché un training sta divergendo si fissa in memoria; la stessa curvatura studiata “perché prima o poi servirà” evapora.
Anti-pattern 2: il tutorial hell. Documentato con precisione nella letteratura sull’apprendimento della programmazione, e altrettanto valido per la matematica. È il ciclo di consumare materiale didattico — corso dopo corso, lezione dopo lezione — senza mai costruire nulla.
Completare un tutorial dà una piccola scarica di dopamina e la sensazione di progredire, mentre la pratica indipendente — più faticosa, più incerta — sembra meno attraente. Si guardano lezioni di analisi una dopo l’altra, ci si sente produttivi, e intanto non si è ancora addestrato un modello né letto un paper intero.
La sensazione di apprendimento non è apprendimento: la competenza si costruisce facendo, non guardando fare. Il rimedio è la stessa logica del primo anti-pattern: dopo ogni pezzo di teoria, un pezzo di pratica che lo usa.
Anti-pattern 3: sovrastimare il prerequisito. La convinzione che senza un dottorato in matematica non si possa nemmeno toccare l’AI. Era molto più vera quindici anni fa, quando il cancello d’ingresso era reale. Oggi è falsa per la maggioranza dei ruoli.
È esattamente il punto di Karpathy citato sopra: si scrive moltissimo codice di reti neurali facendo derivazioni di al più due righe. Sovrastimare il prerequisito tiene fuori dal campo persone che potrebbero lavorarci da subito al gradino 1, e che imparerebbero la matematica del gradino 2 e 3 quando e se il loro lavoro le porta lì.
Anti-pattern 4, speculare ai primi tre: sottostimare il prerequisito quando si sale di gradino. È l’errore opposto, e va nominato perché questo capitolo non sta dicendo “la matematica non serve mai”.
Chi vuole progettare un training — gradino 3 — e si rifiuta di capire la curvatura della loss sbatte contro un muro diagnostico: quando il training diverge, non ha nemmeno il vocabolario per formulare l’ipotesi giusta.
Chi vuole leggere paper di ricerca — gradino 2 — e salta sistematicamente ogni formula non sta leggendo i paper, sta leggendo le loro didascalie. Il gradino determina il fabbisogno in entrambe le direzioni: c’è un minimo sotto il quale non si può scendere, una volta scelto cosa si vuole fare.
Il filo che lega i quattro anti-pattern: nessuno di loro dice “la matematica non serve” e nessuno dice “serve tutta sempre”. Tutti e quattro sono fallimenti nel calibrare il fabbisogno sull’obiettivo. I primi tre sovrastimano o spostano nel tempo; il quarto sottostima. Il modello del gradiente è giusto proprio perché taglia in mezzo a entrambi gli eccessi.
Un’ulteriore confusione che vale la pena disinnescare qui. Il gradiente di fabbisogno non è una scala di valore delle persone.
Chi fa ricerca teorica al gradino 4 non è “più bravo” di chi fa agent coding al gradino 1: fa un lavoro diverso, con un fabbisogno matematico diverso, e spesso con competenze — di prodotto, di sistema, di dominio — che il ricercatore teorico non ha. Il gradiente è di attività, non di prestigio. Leggerlo come una gerarchia di persone è un fraintendimento, e per giunta un fraintendimento scoraggiante.
Anche il modello stesso del gradiente ha i suoi limiti, e l’onestà del capitolo richiede di nominarli.
Primo limite: i quattro gradini sono una semplificazione. La realtà è più continua, e ci sono ruoli ibridi — un AI engineer che per metà del tempo costruisce e per metà legge paper — che stanno a cavallo di due gradini.
Il modello dice “guarda l’obiettivo”, ma molte persone hanno più obiettivi insieme. Il rimedio non è raffinare il modello all’infinito: è applicarlo per singolo compito, non per persona. Lo stesso individuo, sul compito “consegnare la feature” sta al gradino 1; sul compito “capire questo paper che potrebbe migliorare la feature” sta al gradino 2.
Secondo limite: il gradiente dice quanta matematica, non quale nello specifico. Per quello serve la mappa, e la mappa è inevitabilmente datata.
Le architetture cambiano: se tra due anni i diffusion model fossero soppiantati, la riga “processi stocastici verso diffusion” varrebbe meno. Il modello del gradiente è stabile — la struttura uso/leggere/progettare/ricerca non dipende dalla moda del momento — ma la mappa va riletta sapendo che è una fotografia del 2024-2026, non una verità eterna.
Terzo limite, il più importante: il capitolo rischia di essere letto come un permesso di non studiare. Non lo è. Dice che il fabbisogno è condizionale, non che è nullo.
Per tre dei quattro gradini la Parte VI serve, e per due dei quattro serve parecchio. “Opzionale” non vuol dire “evitabile da tutti”: vuol dire “evitabile da chi ha un obiettivo che non la richiede”. Confondere le due letture è il modo più sottile in cui questo capitolo può fare danno.
Applicazioni pratiche
Sezione intitolata “Applicazioni pratiche”Il modello del gradiente e la mappa non sono un esercizio classificatorio: sono strumenti per quattro decisioni concrete.
Pianificare il proprio apprendimento. Un developer che vuole entrare nell’AI può usare la mappa per decidere cosa studiare e in che ordine, evitando di bruciare mesi su prerequisiti che il suo ruolo non userà mai.
Se l’obiettivo è costruire applicazioni con LLM, la Parte VI è quasi interamente rinviabile; se è leggere paper, c’è un sottoinsieme preciso da affrontare. La mappa trasforma “devo studiare la matematica” — vago, scoraggiante, senza fine — in “devo leggere questi tre capitoli” — finito, fattibile, con un termine.
Leggere un paper senza arenarsi. Quando si incontra una formula in un articolo, la mappa dice quale capitolo della Parte VI la decodifica. Il lettore può allora prendere una decisione informata: o quel decoder gli serve e va a leggerlo, oppure può saltare la formula tenendo il senso del paragrafo. La differenza rispetto all’arrendersi è che la decisione è consapevole, non subìta.
Diagnosticare un training. Quando un training diverge o si appiattisce, sapere che esiste il capitolo sulla curvatura e il condizionamento trasforma un problema opaco in un’ipotesi formulabile.
“Non funziona” diventa “forse la loss è mal condizionata, controllo il numero di condizionamento”. La matematica qui non risolve il bug da sola, ma dà il vocabolario per cercarlo — e un problema con un nome è già mezzo risolto.
Decidere se un capitolo della Parte VI vale il tempo. La sezione percorsi di lettura, qui sotto, è uno strumento di triage diretto: dato l’obiettivo, cosa leggere e cosa no. Per un lettore con tempo limitato, è la funzione più immediatamente utile dell’intero capitolo.
Percorsi di lettura per obiettivo
Sezione intitolata “Percorsi di lettura per obiettivo”Sezione operativa di chiusura. In base a cosa vuole fare il lettore, cosa della Parte VI gli conviene leggere. Tutto ciò che segue è raccomandazione pratica, non prescrizione: il lettore conosce il proprio contesto meglio di qualsiasi mappa.
Obiettivo: usare l’AI, fare agent coding, costruire applicazioni con LLM. La Parte VI è saltabile quasi per intero. Basta la Parte IV. Eventualmente, per curiosità sul funzionamento del decoding, il capitolo sulle catene di Markov.
Niente di obbligatorio. Il tempo è speso meglio sulle Parti applicative — gli agenti, il context engineering, il prompt engineering — che su questa.
Obiettivo: leggere paper, capire le architetture moderne. Conviene il capitolo sulle derivate matriciali, per decodificare la notazione; i capitoli su analisi e gradienti e Jacobiani, per capire la backpropagation; il capitolo sulla convessità, per capire perché il deep learning è difficile.
I capitoli su processi stocastici, catene di Markov, calcolo variazionale ed equazioni differenziali servono se i paper che leggi sono su modelli generativi — diffusion, VAE, Neural ODE. Se i tuoi paper sono su altri temi, questi quattro restano rinviabili anche al gradino 2.
Obiettivo: progettare architetture, fare training serio. Conviene tutta la Parte VI, con enfasi sui capitoli su Hessiana e condizionamento e su Taylor. Qui la matematica smette di essere decoder e diventa strumento quotidiano: la userai per scegliere, non solo per leggere.
Obiettivo: ricerca teorica. Tutta la Parte VI è prerequisito, e il capitolo sulla probabilità avanzata — disuguaglianze, convergenza, bound — diventa centrale invece che opzionale. Per questo obiettivo la Parte VI è il pavimento da cui si parte, non il soffitto.
Un’ultima nota, che è anche il senso del nome della Parte. “Opzionale” significa esattamente questo: che esiste un percorso — il primo della lista — per cui la Parte è quasi interamente saltabile, e un percorso — l’ultimo — per cui non lo è affatto.
La label non è un giudizio sul valore della matematica. È un riconoscimento onesto che il lettore della wiki non è uno solo, e che ciascuno arriva con un obiettivo diverso. Questo capitolo, e la Parte che chiude, sono scritti per essere letti da tutti e quattro.
Domande oneste
Sezione intitolata “Domande oneste”Alcune domande tornano abbastanza spesso da meritare una risposta diretta. Tutte le risposte qui sono raccomandazioni pratiche, non fatti né teoremi.
“Non so quasi niente di matematica oltre il liceo. Posso iniziare con l’AI adesso?” Sì, se l’obiettivo è il gradino 1: usare modelli, costruire applicazioni, fare agent coding. È esattamente il caso d’uso più diffuso del 2024-2026, e la matematica del liceo più la Parte IV bastano.
Iniziare adesso, e imparare la matematica quando un compito specifico la richiede, è il percorso giusto — non un compromesso al ribasso.
“Voglio leggere i paper. Devo prima studiare tutta la Parte VI?” No. Devi studiare il sottoinsieme per il gradino 2, e a livello di lettura, non di derivazione. La differenza è enorme: leggere la notazione di un gradiente richiede ore, saper rifare ogni derivazione richiede mesi. Per leggere paper la prima competenza basta. La seconda serve solo se vuoi salire al gradino 3.
“Ho saltato la Parte VI e ora il mio training diverge. Cosa faccio?” Questa è la situazione in cui la Parte VI smette di essere opzionale per te: il tuo obiettivo ti ha portato al gradino 3 senza preavviso.
La risposta non è “studia tutto da capo”, è “studia mirato”: il capitolo sulla Hessiana per la curvatura, quello su Taylor per il learning rate. Lo studio agganciato a un problema reale è il più efficace che esista — e questo, paradossalmente, rende l’aver saltato la Parte VI un buon punto di partenza, non un debito.
“Se le librerie fanno la matematica per me, perché studiarla mai?” Perché le librerie eseguono, non diagnosticano. loss.backward() calcola il gradiente, ma non ti dice perché è diventato NaN. La matematica è il vocabolario della diagnosi. Finché tutto funziona non serve; nel momento in cui qualcosa si rompe, è la differenza tra un’ipotesi e un tentativo cieco.
“Il mio obiettivo cambierà. Come faccio a sapere quanta matematica studiare?” Non devi saperlo in anticipo. Studia quella del gradino su cui sei ora, e risali quando un compito reale ti porta più in alto. Studiare in anticipo la matematica di un gradino che forse non raggiungerai mai è precisamente l’anti-pattern 1. Il modello del gradiente si applica al presente, non a una carriera ipotetica.
Collegamenti
Sezione intitolata “Collegamenti”- Analisi matematica: limiti, continuità, derivate — il primo capitolo della Parte VI; la derivata che addestra ogni rete, e il gradino 2 della mappa.
- Hessiana, curvatura, condizionamento — il capitolo che esemplifica meglio il gradino 3: la matematica come strumento per progettare e diagnosticare un training.
- Derivate matriciali per ML — il caso più puro di fabbisogno di sola decodifica notazionale: serve a leggere i paper, niente di più.
- Equazioni differenziali: l’intuizione — il capitolo-ponte precedente, anch’esso costruito attorno alla distinzione tra analogia ed equivalenza; insieme a questo chiude la Parte VI.
- Parte IV — Fondamenti matematici operativi — la matematica non opzionale: il pavimento sotto la Parte VI, ciò che basta per il gradino 1.
statistica-e-ml(in preparazione) — il capitolo gemello della Parte V: fa per la statistica ciò che questo fa per l’analisi e l’ottimizzazione.mlp-backprop(in preparazione) — dove la regola della catena della Parte VI diventa la meccanica concreta della backpropagation.vaeediffusion(in preparazione) — dove calcolo variazionale, processi stocastici ed equazioni differenziali ricompaiono come meccanica dei modelli generativi.attention-intuizione(in preparazione) — dove le derivate matriciali servono a leggere la formulazione dell’attention.agente-definizione(in preparazione) — il gradino 1 del gradiente: il lavoro con gli agenti, dove la matematica avanzata quasi non compare.
Per andare oltre
Sezione intitolata “Per andare oltre”- Marc Peter Deisenroth, A. Aldo Faisal, Cheng Soon Ong, Mathematics for Machine Learning (Cambridge University Press, 2020; testo completo gratuito su mml-book.github.io). Il riferimento sui prerequisiti matematici del ML, con lo scopo dichiarato di dare gli strumenti per leggere gli altri libri — la matematica come decoder, esattamente la tesi di questo capitolo.
- Atılım Güneş Baydin, Barak A. Pearlmutter, Alexey Andreyevich Radul, Jeffrey Mark Siskind, “Automatic Differentiation in Machine Learning: a Survey” (Journal of Machine Learning Research, vol. 18, 2018). Stabilisce che la backpropagation è un caso particolare di automatic differentiation in reverse mode: la fonte per la classe di affermazione “filiazione” del legame derivate-autodiff.
- Andrej Karpathy, “Hacker’s Guide to Neural Networks” (karpathy.github.io/neuralnets/). La posizione del praticante: la derivazione matematica è in gran parte non necessaria per scrivere codice di reti neurali. Da leggere come controcanto onesto a chi sovrastima il prerequisito.
- Google for Developers, “Machine Learning Crash Course: Prerequisites and prework”. Documentazione ufficiale di un corso introduttivo molto diffuso, che esplicita quanto poco prerequisito matematico serva per il livello d’ingresso.