4 puntos por GN⁺ 2024-05-27 | 1 comentarios | Compartir por WhatsApp

Modelado generativo

  • El problema básico del modelado generativo consiste en, dado un conjunto de muestras de una distribución desconocida x∼p(x), generar nuevas muestras de esa distribución.

1.1 Modelos de difusión con eliminación de ruido

  • En lugar de mapear de forma determinista los puntos de datos a una distribución normal, se usa un método que mezcla ruido aleatorio para mapear los puntos de manera probabilística.
  • Aunque este método puede parecer extraño al principio, consiste en mezclar pequeñas cantidades de ruido en puntos de datos limpios a lo largo de varias etapas hasta que parezcan ruido puro.
  • Al observar el punto de datos con ruido en cada etapa, se puede inferir aproximadamente dónde estaba el punto de datos en la etapa anterior.
  • Si se aprende este proceso en sentido inverso, es posible generar muestras de la distribución p(x).
  • Esto es similar a un proceso físico de difusión.

Modelo DDP

  • El modelo DDP es la sigla de Denoising Diffusion Probabilistic Models.
  • Los avances más recientes se basan en el lenguaje y las matemáticas de este artículo.

2.1 Adición y eliminación de ruido

  • Para mapear la imagen de entrada x0 a un punto de una distribución normal estándar, se usa un proceso de difusión hacia adelante que añade ruido de forma gradual a lo largo de pasos de tiempo t=1,2,…,T.
  • Cada paso de tiempo mezcla una pequeña cantidad de ruido aleatorio en la imagen anterior para generar una nueva imagen.
  • Este proceso tiene una naturaleza iterativa: cada etapa depende solo del paso de tiempo anterior, y el ruido añadido es independiente de las muestras de ruido previas.
  • Se aprende el proceso inverso para predecir la distribución de la versión menos ruidosa xt-1 del paso anterior a partir de la imagen ruidosa xt.

2.2 Aprendizaje de eliminación de ruido

  • q(xt−1∣xt) es aproximadamente gaussiana cuando la cantidad de ruido es muy pequeña.
  • Este es un resultado clásico de la física estadística.
  • Esto permite aprender la distribución inversa.
  • Usando divergencia KL, se minimiza la diferencia entre q(xt−1∣xt,x0) y pθ(xt−1∣xt) para todos los ejemplos de entrenamiento x0.
  • La función de pérdida final se simplifica a un problema de predicción de ruido.

2.3 Muestreo

  • Después de entrenar el modelo de estimación de ruido ϵθ(xt,t), este puede usarse para muestrear la imagen x0.
  • Se muestrea una imagen de ruido puro xT∼N(0,I), y para los pasos de tiempo desde T hasta 1 se predice el ruido, usando ese ruido predicho para muestrear la imagen sin ruido.

2.4 Resumen y ejemplo

  • Se aprende la distribución subyacente de un conjunto de datos de imágenes y se define un proceso de adición de ruido hacia adelante que transforma gradualmente la imagen x0 en ruido puro xT.
  • Se aprende el proceso inverso para predecir la distribución de xt-1 a partir de xt.
  • Usando divergencia KL, se garantiza que la distribución aprendida sea lo más cercana posible a la distribución conocida del conjunto de datos.
  • Finalmente, se simplifica a un problema de predicción de ruido.

Avances

3.1 Generación rápida

  • La principal desventaja de los modelos de difusión iniciales era la velocidad de generación.
  • Después se desarrollaron muchas técnicas para acelerar la generación; algunas pueden aplicarse directamente a modelos preentrenados y otras requieren entrenar un modelo nuevo.

Score matching y muestreadores rápidos

  • Los modelos de difusión tienen una conexión sorprendente con las ecuaciones diferenciales, lo que permitió desarrollar muchos muestreadores rápidos.
  • Predecir la dirección del ruido es equivalente al gradiente de la log-verosimilitud del proceso hacia adelante.
  • Esto forma la base de los modelos basados en score, que aprenden el score de un conjunto de datos con ruido y generan nuevas muestras siguiendo el campo de score.

Opinión de GN⁺

  1. Comprensión de los modelos de difusión: Los modelos de difusión pueden aplicarse no solo a la generación de imágenes, sino también a animación, generación de video, modelado 3D, predicción de estructuras de proteínas y planificación de trayectorias para robots.
  2. Complejidad del proceso de entrenamiento: El proceso de entrenamiento de los modelos de difusión es complejo, pero permite generar imágenes extremadamente sofisticadas.
  3. Tecnologías de generación rápida: Las técnicas de generación rápida mejoran de forma importante la utilidad práctica de los modelos de difusión.
  4. Modelos basados en score: Los modelos basados en score funcionan de manera similar a los modelos de difusión y contribuyen a aumentar la velocidad de muestreo.
  5. Aspectos a considerar al adoptar esta tecnología: Al incorporar modelos de difusión, conviene considerar el tiempo de entrenamiento, los recursos computacionales y la complejidad del modelo.

1 comentarios

 
GN⁺ 2024-05-27

Comentarios de Hacker News

  • Me enteré de que los modelos de difusión aparecieron antes que la teoría de score matching. Fue un intento ambicioso por parte de OpenAI cuando entrenó con 250 millones de imágenes, a pesar de que faltaba una explicación teórica suficiente.
  • Parece que el bucle de entrenamiento está mal. Como x0 y eps no se usan en la representación de xt, da la impresión de que está prediciendo ruido aleatorio.
  • Estoy buscando la mejor biblioteca de Python con licencia Apache o MIT para transformadores de difusión.
  • Gracias por compartirlo. Me dio una mejor intuición de cómo funcionan los modelos de difusión. La aleatoriedad es poderosa. Ahora es momento de intentar programar en un lenguaje inadecuado.
  • No hay mucho que resumir para quienes leen los comentarios. Esta publicación es un resumen de Stable Diffusion.
  • En 2022 estaba aprendiendo a dibujar y me sorprendió la aparición de modelos de arte con IA como Stable Diffusion. La computadora se convirtió en una artista mejor que yo. Mientras más invade la IA el trabajo creativo, más ganas me dan de eliminarlo todo.