Setup. La rejilla izquierda es x0: una "imagen" de juguete de 16×16 píxeles en escala de grises con una "Z" (piensa en el equipo de diseño de Zara digitalizando su logotipo). La derecha es xt, calculada píxel a píxel con la forma cerrada del panel: la misma ε sorteada con mulberry32 para que el experimento sea reproducible. Debajo, las dos curvas que gobiernan todo: √ᾱt (peso de la señal) y √(1−ᾱt) (peso del ruido), con el marcador en tu t.
Juega. El slider ejecuta la fórmula de verdad: cada posición del slider recalcula los 256 píxeles. Observa que la destrucción no es lineal: la zona interesante (donde señal y ruido pelean) está entre t ≈ 200 y t ≈ 600 con el schedule lineal. El lector da el SNR exacto, su versión en decibelios y la correlación empírica entre xt y x0.
Lee así. El forward es la mitad "tonta" de la difusión: no aprende nada, solo fabrica pares (xt, ε) que servirán de ejercicios resueltos para entrenar la red. La gracia del negocio está en la otra mitad: deshacer este proceso.
Mensaje. Destruir es fácil y barato; toda imagen termina en el mismo sitio (ruido 𝒩(0,I)). Si una red aprende a deshacer un paso de esta destrucción, podrá partir de ruido puro y fabricar imágenes nuevas: ese es el modelo que está detrás de Stable Diffusion, Midjourney y los generadores de catálogo de Inditex.
Términos. x0: imagen original (píxeles en [−1, 1]). xt: imagen tras t pasos de ruido. ε: ruido gaussiano estándar. SNR: señal/ruido; 0 dB significa "empate". mulberry32: generador pseudoaleatorio con semilla, para que el ruido sea reproducible.
Setup. Reproduzco con sliders el ejemplo trabajado del deck: una "señal" escalar x0 = 1 (piensa en el valor de un píxel concreto del logo) y tres pasos de forward con β = (β1, β2, β3). Arriba, barras por paso: la media superviviente √ᾱt·x0 contra la desviación del ruido √(1−ᾱt). Abajo, la distribución completa de xt en cada paso: tres gaussianas que se aplanan y se centran hacia 0.
Juega. Cada slider recalcula αt, el producto acumulado ᾱt, las medias y las desviaciones. La pregunta de negocio escondida: ¿cuánto "presupuesto de destrucción" gastas en cada paso? Un schedule es exactamente eso: el reparto del presupuesto de ruido entre los T pasos.
Lee así. Cuando la barra dorada y la gris se cruzan, el ruido empieza a mandar. Con los valores del deck eso ocurre justo en el paso 3 (0.710 contra 0.704): la señal ya es minoría.
Mensaje. El schedule βt controla la velocidad de destrucción y no hay vuelta atrás dentro del producto: elegirlo bien es crucial para la calidad del generador. La siguiente slide compara los dos schedules estándar de la industria.
Términos. βt: fracción de varianza de ruido inyectada en el paso t. ᾱt: fracción de varianza de señal superviviente hasta t. schedule: la sucesión completa (β1,…,βT).
Setup. Arriba, la señal acumulada ᾱt a lo largo del proceso para los dos schedules: lineal (tinta) y cosine (dorado), ambos calculados de verdad con las fórmulas del panel para el T que elijas. Abajo, las βt correspondientes (la "inyección de ruido por paso"). La línea vertical marca el instante t/T que estás inspeccionando.
Juega. El slider de T reconstruye los dos schedules completos (cientos de productos acumulados); el cursor t/T lee ᾱ, SNR y SNR en dB de cada schedule en ese instante. Nada está precocinado: si cambias T, las β lineales se reescalan y el cosine se reevalúa punto a punto.
Lee así. La diferencia clave no está en el final (ambos llegan a ruido puro) sino en el camino: el cosine mantiene la curva ᾱ alta y plana al principio y concentra la destrucción en el tramo final.
Mensaje. Cuando Stable Diffusion genera la foto del producto para el catálogo, la calidad del detalle fino depende de cuántos pasos de denoising caen en la zona de SNR útil. El schedule es la palanca silenciosa que decide eso, y el cosine es hoy el estándar por esta razón exacta.
Términos. t½: primer paso con ᾱ < 0.5 ("media señal"). dB: decibelios, 10·log10(SNR); 0 dB = empate señal/ruido. DDPM: el modelo de difusión original (Ho et al., 2020), con schedule lineal.
Setup. En vez de una imagen, ahora difundo un dataset: 400 puntos en 2D con forma de espiral (imagínalo como el embedding 2D de los clientes de un e-commerce: estructura fuerte, nada gaussiana). Arriba, la nube original (gris) y la nube difundida xt (dorado), punto a punto con la forma cerrada. Abajo, el histograma de la primera coordenada de xt, con dos curvas encima: la mezcla exacta pt (computada con las 400 gaussianas del panel) y la 𝒩(0,1) objetivo, discontinua.
Juega. El slider mueve los 400 puntos de verdad y recalcula el histograma, la mezcla exacta y el estadístico de Kolmogorov–Smirnov contra 𝒩(0,1). Mira cómo la convergencia es gradual: primero se pierde la estructura fina (los brazos), luego la global (el hueco central).
Lee así. El lector da media y desviación empíricas de la coordenada y la distancia KS. La media va a 0, la desviación a 1, y KS decae: tres números contando la misma historia que tus ojos.
Mensaje. El forward es un puente entre "tus datos" (cualquier cosa: espirales, catálogos, voces) y una distribución universal y muestreable. La generación consiste en cruzar ese puente en sentido contrario, y eso exige una sola pieza nueva: saber en cada punto hacia dónde está "menos ruido". Esa pieza es la red εθ de las dos slides siguientes.
Términos. mezcla exacta pt: densidad verdadera del dataset difundido (una gaussiana por punto). KS: distancia de Kolmogorov–Smirnov, máx |Femp − Φ|; 0 = idénticas. marginal: distribución de una sola coordenada de la nube.
Setup. Datos en 1D con distribución conocida: una mezcla de tres gaussianas (piensa en tres segmentos de gasto de clientes: bajo, medio, premium). Como conozco p0 exactamente, puedo calcular en cerrado la densidad difundida pt y el predictor óptimo de ruido ε⋆(x, t): lo que una red εθ perfectamente entrenada respondería. Arriba: p0 (gris) y pt (tinta). Abajo: la curva ε⋆(x) con la recta identidad discontinua como referencia, y la estimación de señal x̂0(x) que se deduce de ella.
Juega. El slider de t recalcula la mezcla difundida y las dos curvas punto a punto (200 evaluaciones del score en cerrado por fotograma). El lector muestra el SNR y la pendiente máxima de ε⋆: un proxy honesto de la dificultad del problema de regresión que la red afronta en ese t.
Lee así. Con mucho ruido la solución es casi lineal (fácil de aprender, poca información); con poco ruido es casi discontinua (difícil, pero es donde se juega la nitidez). La curva x̂0 cuenta lo mismo al revés: con t grande colapsa a la media global; con t pequeño se pega a la identidad.
Mensaje. "Aprender a generar" se reduce a una regresión: predecir el ruido añadido. Nada de adversarios (GANs) ni de verosimilitudes intratables: una loss cuadrática estable que escala a miles de millones de imágenes. Esta es la razón ingenieril del triunfo de la difusión.
Términos. score: gradiente del log de la densidad, apunta hacia donde hay más datos. εθ: red (U-Net o DiT) que aproxima ε⋆. x̂0: estimación de la señal limpia implícita en la predicción de ruido: (x − √(1−ᾱ) ε⋆)/√ᾱ.
Setup. La misma mezcla 1D de la slide anterior, pero ahora ejecuto un paso entero de generación con la Ec. 2: en la posición xt que elijas, calculo la predicción óptima ε⋆ (la "red perfecta"), la convierto en la media μθ con la fórmula del panel y dibujo la distribución completa del paso anterior: la campana dorada. El punto dorado es xt, la flecha va de xt a μθ, y el rombo x̂0 es la imagen limpia que la red "tiene en mente" en ese instante. Abajo: μθ(x) y x̂0(x) como funciones de x, para el t elegido.
Juega. Los dos sliders alimentan la fórmula real: cambiar t cambia βt, ᾱt y σ̃t; cambiar xt cambia la predicción de la red. El lector imprime los cuatro números del paso: ε̂, x̂0, μθ y σ̃t.
Lee así. El paso inverso NO salta directamente a x̂0: se mueve solo una fracción hacia ella y conserva incertidumbre. La generación es una negociación de T rondas entre lo que la red cree y el azar que mantiene la variedad.
Mensaje. Esta fórmula, aplicada T veces con una U-Net dentro, ES Stable Diffusion. Todo lo demás (texto, latentes, guidance) son mejoras alrededor de este bucle. En la siguiente slide lo ejecutamos completo en 2D y medimos cuánto cuesta cada paso.
Términos. μθ: media del paso inverso (dónde "cree" la red que estaba xt−1). σ̃t: desviación del ruido fresco del paso inverso. x̂0: estimación de la señal limpia implícita en ε̂; cambia (y mejora) en cada paso.
Setup. Objetivo: una mezcla de tres gaussianas en 2D (el "dataset" que queremos aprender a generar; el fondo dorado es su densidad verdadera). Parto de 250 puntos de ruido 𝒩(0,I) y los integro hacia atrás con DDIM usando el score exacto del panel: una "red perfecta" sin error de aprendizaje. La calidad se mide en vivo con la distancia de energía entre las 250 muestras generadas y 250 muestras de verdad de la mezcla (misma semilla de referencia): 0 = distribuciones indistinguibles.
Juega. K es el número de evaluaciones de la red por imagen (NFE): el coste de generación es lineal en K. El panel inferior traza la distancia de energía para K = 2…80 (cada punto es una corrida completa del muestreador) con tu K marcado; el lector añade el tiempo real de cómputo de tu corrida, medido con el reloj del navegador.
Lee así. La curva tiene la forma universal de los muestreadores de difusión: error de discretización que cae rápido y suelo estadístico. La "rodilla" es el punto de operación económicamente racional.
Mensaje. Cuando contratas una API de imagen, el parámetro "steps" es exactamente este K: cobran cómputo proporcional a K y la calidad satura. Quien genera 10.000 variantes de catálogo a K = 50 pudiendo trabajar a K = 25 está pagando el doble de GPU por nada visible. El trade-off pasos–calidad–coste es una decisión de negocio medible, no una superstición.
Términos. NFE: number of function evaluations, pasadas de red por muestra. DDIM: muestreador determinista que salta entre niveles de ruido. distancia de energía: 2ℰ|X−Y| − ℰ|X−X′| − ℰ|Y−Y′|; métrica entre distribuciones computable con muestras.
Setup. El dataset tiene dos clases en 2D: la clase A (dos modos, izquierda; el fondo dorado es su densidad) y la clase B (dos modos, derecha). El prompt c = "clase A". Genero 250 muestras con DDIM a 40 pasos usando la fórmula CFG del panel con dos scores exactos: el condicional (mezcla de A) y el incondicional (mezcla de las cuatro componentes). Es el mismo mecanismo con el que "vestido rojo de gala" guía a Stable Diffusion, destilado a su esqueleto matemático.
Juega. El slider de w re-muestrea de verdad las 250 trayectorias. El panel inferior muestra las dos métricas en función de w (curva calculada en vivo para 9 valores de w): la fracción de muestras que un clasificador bayesiano asigna a A (tinta) y la distancia de energía a una muestra de referencia de la clase A (dorado). El lector añade la dispersión de la nube generada.
Lee así. La fracción-A sube con w y satura; la distancia de energía tiene forma de U: mejora hasta w ≈ 1–3 y se degrada después. El óptimo comercial está donde la U toca fondo, no donde el clasificador dice 100%.
Mensaje. CFG es a difusión lo que la temperatura es a los LLMs: un dial continuo entre variedad y obediencia al prompt. En producción publicitaria se trabaja en w = 5–8; para exploración creativa, w = 2–3; w > 10 solo para depurar. Y como Netflix con sus carátulas personalizadas: la fidelidad al concepto no puede pagarse con la muerte de la diversidad.
Términos. c: condición (embedding del prompt). ∅: condición vacía (la red entrenada a ratos sin prompt). w: peso de guidance. clasificador bayesiano: asigna a la clase con mayor p(clase|x); aquí computable en cerrado.
Setup. La cuenta económica que explica por qué Stable Diffusion se llama "stable" y cabe en una GPU de consumo. Arriba: FLOPs totales por imagen (escala log10) generando en espacio de píxeles contra el espacio latente con tu f, separando la parte de atención (tono oscuro) y la de MLP/convolución (tono claro). Abajo: el coste total en función de la resolución, para ambos regímenes, con tu H marcada. El modelo de coste es el del panel: L = 24 capas, anchura d = 1024, parches de 2×2.
Juega. Todos los números salen de la fórmula en vivo: tokens n, FLOPs de atención y de MLP, ratio píxel/latente, y la traducción a negocio: segundos de una GPU de 200 TFLOP/s efectivos y céntimos de euro a 2.50 €/h de GPU.
Lee así. El eje vertical es logarítmico: cada rayita es 10×. La distancia vertical entre las dos curvas del panel inferior ES el modelo de negocio de la difusión latente.
Mensaje. Los $0.01–0.04 por imagen que viste en la tabla de familias multimodales no son arbitrarios: son FLOPs × precio de GPU con margen. Cuando el proveedor te cobra por "imagen HD" o por "steps", ahora sabes exactamente qué recurso físico estás comprando y por qué el latente lo hizo asequible.
Términos. z, latente: representación comprimida de la imagen donde se ejecuta la difusión. f: factor de reducción espacial del autoencoder. token: parche de la rejilla que procesa el transformer. FLOPs: operaciones de coma flotante; la moneda física del cómputo.
Setup. La calculadora de la campaña multimedia del deck, en vivo. Cada slider fija unidades y precio de una familia multimodal; la tabla central recalcula el coste IA, el equivalente tradicional (sesión de fotos a 50 €/imagen, productora a 600 €/s de vídeo final, estudio de locución a 200 €/min, copy de agencia a 30 €/pieza) y el factor por partida. El gráfico compara ambos mundos en escala logarítmica, porque en lineal las barras de IA ni se verían.
Juega. Los cuatro escenarios del guion son casos del curso: Mercadona (Navidad), Inditex (catálogo), un spot con vídeo generativo y un test de sensibilidad al precio. El lector mantiene siempre el total IA, el total tradicional y el factor de ahorro.
Lee así. En escala log, "barras a la misma altura" significa "mismo orden de magnitud". El factor de ahorro vive en la distancia vertical entre los dos bloques de barras.
Mensaje. El coste multimodal se presupuesta por unidad generada y se acumula rápido en campañas grandes; el riesgo de negocio no es el precio por imagen sino el descontrol del volumen (y el coste oculto del vídeo). Esta tabla es el esqueleto del ejercicio de la práctica: storyboard de 4 imágenes + voz en off, presupuestado antes de generarlo.
Términos. unidad natural: lo que factura cada familia (imagen, segundo, minuto, pieza). equivalente tradicional: coste de producir lo mismo con agencia/estudio. factor de ahorro: cociente entre ambos; mide escala, no calidad.
En una frase. La generación multimodal es un proceso de ruido invertido por una regresión, acelerado en un espacio comprimido y gobernado por dos diales (pasos y guidance) cuyo coste y calidad se miden en euros por unidad: quien entiende la cadena puede presupuestar una campaña; quien no, solo puede maravillarse con la demo.