Article · Profile and thought
Zero to Hero — Andrej Karpathy e la Democratizzazione dell'Educazione AI
Original source: karpathy.ai/zero-to-hero.html — summary and rework in own words.
Cos'è: Neural Networks: Zero to Hero è una serie di video YouTube pubblicata da Andrej Karpathy tra il 2022 e il 2023. Partendo da zero assoluto — nessuna libreria esterna, solo Python e NumPy — la serie costruisce pezzo per pezzo un motore di autograd, modelli linguistici crescenti e infine un GPT-2 funzionante in 300 righe di codice. Vista da milioni di persone inclusi ricercatori senior, è considerata la risorsa educativa gratuita più efficace nel campo del deep learning.
Chi è Andrej Karpathy
Andrej Karpathy è una delle figure più influenti nella storia recente del deep learning applicato. Nato in Slovacchia, cresciuto in Canada, ha completato il dottorato a Stanford nel laboratorio di Fei-Fei Li — la creatrice di ImageNet — su Computer Vision e reti neurali ricorrenti. Nel 2015 ha scritto "The Unreasonable Effectiveness of Recurrent Neural Networks", un post diventato leggendario nella community per la chiarezza con cui mostrava le capacità dei modelli linguistici dell'epoca.
Da Stanford è passato a OpenAI come ricercatore fondatore, dove ha lavorato su policy gradient, reinforcement learning e generative models. Nel 2017 è entrato in Tesla come Senior Director of AI, responsabile del team che sviluppava il sistema di guida autonoma Autopilot — gestendo centinaia di milioni di miglia di dati reali, la più grande operazione di computer vision applicata al mondo. Nel 2022 ha lasciato Tesla, è tornato brevemente a OpenAI, poi ha fondato una sua startup educativa (Eureka Labs) nel 2024.
Lungo tutto questo percorso, Karpathy non ha mai smesso di insegnare. Il suo blog, i tweet tecnici, e infine la serie YouTube lo distinguono come forse il maggiore comunicatore tecnico del campo: capace di rendere accessibili concetti profondi senza sacrificarne la precisione.
micrograd: autograd da zero in 150 righe
Il primo video della serie — pubblicato nel settembre 2022, oltre 3 ore — costruisce micrograd: un motore di automatic differentiation (autograd) implementato da zero in Python puro. Nessuna dipendenza da PyTorch, TensorFlow o NumPy per il calcolo dei gradienti. Solo classi Python che implementano i nodi del grafo computazionale e la backpropagation manualmente.
La scelta di partire dall'autograd è pedagogicamente brillante. PyTorch e TensorFlow sono strumenti meravigliosi che nascondono completamente il meccanismo che li rende funzionare: il calcolo automatico dei gradienti attraverso il grafo computazionale via chain rule. La maggior parte degli studenti di ML usa questi strumenti come scatole nere — chiama .backward() e i gradienti appaiono, senza capire come. micrograd apre la scatola nera.
Dopo aver visto il video, lo studente capisce che y.backward() non è magia: è un'applicazione ricorsiva della chain rule del calcolo differenziale attraverso un grafo diretto aciclico. Ogni operazione — addizione, moltiplicazione, tanh — ha una formula di backward pass definita. La backpropagation è semplicemente la visita di questo grafo in ordine topologico inverso. Con 150 righe di Python il concetto è completamente demistificato.
makemore: dai bigrammi al transformer
La seconda parte della serie costruisce makemore: un modello che genera nomi di persona che "suonano reali" (il nome del dataset è una lista di nomi americani). Il punto non sono i nomi: è il percorso attraverso cui il modello cresce.
Si parte dal modello bigram: la probabilità di ogni carattere dipende solo dal carattere precedente, calcolata come semplice conteggio di frequenze. È l'approccio statistico classico dell'NLP degli anni '90. Poi si passa a un MLP (Multi-Layer Perceptron) con embedding di caratteri, ispirato al paper di Bengio et al. 2003 sul language modeling neurale — un paper del 2003 che precede i transformer di 14 anni ma contiene già molti degli ingredienti concettuali fondamentali. Si introduce la batch normalization, si discutono i problemi del training (saturazione delle attivazioni, morte dei neuroni, inizializzazione dei pesi).
Si costruisce poi un modello ispirato a WaveNet (DeepMind, 2016): una rete convoluzionale che processa il contesto con una struttura dilated gerarchica. Ogni step aggiunge complessità ma la serie mantiene invariabilmente il codice visibile sullo schermo: nessuna magia nascosta, ogni riga spiegata. Infine si arriva al transformer: self-attention, multi-head, positional encoding — costruito da zero, parte per parte, con ogni blocco verificato numericamente.
nanoGPT: GPT-2 in 300 righe
Il video più celebre della serie è "Let's build GPT: from scratch, in code, spelled out." — quasi 2 ore in cui Karpathy implementa nanoGPT, una reimplementazione di GPT-2 in circa 300 righe di Python/PyTorch. Il video mostra il training su Shakespeare e produce output che "sembrano Shakespeare" — abbastanza bene da sorprendere chi si aspettava output incoerente da un modello così piccolo.
nanoGPT esiste anche come repository GitHub con il codice completo. Il repository è uno dei più stellati nel campo dell'educazione ML: non è uno strumento da usare in produzione, ma uno strumento da leggere, modificare, capire. Molti ricercatori e ingegneri lo usano come starting point per esperimenti custom — è abbastanza piccolo da capire interamente ma abbastanza completo da essere estendibile.
La scelta di GPT-2 come target finale non è casuale. GPT-2 è abbastanza semplice da essere costruito in un pomeriggio (con guida), ma abbastanza significativo da essere il progenitore diretto di GPT-3, GPT-4 e Claude. Chi capisce nanoGPT capisce, in linea di principio, come funziona qualsiasi transformer decoder moderno. Le differenze tra GPT-2 e GPT-4 sono di scala, di dati di training, di tecniche di allineamento — non di architettura fondamentale.
Perché è efficace: la filosofia "si impara costruendo"
Esistevano già corsi universitari eccellenti su deep learning: il corso CS231n di Stanford (che Karpathy stesso aveva creato), fast.ai di Jeremy Howard, il corso di Andrew Ng su Coursera. Cosa rende la serie Zero to Hero diversa?
La differenza è epistemologica prima che pedagogica. Quasi tutti i corsi insegnano il deep learning come sistema di componenti da usare: installa PyTorch, importa questo layer, chiama questa funzione. La comprensione è dall'alto verso il basso — si usa prima, si capisce poi (o mai). Zero to Hero forza la comprensione dal basso verso l'alto: si costruisce prima ogni componente da zero, e solo dopo si rivela che quello che si è costruito è esattamente l'ingrediente usato da OpenAI, Google e Anthropic.
C'è anche un elemento di demistificazione psicologica. Uno studente che ha scritto di propria mano le 150 righe di micrograd sa, con certezza intuitiva, che la backpropagation non è un algoritmo misterioso: è chain rule applicata ricorsivamente. Quando incontra il termine "gradient tape" di TensorFlow o "autograd" di PyTorch, non si spaventa. Uno studente che ha costruito l'attention mechanism da zero non percepisce i transformer come oggetti impossibili da capire. Questa sicurezza pratica è difficile da ottenere altrimenti.
Impatto: milioni di spettatori, inclusi ricercatori senior
I video della serie hanno accumulato decine di milioni di visualizzazioni totali. I commenti sono una lettura insolita per YouTube: spesso tecnici, spesso da persone con lauree in informatica o matematica che ringraziano per la chiarezza su concetti che credevano di capire ma evidentemente non capivano a fondo. Ricercatori con dottorati da università di primo livello hanno commentato di aver imparato qualcosa di nuovo sul meccanismo di attenzione o sulla normalizzazione dei batch.
L'impatto più profondo, però, è sulla fascia di persone che erano "bloccate fuori" dal campo. Il deep learning nel 2021 aveva una barriera d'ingresso alta: richiedeva familiarità con il calcolo differenziale multivariato, l'algebra lineare, Python avanzato, PyTorch o TensorFlow, e una cultura tecnica specifica che si acquisiva solo leggendo paper e frequentando laboratori universitari. Per chi non aveva accesso a questi ambienti — sviluppatori software senza background ML, autodidatti in paesi senza università di ricerca di primo piano — il salto era scoraggiante.
Zero to Hero ha abbassato questa barriera in modo significativo. Non elimina la necessità di studiare matematica di base — Karpathy è esplicito sul fatto che serve capire le derivate — ma mostra concretamente che la conoscenza necessaria per costruire un GPT funzionante è accessibile. Molti ML engineers che oggi lavorano in laboratori e startup citano questa serie come il momento in cui il campo è diventato "reale" per loro.
La differenza con Software 3.0: manifesto vs. educazione pratica
Karpathy è noto anche per il talk "Software 3.0" (febbraio 2025), in cui descrive la sua visione dei LLM come una nuova forma di programmazione: i modelli linguistici come CPU universali programmabili in linguaggio naturale, con il prompting come il nuovo codice. È un manifesto intellectuale, un framework per pensare all'AI come fenomeno culturale e tecnico.
Zero to Hero è qualcosa di completamente diverso. Non è un manifesto: è un curriculum. Dove Software 3.0 parla di "cosa significano i LLM", Zero to Hero dice "costruiscilo tu stesso, adesso, riga per riga". Il primo cambia il modo in cui si pensa ai sistemi AI. Il secondo cambia il modo in cui si costruiscono.
Entrambi sono contributi significativi — in dimensioni ortogonali. Ma se dovessi scegliere quale ha avuto impatto maggiore sul numero di persone capaci di costruire e comprendere i sistemi AI moderni, la serie educativa batte il manifesto. I video sono ancora attivi, ancora rilevanti, e ancora il miglior punto di partenza gratuito per chiunque voglia capire davvero come funziona un transformer — non solo usarlo.
Link alla fonte originale
karpathy.ai/zero-to-hero.html →
Pagina raccolta della serie con link ai video YouTube. Repository nanoGPT: github.com/karpathy/nanoGPT. Repository micrograd: github.com/karpathy/micrograd. Tutti pubblici e gratuiti.