Tensores para Aprendizaje Automático

Un taller de 3 horas, más tres controles de conocimiento con Kahoot

🇬🇧 Prefer English? This page in English. El taller se imparte en inglés, pero puedes preguntar en español cuando quieras.

Qué es esto

Un taller de 195 minutos que te lleva de «sé lo que es una matriz» a «sé manipular, resolver, convolucionar y factorizar tensores». Está construido solo con datos reales: medidas reales de tumores, dígitos manuscritos reales, imágenes reales de histología, viajes reales en taxi de Nueva York, tráfico aéreo real. No hay nada inventado con números aleatorios, porque los datos reales contienen problemas que los aleatorios nunca muestran: valores faltantes, variables en escalas incompatibles, píxeles que nunca cambian. Encontrar esos problemas es parte del trabajo.

Todo procede de un único documento fuente, el manual: las diapositivas, los cuadernos y esta página se generan a partir de él.

Para quién es

Has leído Deep Learning (Goodfellow, Bengio & Courville), Chapter 2 — Linear Algebra. Sabes qué es una matriz. Este taller no supone ningún conocimiento previo de teoría de tensores, y cada término nuevo se define donde aparece por primera vez.

Requisitos previos

  • El álgebra lineal del capítulo 2 de Deep Learning (Goodfellow, Bengio & Courville), Chapter 2 — Linear Algebra: vectores, matrices, el producto matricial, la inversa, la descomposición espectral y la SVD.
  • Una cuenta de Google para ejecutar los cuadernos en Colab. No hay que instalar nada.
  • Al principio se descargan tres archivos CSV. Ejecuta el cuaderno 00 antes de la sesión y avisa enseguida si falla: una descarga que falla en silencio te dejará atascado en las secciones 07 y 10.
  • Trabajo previo obligatorio: completa linear-algebra-deep-learning antes de la sesión — 14 cuadernos breves de Colab, bilingües (~2–3 horas en total), que cubren exactamente el álgebra lineal anterior, de vectores a PCA. Este taller avanza rápido y da por hecho que ya lo hiciste.

Cómo ejecutar los cuadernos

Haz clic en cualquier enlace Colab de la tabla. El cuaderno se abre en tu navegador, ya conectado a un entorno de ejecución gratuito.

  1. Cada cuaderno es autónomo. Su celda de preparación instala e importa exactamente lo que esa sección necesita y carga sus propios datos, así que puedes abrir cualquiera en frío, en cualquier orden, sin haber ejecutado los demás.
  2. Ejecuta primero la celda de preparación (▶ o Shift+Enter).
  3. Trabaja las celdas # TODO. Cada una tiene debajo una celda de solución, plegada: ábrela después de intentarlo, no antes.
  4. Colab avisará de que el cuaderno no lo escribió Google. Es lo esperado; el código fuente está en GitHub.

Los cambios que hagas en Colab no se guardan en este repositorio. Usa Archivo → Guardar una copia en Drive para conservar tu trabajo.

Cómo trabajamos

Cuadernos en GitHub, ejecución en Colab, discusión en Discord. Dos ritmos:

  • Bloques de ejercicios: 10 minutos programando y 5 de explicación.
  • Bloques de grupo: 10 minutos de discusión en tu canal y luego puesta en común.

De dónde vienen los datos

Todos los conjuntos de datos son reales, y cada uno es algo que alguien midió de verdad. Nada en este taller se inventa con números aleatorios.

Taxis amarillos en una avenida de Manhattan, la ciudad cuyos 6.433 viajes forman el conjunto de datos de taxis.

Viajes en taxi de Nueva York
Descomposición de Tucker

Vista aérea de hileras de viviendas en el sur de California, el tipo de distrito cuyo valor mediano forma el conjunto de datos de vivienda.

Vivienda en California
Mínimos cuadrados, pseudoinversa

Tres fotogramas de una tormenta en l'Almadrava, separados por dos segundos; las olas cambian entre fotogramas, y por eso el eje temporal lleva información.

Grabación de una tormenta
Diseño de un pipeline de vídeo

Glándulas colónicas teñidas por inmunohistoquímica, con la señal marrón de DAB marcando la expresión de FHL2 sobre un contraste azul de hematoxilina.

Cortes de histología
Reshape y transposición

Dos vistas histopatológicas de carcinoma ductal invasivo de mama, el tipo de preparación del que proceden las mediciones de núcleos tumorales.

Mediciones de tumores
Indexación y broadcasting

Un Douglas DC-3 en vuelo, el avión de la era 1949-1960 cuyos totales mensuales de pasajeros cuenta el conjunto de datos de vuelos.

Tráfico aéreo
Recursión y pronóstico

Las secciones

Lee una fila de izquierda a derecha: las diapositivas en cualquiera de los dos idiomas, el cuaderno que hay que ejecutar y el control de Kahoot que lo cubre. Las filas 🎯 son los tres cuestionarios, en el orden real en que se ejecutan.

# Sección Formato Min Diapos EN Diapos ES Cuaderno Kahoot
00 Preparación y bienvenida
Carga todos los conjuntos de datos y confirma que tu entorno funciona antes de empezar.
preparación 5 EN ES Colab · src
01 Qué es un tensor
El vocabulario, la forma en NumPy y las tres operaciones que importan.
demostración 20 EN ES Colab · src Q1
02 Pensar en N dimensiones
Discutir qué significa cada eje y por qué un eje de lote difiere de un eje temporal.
grupo 20 EN ES Colab · src
03 Indexación y broadcasting con datos reales
Seleccionar la columna correcta de datos reales de tumores y encontrar píxeles de varianza cero.
ejercicio 15 EN ES Colab · src Q1
04 Reshape y transposición de imágenes reales
De HWC a CHW, de NHWC a NCHW, y por qué reshape destruye una imagen en silencio.
ejercicio 15 EN ES Colab · src Q1
🎯 Kahoot 1 — Vocabulario de tensores y formas · 6 preguntas · 5 mincubre las secciones 01, 03, 04
05 Diseño de un pipeline de vídeo
Diseñar la forma del tensor en cada etapa de dos sistemas de vídeo reales.
grupo 15 EN ES Colab · src
06 Contracción con einsum
Una sola notación para el producto punto, el producto matricial y un lote de imágenes.
ejercicio 15 EN ES Colab · src Q2
07 Inversas y la pseudoinversa
Resolver un sistema de 20.433 ecuaciones que no tiene solución exacta.
ejercicio 15 EN ES Colab · src Q2
🎯 Kahoot 2 — Einsum, distancia y la pseudoinversa · 6 preguntas · 5 mincubre las secciones 06, 07
08 Recursión con matrices y vectores
Aplicar una misma matriz una y otra vez: Fibonacci, autovectores y un pronóstico real.
demostración 10 EN ES Colab · src
09 Convolución y deconvolución
La convolución es un producto matricial estructurado, y el desenfoque se puede deshacer en parte.
ejercicio 15 EN ES Colab · src Q3
10 Descomposición de Tucker con datos reales
PCA generalizado a todos los ejes, sobre un tensor real de viajes en taxi de Nueva York.
ejercicio 15 EN ES Colab · src Q3
🎯 Kahoot 3 — Convolución y descomposiciones tensoriales · 6 preguntas · 5 mincubre las secciones 09, 10
11 Cierre y ejercicios para casa
Qué conecta los bloques 4, 5 y 6, más cinco ejercicios para casa.
cierre 5 EN ES Colab · src

No aparecen en la tabla: las tres pausas de 5 minutos. Las doce secciones suman 165 minutos; los tres cuestionarios añaden 15 y las pausas otros 15, que es como la sesión llega a 195 minutos.

Una nota sobre el idioma

El taller se imparte en inglés, pero muchos términos son casi idénticos en español: tensor/tensor, matrix/matriz, axis/eje, dimension/dimensión, decomposition/descomposición, factorization/factorización, contraction/contracción, convolution/convolución, recursion/recursión.

Pregunta en español o en inglés, lo que te permita preguntar más rápido. Las diapositivas están en los dos idiomas y cada encabezado de los cuadernos lleva un resumen de una línea en español.

Dónde seguir

  • Manual: el texto completo del estudiante y las notas del facilitador, incluidos los cuatro apéndices para casa.
  • Cuadernos: los doce, con sus insignias de Colab.
  • Kahoot: los tres cuestionarios y cómo ejecutarlos.