Curso gratuito · 10 notebooks prácticos · sin GPU
Redes Neuronales 1001
De una sola neurona artificial a un GPT que entrenas tú mismo. Cada idea se construye desde los primeros principios, con código que puedes leer, ejecutar y romper en un equipo corriente, en minutos.
- 10módulos
- ~15 hde estudio
- 0GPU o claves de API
- 100%código ejecutable
Constrúyelo y después usa la librería
Cada idea central se escribe primero a mano en NumPy o en unas pocas líneas de PyTorch, se comprueba numéricamente y solo entonces se sustituye por la versión del framework.
Lo bastante pequeño para un equipo personal
Los modelos tienen el tamaño justo para entrenar en una CPU en segundos o minutos y aun así mostrar el comportamiento real: filtros aprendidos, atención que reordena palabras, habilidades que surgen durante el entrenamiento.
Resultados honestos
Cada modelo se compara con una referencia, cada métrica se mide con datos reservados, y los notebooks dicen claramente cuándo una técnica no ayuda.
Temario
Cuatro partes, diez módulos: tres que construyen las ideas y un proyecto final que las aplica a un caso real. Cada módulo es un notebook: lee las explicaciones, ejecuta las celdas y después haz los ejercicios del final. Tu progreso se guarda en este navegador.
Fundamentos
Cómo calcula, aprende y generaliza una red.
La neurona artificial
Construye una neurona en diez líneas de NumPy, conoce todas las funciones de activación de la IA moderna y entrénala con descenso de gradiente.
- pesos y sesgo
- activaciones
- gradientes que se desvanecen
- perceptrón
- descenso de gradiente
Redes neuronales y retropropagación
Apila neuronas en capas, escribe un pequeño motor de autograd, deduce la retropropagación a mano, compruébala numéricamente y compara optimizadores.
- MLP
- regla de la cadena
- autograd
- comprobación de gradientes
- SGD, momentum, Adam
- inicialización
Entrenar bien redes profundas
La generalización es el verdadero objetivo: diagnostica sesgo y varianza, regulariza, normaliza, programa la tasa de aprendizaje, busca hiperparámetros y decide qué corregir.
- entrenamiento/validación/prueba
- sesgo y varianza
- decaimiento de pesos
- dropout
- batch norm
- calendarios de LR
- análisis de errores
Arquitecturas clásicas
Los sesgos inductivos para imágenes, series temporales y lenguaje.
Redes neuronales convolucionales
La convolución desde cero, una CNN con dígitos manuscritos, aumento de datos, conexiones residuales, aprendizaje por transferencia y convoluciones eficientes.
- convolución
- pooling
- aumento de datos
- ResNet
- transferencia
- separables en profundidad
Redes recurrentes y pronóstico
RNN y LSTM pronostican demanda horaria frente a una referencia estacional; mide cómo se desvanecen los gradientes en el tiempo; pronostica un día completo.
- RNN
- LSTM y GRU
- BPTT
- variables de calendario
- pronóstico recursivo frente a directo
Embeddings de palabras y traducción
Entrena embeddings al estilo word2vec y encuentra analogías, mide y elimina un sesgo sembrado, y traduce de inglés a español con atención y búsqueda en haz.
- skip-gram
- analogías
- sesgo en embeddings
- codificador-decodificador
- atención
- búsqueda en haz
Aprendizaje profundo moderno
Atención, modelos de lenguaje tipo GPT y tareas modernas de visión.
Construir un transformer
Codificaciones posicionales, atención de producto escalar y multicabeza, máscaras, flujo residual y LayerNorm, y después un transformer completo que aprende a ordenar.
- autoatención
- multicabeza
- máscaras
- LayerNorm
- rollout de atención
Un GPT desde cero
Preentrena un GPT de caracteres con un corpus multitarea, observa cómo surgen las habilidades, muestrea, añade una caché KV, haz ajuste fino y entiende por qué importa la escala.
- tokenización
- predecir el siguiente token
- habilidades emergentes
- muestreo
- caché KV
- ajuste fino
Visión más allá de la clasificación
Segmenta cada píxel con una U-Net, detecta objetos al estilo YOLO con supresión de no máximos y reconoce clases no vistas con un embedding de pérdida triplete.
- U-Net
- IoU
- YOLO
- NMS
- precisión y exhaustividad
- pérdida triplete
Proyecto final
Todo junto en un caso real, desde las fotos sin procesar hasta un modelo que podría ir a una línea de producción.
Ejecútalo tú mismo
Cada página de lección muestra el notebook con sus resultados guardados, así que puedes leer todo el curso en el navegador. Para experimentar, descarga un notebook o ábrelo en Google Colab desde la página de la lección, o clona el repositorio y ejecútalo todo en tu equipo:
git clone https://github.com/fborbon/academy.git
cd academy/neural-networks/es
python3 -m venv .venv && source .venv/bin/activate
pip install -r ../requirements.txt
jupyter lab
Algunos datos de los ejercicios, como los corpus de texto de los notebooks 06 y 08, están en inglés a propósito; cada notebook explica por qué.
Qué necesitas
- Python: manejarte con funciones, bucles y listas. Haber usado NumPy ayuda, pero se va presentando sobre la marcha.
- Matemáticas: álgebra de secundaria; las derivadas se explican cuando aparecen. No hace falta un curso de álgebra lineal.
- Equipo: cualquier equipo personal de la última década. El notebook más largo (el GPT) entrena en unos 15 minutos en una CPU.
Lecturas recomendadas
- He et al., Deep Residual Learning for Image Recognition (2015)
- Ronneberger et al., U-Net (2015) · Redmon et al., You Only Look Once (2015)
- Schroff et al., FaceNet (2015) · Mikolov et al., word2vec (2013)
- Bolukbasi et al., Debiasing Word Embeddings (2016)
- Bahdanau et al., Neural Machine Translation by Jointly Learning to Align and Translate (2014)
- Vaswani et al., Attention Is All You Need (2017)
- Karpathy, The Unreasonable Effectiveness of Recurrent Neural Networks (2015)
Los artículos están en inglés, que es el idioma en que se publican.