fast.ai · Practical Deep Learning for Coders · Lección 1
Empezando con fast.ai: de cero a un modelo entrenado en minutos
Después de 12 capítulos de Hugging Face yendo de abajo hacia arriba — atención, tokenización, fine-tuning, GRPO — arranca fast.ai, el curso de Jeremy Howard que enseña exactamente al revés: primero un modelo funcionando de punta a punta, después la teoría que lo explica.
1. Top-down: por qué este curso empieza al revés
Casi toda enseñanza técnica universitaria es bottom-up: fundamentos primero, aplicaciones después — es como aprender música memorizando teoría musical durante años antes de que te dejen tocar una canción. fast.ai apuesta por lo opuesto: mostrar una solución completa, útil, de estado del arte a un problema real en los primeros cinco minutos, y recién después ir bajando capa por capa a entender cómo está hecha esa solución por dentro. Jeremy Howard lo resume así: uno aprende mejor cuando hay un contexto y un propósito que entender intuitivamente, no manipulación de símbolos algebraicos en el vacío.
Esto no es solo una preferencia pedagógica — cambia qué se puede hacer desde el primer día. Con HF LLM Course, entender por qué la atención funciona requería antes entender tokenización, embeddings, matrices de queries/keys/values. Acá, en los primeros minutos vas a entrenar y desplegar un modelo real sin haber visto una sola derivada.
2. Qué es deep learning, sin rodeos
El libro no empieza con una definición técnica de red neuronal — empieza con la definición de
machine learning que dio Arthur Samuel en IBM, en 1949: en vez de programar paso a paso
qué hacer, se le muestran ejemplos del problema a la máquina y se la deja descubrir cómo resolverlo. El
esquema es: inputs + weights → un modelo → resultados →
una medida de performance → esa medida ajusta los weights → se repite. Es,
literalmente, el training loop completo descripto en 1949, casi 60 años antes de que "deep learning" fuera
una palabra de uso corriente.
Traducido a vocabulario moderno: weight assignment son los parámetros; program es el modelo; results son las predicciones; la medida de performance es el loss. Una red neuronal es un tipo particular de modelo dentro de este esquema, notable por una propiedad matemática concreta (el universal approximation theorem): es una función tan flexible que, variando solo sus weights, puede aproximar cualquier problema computable — y existe un mecanismo general para encontrar esos weights, stochastic gradient descent (SGD), que vas a construir a mano en la Lección 3.
📜 Una distinción que el libro insiste en marcar
"Arquitectura" y "modelo" no son sinónimos, aunque mucha gente los use indistintamente: la arquitectura es la forma funcional/plantilla matemática (por ejemplo, "un ResNet-34"); el modelo es esa arquitectura más un conjunto particular de parámetros ya ajustados. Vas a ver esta confusión constantemente en papers y en foros — vale la pena tenerla clara desde acá.
3. El ejemplo insignia: gatos vs. perros en 6 líneas
El primer modelo real del curso clasifica gatos y perros usando el Oxford-IIIT Pet Dataset (7.349 fotos, 37 razas), con una convención de etiquetado curiosa: si el nombre del archivo empieza con mayúscula, es gato.
from fastai.vision.all import *
path = untar_data(URLs.PETS)/'images'
def is_cat(x): return x[0].isupper()
dls = ImageDataLoaders.from_name_func(
path, get_image_files(path), valid_pct=0.2, seed=42,
label_func=is_cat, item_tfms=Resize(224))
learn = vision_learner(dls, resnet34, metrics=error_rate)
learn.fine_tune(1) # error_rate final: menor a 0.02
Menos de 2% de error, en una sola época de fine-tuning, sobre una GPU gratuita. El libro usa este mismo
patrón para adelantar, como preview, tres capítulos enteros que van a llegar más adelante:
segmentación semántica (unet_learner sobre CamVid, clasificar cada píxel de una
imagen), NLP (text_classifier_learner con AWD_LSTM sobre
reviews de IMDb — ya vas a ver en la Lección 4 por qué esto está obsoleto) y datos tabulares
(tabular_learner prediciendo si alguien gana más de $50k/año). También menciona algo que vale
la pena guardar: casi cualquier dato se puede "reinterpretar como imagen" para aprovechar CNNs —
espectrogramas de sonido, series temporales convertidas a gráficos, binarios de malware renderizados como
imágenes en escala de grises para detectar patrones visuales de virus.
4. Terminología que hay que fijar bien
Varios términos que el libro define con más precisión de la que parece a primera vista:
- Pretrained model / transfer learning / fine-tuning: un modelo pretrained ya tiene sus parámetros ajustados en otro dataset (acá, ImageNet: 1,3 millones de fotos, 1000 categorías). Transfer learning es usar ese modelo para una tarea distinta de la original. Fine-tuning es la técnica concreta: el método
fine_tunede fastai hace dos pasos internamente — primero ajusta solo la capa final nueva (con weights aleatorios) durante una época, después ajusta todo el modelo, con las capas finales moviéndose más rápido que las tempranas. - Loss vs. metric: no son lo mismo aunque a veces coincidan. El loss es lo que optimiza SGD — elegido para que el sistema de entrenamiento pueda calcular su derivada, no para que un humano lo entienda. La metric (acá,
error_rate) está pensada para consumo humano, elegida por ser intuitiva. - Validation set / overfitting: un 20% de los datos (
valid_pct=0.2) queda completamente afuera del entrenamiento, solo para medir qué tan bien generaliza el modelo. El libro llama a overfitting "el problema más importante y desafiante" del ML — el modelo empieza a memorizar el training set en vez de aprender patrones generales, algo que se detecta cuando el loss de validación empeora mientras el de entrenamiento sigue bajando.
🟢 Todo esto ya lo viste en profundidad — acá es la versión 2020
Fine-tuning, overfitting, loss vs. metric, transfer learning: son exactamente los mismos conceptos que
ya trabajaste con lupa en el
Capítulo 3 y el
Capítulo 11 de HF, aplicados ahí a
LLMs con SFTTrainer y LoRA. Acá aparecen en su forma original de 2020, aplicados a visión
con vision_learner — útil no porque el concepto cambie, sino para ver la misma idea
expresada con una API completamente distinta y notar qué es realmente esencial y qué es detalle de
implementación de una librería particular.
5. Los tres mitos que el curso quiere tirar abajo
El capítulo dedica una sección entera a desmentir tres creencias que, según el libro, alejan innecesariamente a gente capaz del deep learning:
| Mito | Lo que dice el libro |
|---|---|
| "Hace falta mucha matemática avanzada" | Alcanza con matemática de secundaria. |
| "Hacen falta muchos datos" | Hay resultados récord documentados con menos de 50 ejemplos. |
| "Hace falta hardware carísimo" | Se puede alcanzar trabajo de nivel estado-del-arte gratis o alquilando GPU por centavos la hora. |
El libro cita incluso a Elon Musk diciendo que "un PhD definitivamente no es requerido" para trabajar en el campo. Vale la pena leer esto con la distancia de 2026: sigue siendo cierto que no hace falta un doctorado para usar deep learning con criterio — pero la barra para entrenar desde cero un modelo de frontera sí subió muchísimo (los LLMs de escala moderna cuestan millones de dólares de cómputo). Lo que el mito desmiente sigue siendo válido para el 95% de los problemas prácticos reales, justo los que este curso enseña a resolver.
6. Resumen
- fast.ai enseña top-down: un modelo funcionando primero, la teoría que lo explica después — lo opuesto al recorrido bottom-up que hiciste con HF.
- Deep learning, en el fondo, es el training loop que describió Arthur Samuel en 1949: mostrarle ejemplos a una máquina y dejar que ajuste sus propios parámetros en vez de programarla paso a paso.
- Arquitectura ≠ modelo; loss ≠ metric — dos distinciones que generan confusión constante y vale la pena tener claras desde el día uno.
- Transfer learning + fine-tuning es la misma idea que ya viste en HF, ahora en su forma original de fastai, aplicada a visión.
- No hace falta doctorado, big data ni hardware carísimo para la enorme mayoría de problemas prácticos — sí para entrenar un modelo de frontera desde cero, que es un problema distinto al que resuelve este curso.