APPZYFY
Módulo 4advanced
⚔️

Arena de Batalla GAN

90 min
1

Entender dinámicas de entrenamiento adversarial

2

Aprender competencia Generador vs Discriminador

3

Explorar manipulación de espacio latente

4

Reconocer problema de colapso de modos

Arena de Batalla GAN

Observa Generador y Discriminador competir en entrenamiento adversarial

Guía de Aprendizaje

Intermedio⏱️ 30 min

Elige tu estilo de aprendizaje

¿Qué Hace?

Simula entrenamiento adversarial entre redes Generator y Discriminator. Demuestra dinámicas de entrenamiento GAN: mode collapse, gradientes desvanecientes, equilibrio Nash. Visualiza interpolación de espacio latente y generación de datos sintéticos.

¿Cómo Funciona?

  1. 1Generator: G(z) mapea latente z~N(0,I) a espacio de datos. Objetivo: engañar D
  2. 2Discriminator: D(x) produce probabilidad x es real. Objetivo: distinguir real de falso
  3. 3Juego minimax: min_G max_D E[log D(x)] + E[log(1 - D(G(z)))]
  4. 4Entrenamiento: alternar actualizaciones D (k pasos) con actualizaciones G (1 paso). k=5 típico
  5. 5Mode collapse: G genera diversidad limitada, D sobreajusta a datos reales
  6. 6Soluciones: Wasserstein GAN (gradient penalty), Spectral Normalization, feature matching

Analogía Simple

GAN = falsificador (G) vs detective (D). G aprende a falsificar imágenes realistas, D aprende a detectar falsificaciones. Carrera armamentista impulsa a ambos a mejorar. Equilibrio = G genera falsificaciones perfectas, D no puede distinguir (50% accuracy).

Concepto Clave

GANs habilitan aprendizaje no supervisado de distribuciones complejas. Aplicaciones: síntesis de imágenes (StyleGAN), data augmentation, super-resolución. Desafíos: inestabilidad de entrenamiento, mode collapse. Moderno: modelos de difusión superan GANs.

Conceptos Fundamentales

Entrenamiento Adversarial

Dos redes entrenan simultáneamente en competencia. Generator mejora engañando Discriminator. Discriminator mejora atrapando Generator.

Mode Collapse

Generator produce variedad limitada. Todas las salidas se ven similares (mismo modo). Solución: minibatch discrimination, feature matching, Unrolled GAN.

Equilibrio Nash

Estado óptimo: Generator produce falsificaciones perfectas, Discriminator no puede distinguir (50% accuracy). Rara vez logrado debido a inestabilidad de entrenamiento.

Aplicaciones del Mundo Real

🎨
Síntesis de Imágenes (StyleGAN)

Generar caras fotorrealistas, arte. StyleGAN2/3 usado en generación de arte, assets de juegos, avatares virtuales.

🔬
Data Augmentation

Generar datos de entrenamiento sintéticos cuando datos reales son escasos. Imagenología médica: generar muestras de enfermedades raras para entrenamiento de modelo.

📸
Super-Resolución

Escalar imágenes baja-res a alta-res. SRGAN usado en mejora de fotos, upscaling de video, imagenología satelital.

Pruébalo Tú Mismo

Interpolación de Espacio Latente

Muestrear z1, z2 desde espacio latente. Interpolar z_t = (1-t)z1 + t*z2. Generar G(z_t) para transición suave entre imágenes.

Dinámicas de Entrenamiento

Visualizar D loss vs G loss sobre iteraciones. Saludable: oscilando, balanceado. No saludable: D loss → 0 (G falla), G loss → ∞ (mode collapse).

Errores Comunes a Evitar

Entrenar D demasiado

¿Por Qué? D se vuelve muy fuerte, G no recibe gradiente útil. Usa k=5 actualizaciones D por actualización G, no k=50.

Ignorar mode collapse

¿Por Qué? G produce misma salida repetidamente. Monitorea diversidad de salida. Usa feature matching o minibatch discrimination.

Época: 0

Red Generadora

Red Discriminadora

Dinámicas de Entrenamiento GAN

Juego min-max: Generador intenta engañar Discriminador (maximizar pérdida D), Discriminador intenta distinguir real de falso (minimizar pérdida D). Equilibrio Nash cuando ambos son igualmente fuertes.

Espacio Latente

Vector de ruido aleatorio z (típicamente 100-512 dims) muestreado de N(0,1). Generador mapea z a imágenes realistas. Valores z similares producen outputs similares.

Colapso de Modo

Generador produce variedad limitada, ignorando partes de distribución de datos. Causado por G encontrando output único que engaña D. Soluciones: discriminación minibatch, pérdida Wasserstein.

Arquitectura GAN

G: ruido → imagen (4-6 capas conv transpuestas). D: imagen → real/falso (4-6 capas conv). Entrenados alternativamente: actualizar D con real+falso, luego actualizar G para engañar D.