¿Qué son los modelos de difusión?

Autores

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

Cole Stryker

Staff Editor, AI Models

IBM Think

¿Qué son los modelos de difusión?

Los modelos de difusión son modelos generativos empleados principalmente para la generación de imágenes y otras tareas de visión artificial. Las redes neuronales basadas en la difusión se entrenan mediante aprendizaje profundo para “difundir” progresivamente muestras con ruido aleatorio y luego revertir ese proceso de difusión para generar imágenes de alta calidad.

Los modelos de difusión se encuentran entre las arquitecturas de neural networks a la vanguardia de la IA generativa, representados principalmente por modelos populares de texto a imagen, incluyendo la difusión estable de la IA de estabilidad, la DALL-E de OpenAI (comenzando con DALL-E-2), Midjourney y la Imagen de Google. Mejoran el rendimiento y la estabilidad de otras arquitecturas de machine learning empleadas para la síntesis de imágenes, como los autocodificadores variacionales (VAEs), las redes generativas adversarias (GANs) y los modelos autorregresivos como PixelCNN.

La intuición que subyace a los modelos de difusión se inspira en la física y trata los pixeles como las moléculas de una gota de tinta que se extienden en un vaso de agua a lo largo del tiempo. Del mismo modo que el movimiento aleatorio de las moléculas de tinta acaba por dispersarlas uniformemente en el cristal, la introducción aleatoria de ruido en una imagen acaba dando lugar a lo que parece estática televisiva. Al modelar ese proceso de difusión y luego aprender de alguna manera a revertirlo, un modelo de inteligencia artificial puede generar nuevas imágenes simplemente "eliminando el ruido" de muestras de ruido aleatorio.

Los modelos de difusión se asocian de manera más prominente con la generación de imágenes y otras tareas de procesamiento de imágenes, como la pintura y la superresolución, pero sus aplicaciones se extienden a otros dominios, como la generación de audio, el diseño de fármacos y la generación de moléculas. Para simplificar, este artículo se centrará en la generación de imágenes.

Las últimas tendencias de IA presentadas por expertos

Obtenga insights curados sobre las noticias más importantes e intrigantes de la IA. Suscríbase a nuestro boletín semanal Think. Consulte la Declaración de privacidad de IBM .

¡Gracias! Ya está suscrito.

Su suscripción se entregará en inglés. En cada boletín, encontrará un enlace para darse de baja. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

Historia y teoría de los modelos de difusión

Para explicar y comprender los modelos de difusión, es importante señalar primero que el proceso generativo ahora llamado “difusión” fue descubierto independientemente en dos ocasiones distintas a través de dos enfoques matemáticos distintos. En resumen, hay múltiples formas en que los modelos de difusión, que son conceptualmente simples pero matemáticamente complejos, pueden “funcionar”.

Los desarrollos posteriores tomaron prestadas ideas de ambos enfoques, combinando los beneficios de cada uno para finalmente producir los modelos de difusión modernos que actualmente dominan el campo de la generación de imágenes. Una breve revisión de la historia y la teoría de los modelos de difusión facilita la comprensión no solo de cómo funcionan los modelos de difusión, sino también de por qué funcionan.

Modelos de aprendizaje profundo inspirados en la termodinámica

Los modelos de difusión inspirados en la física fueron introducidos por primera vez por Sohl-Dickstein y colaboradores en su artículo de 2015, “Deep Unsupervised Learning using Nonequilibrium Thermodynamics”. Su algoritmo aplicó la dinámica de Langevin, un método para modelar el movimiento de los sistemas moleculares, para respaldar la premisa básica de los modelos de difusión: convertir los datos en ruido, para luego poder convertir el ruido en datos.

Una nota sobre las funciones de densidad de probabilidad

Al igual que la mayoría de los modelos generativos, tales como los autocodificadores variacionales (VAE, sigla en inglés de variational autoencoders), el algoritmo de Sohl-Dickstein modeló la densidad de probabilidad: la probabilidad relativa de que una variable de muestreo aleatorio, x, caiga dentro de un rango particular de valores. Básicamente, el modelado de una función de densidad de probabilidad para un conjunto de datos de entrenamiento permite que un algoritmo genere muestras que tienen muchas probabilidades de ajustarse a la distribución de datos de entrenamiento. Al generar una nueva imagen, el modelo supone una alta probabilidad de que los valores de los píxeles se distribuyan de esa manera específica, en función de la distribución de probabilidad que aprendió de los patrones en los datos de entrenamiento.

Desde el punto de vista lógico, las funciones de densidad de probabilidad requieren que la probabilidad de todas las posibilidades sume 1. Dicho de otra manera, la probabilidad porcentual de todas las posibilidades debe sumar exactamente 100%. En la práctica, para lograr esto a menudo se necesita una constante de normalización: un valor incorporado a una función de probabilidad que reduce la probabilidad total a 1.

Calcular una constante de normalización que funcione para todos los valores variables posibles es a menudo intrincado: técnicamente se puede solucionar, pero el cálculo requiere una eternidad. En tales casos, los modelos basados en probabilidades deben restringirse a arquitecturas de modelos específicas o desarrollar soluciones alternativas inteligentes que se aproximen a la constante de normalización de una manera manejable.

Modelos generativos basados en puntuaciones

Independientemente del trabajo de Sohl-Dickstein, Yang Song y Stefano Ermon desarrollaron un tipo de modelo basado en energía  llamado red de puntuaciones condicionales de ruido en su artículo de 2019, “Generative Modeling by Estimating Gradients of the Data Distribution”. Su algoritmo modeló el gradiente(∇x) del logaritmo (log) de la función de densidad de probabilidad p(x). El gradiente de la función de densidad de probabilidad logarítmica, escrito como xlogp(x), se llama la puntuación Stein o simplemente la “función de puntuación”.

A diferencia de las funciones de densidad de probabilidad convencionales, las funciones de puntaje no requieren una constante de normalización porque no modelan directamente la densidad de probabilidad (y, por lo tanto, no tienen que normalizar la probabilidad total a 1). En su lugar, se entrenan a través de la coincidencia de puntajes: parámetros del modelo de aprendizaje, θ, que produce un modelo pθ(x) cuya puntuación—en otras palabras, su gradiente—coincide con la de la distribución de datos q(x) de los datos de entrenamiento.

Otro beneficio de tales modelos generativos basados en la puntuación (SGMs) es que, a diferencia de los modelos basados en la probabilidad, no imponen muchas restricciones a la arquitectura del modelo de pθ(x).

Al explorar formas de mejorar el rendimiento de su modelo, Song y Ermon llegaron por casualidad a las mismas técnicas empleadas por Sohl-Dickstein y otros. Su artículo señaló que "perturbar los datos con ruido gaussiano aleatorio hace que la distribución de datos sea más susceptible al modelado generativo basado en puntajes". Su modelo, construido empleando la arquitectura U-Net desarrollada originalmente para la segmentación de imágenes, también aplicó la dinámica de Langevin para generar muestras.

Modelos probabilísticos de difusión de eliminación de ruido (DDPM)

En 2020, Ho y colaboradores propusieron utilizar el método de Sohl-Dickstein para generar imágenes de alta calidad utilizando inferencia variacional en su artículo seminal “Denoising diffusion probabilistic models (DDPMs)”. Su artículo mostró que maximizar el límite inferior de la evidencia (ELBO, sigla en inglés de evidence lower bound)—una forma de reescribir los problemas de optimización basados en probabilidades para que sean manejables— para entrenar modelos de difusión es esencialmente equivalente a la combinación de objetivos de correspondencia de puntuaciones utilizada para entrenar modelos generativos basados en puntuaciones (SGM, sigla en inglés de score-based generative models).

Al implementar el enfoque de Sohl-Dickstein utilizando el emparejamiento de puntuaciones, Ho y otros demostraron que los modelos probabilísticos de difusión pueden lograr una calidad de imagen competitiva con las GANs, que en su momento eran de vanguardia. Estas conexiones fueron exploradas más a fondo por Song, Ermon, Sohl-Dickstein y otros —incluyendo Diederik P. Kingma, creador de la VAE— en su artículo de 2021, “Modelación generativa basada en puntuación a través de ecuaciones diferenciales estocásticas”.

Más tarde ese año, Dhariwal y Nichol, aprovechando los insights del artículo mencionado anteriormente, publicaron “Los modelos de difusión superan a las GANs en la síntesis de imágenes”, estableciendo firmemente los modelos de difusión como el nuevo estado de la tecnología.

Los DDPMs, en lugar de los SGMs, generalmente siguen siendo el modo dominante de los modelos de difusión, aunque con mejoras iniciadas a través de investigaciones posteriores. Por ejemplo, el influyente documento de 2022 "Síntesis de imágenes de alta resolución con modelos de difusión latente" marcó avances importantes en eficiencia y rentabilidad.

Mixture of Experts | 12 de diciembre, episodio 85

Decodificación de la IA: Resumen semanal de noticias

Únase a nuestro panel de ingenieros, investigadores, responsables de producto y otros profesionales de talla mundial que se abren paso entre el revuelo de la IA para ofrecerle las últimas noticias e insights al respecto.

¿Cómo funcionan los modelos de difusión?

En el entrenamiento, los modelos de difusión difunden gradualmente un punto de datos con ruido aleatorio, paso a paso, hasta que se destruye, luego aprenden a revertir ese proceso de difusión y reconstruir la distribución de datos original.

Un modelo de difusión entrenado puede entonces generar nuevos puntos de datos que se asemejen a los datos de entrenamiento simplemente eliminando el ruido de una muestra inicial aleatoria de ruido puro. Conceptualmente, esto es similar a un autocodificador de eliminación de ruido en el que las imágenes ruidosas actúan como variables latentes.

Transformar directamente ruido aleatorio en una imagen coherente es extremadamente difícil y complejo, pero transformar una imagen ruidosa en una imagen ligeramente menos ruidosa es relativamente fácil y sencillo. Por lo tanto, los modelos de difusión formulan el proceso de difusión inversa como una transformación incremental, paso a paso, de una distribución simple (como el ruido gaussiano) a una distribución más compleja (como una imagen coherente).

El proceso de entrenamiento y luego despliegue de una difusión se puede dividir en tres etapas clave:

  • El proceso de difusión directa, en el que una imagen del conjunto de datos de entrenamiento se transforma en ruido puro—generalmente una distribución gaussiana.

  • El proceso de difusión inversa, en el que el modelo aprende el inverso de cada paso anterior en el proceso de difusión directa original

  • Generación de imágenes, en la que el modelo capacitado muestrea una distribución aleatoria de ruido y la transforma en una salida de alta calidad mediante el proceso de difusión inversa que aprendió para eliminar el ruido de una muestra aleatoria de ruido gaussiano.

Proceso de difusión directa

El propósito del proceso de difusión directa es transformar datos limpios del conjunto de datos de entrenamiento, como una imagen o una muestra de audio, en ruido puro. El método más común implica inyectar iterativamente ruido gaussiano hasta que toda la distribución de datos sea gaussiana.

Matemáticamente, este proceso paso a paso se formula como una cadena de Márkov: un tipo de proceso estocástico —un proceso aleatorio que sigue determinadas reglas probabilísticas— para modelar datos de series de tiempo secuenciales. En una cadena de Márkov, el resultado en cada paso de tiempo está influenciado únicamente por el paso de tiempo inmediatamente anterior. En pocas palabras: xt, el estado de la cadena de Márkov x en el paso de tiempo t, está influenciado directamente solo por xt-1. La función matemática que define la transición de cualquier xt hasta xt+1 se llama núcleo de transición.

En cada paso de tiempo t, se agrega una pequeña cantidad de ruido gaussiano a xt-1 y la imagen se vuelve a escalar para mantener un tamaño de imagen constante a pesar de la inyección continua de pixeles aleatorios. En esta formulación, x0 es el punto de datos limpio original; x1 es el punto de datos luego del primer paso de tiempo, con una pequeña cantidad de ruido gaussiano agregado; xT es el estado final del proceso de difusión directa. Si T es lo suficientemente grande—es decir, luego de suficientes pasos—xT convergerá a ruido gaussiano puro.

Definimos cada paso adelante como q(xt|xt-1):predecir el estado de la distribución de datos q (xt), dado q(xt-1). En un DDPM estándar, este proceso directo no implica ningún machine learning: el resultado final de la cadena de Markov siempre será una distribución gaussiana y, por lo tanto, no requiere optimización.

Agregar ruido

En un DDPM, el ruido gaussiano añadido en cada paso de la cadena de Markov no es ni constante ni arbitrario. En su lugar, el ruido se deriva de la estructura de la imagen original, y la velocidad a la que se agrega aumenta constantemente con cada paso consecutivo.

Variar la cantidad de ruido mejora tanto la estabilidad del entrenamiento del modelo como el rendimiento general al equilibrar dos prioridades contrapuestas. Como señala Yang Song en su entrada en el blog acerca de los modelos generativos basados en puntuaciones:

  • Un ruido mayor mejora la capacidad del modelo para aprender con precisión en regiones de “baja densidad” de datos de entrenamiento—categorías y conceptos que tienen menos representación en los datos de entrenamiento—al poblar esas regiones con datos ruidosos. Pero también puede corromper en exceso los datos, reduciendo la precisión general.

  • Un ruido más pequeño causa menos corrupción de la distribución de datos original, pero produce un rendimiento deficiente en regiones de baja densidad.

  • Por lo tanto, para lograr lo mejor de ambos mundos, los modelos de difusión emplean múltiples escalas de ruido en el entrenamiento.

Recuerde que cualquier distribución gaussiana (normal) tiene una media, μ , y una variación, Σ . Otro parámetro, β, sirve como factor de escala para la media y la variación del ruido gaussiano en el núcleo de transición que define cada paso en la cadena de Markov hacia adelante. Cambiar el valor de β en un paso determinado da como resultado un cambio en el ruido gaussiano agregado en ese paso. β1 es la variación en el paso de tiempo 1; βt es la varianza en el paso de tiempo t, y así sucesivamente, hasta βT.

El valor del índice de β en cada paso está, a su vez, determinado por el programa de variación.

Programación de variaciones

En cada paso t, la imagen se desplaza ligeramente de su iteración en el paso anterior (según la media) y se agrega ruido a esta versión desplazada de la imagen (según la variación). La magnitud de cada cambio y adición de ruido está determinada por el valor de βt: a medida que  βt  aumenta de acuerdo con el programa de variaciones, la tasa de difusión aumenta constantemente como resultado. β siempre es un valor entre 0 y 1: por lo tanto, 0 < β1 < β2 < … < βT < 1.

La elección de un programa de variaciones específico para β es una consideración importante. Por lo general, se establece manualmente como un hiperparámetro, ya sea fijado a un valor constante o procediendo de acuerdo con alguna fórmula con un valor inicial y un valor final predeterminados para β. En el documento sobre DDPM, Ho y colaboradores utilizaron un programa lineal con 1,000 pasos en donde β1 = 10-4 y βT = 0.02. En investigaciones posteriores se descubrieron mejoras en el rendimiento y la eficiencia con otro tipo de programas, como un programa de cosenos,[1] o hacer del propio programa otro parámetro aprendido[2].

El valor de βt determina tanto la media como la variación del ruido gaussiano añadido en el paso t.

  • La media μ del ruido gaussiano añadido en el paso de tiempo t, μt, se calcula como μt=(1-βt)xt-1. En lenguaje sencillo, el promedio del ruido agregado en cada paso t es simplemente una versión escalada de la imagen del paso anterior, xt-1. El tamaño de βt determina qué tan lejos se desvía esta media del paso anterior: cuando βt es muy pequeño, este cambio es muy menor, porque (1-βt)(1-0)1—y por lo tanto, el ruido agregado se parecerá mucho a la imagen original. A medida que aumenta el valor de βt , este cambio se vuelve más significativo.

  • La variación del ruido gaussiano agregado en el paso de tiempo t se calcula como Σt=βtI, dónde I es la matriz identidad. Un valor βt mayor da como resultado más ruido. Un valor βt muy pequeño da como resultado un ruido insignificante.

En resumen, en cada paso t, la imagen se desplaza ligeramente respecto de su iteración en el paso anterior (según la media) y se agrega ruido a esta versión desplazada de la imagen (según la variación). La magnitud de cada cambio y adición de ruido está determinada por el valor de βt: a medida que βt aumenta de acuerdo con el programa de variación, la tasa de difusión aumenta de manera constante como resultado.

Debido a que la adición de ruido gaussiano comienza gradualmente y el ruido en sí siempre se deriva de la estructura esencial de la imagen original en el paso anterior, las cualidades esenciales de la imagen original se conservan durante muchos pasos. Esto permite que el modelo aprenda de manera significativa los patrones y la estructura de la distribución de datos originales durante el proceso de difusión inversa.

El truco de la reparametrización

Una desventaja de ese proceso paso a paso es que es engorroso y costoso desde el punto de vista computacional: para cada imagen de un conjunto de datos de entrenamiento que podría contener miles o millones de imágenes, el proceso de reenvío requeriría docenas o cientos de pasos individuales.

En lugar de agregar ruido repetidamente, la fórmula para el proceso directo se puede reescribir de una manera inteligente reparametrizando la expresión de  1βt como un nuevo parámetro,  αt. A través de una "buena propiedad" de las cadenas de Markov, este nuevo parámetro se puede ampliar aún más a un parámetro adicional, α¯tderivada de la multiplicación iterativa de αt en cada paso progresivo de la cadena hasta ese punto. Este parámetro adicional refleja esencialmente la relación señal ruido (SNR) de xt: en otras palabras, cuánto de la imagen original permanece en el paso de tiempo t.

Por ejemplo, en x1, se agregó una pequeña cantidad de ruido una vez. El valor de α¯t es cercano a 1, lo que significa que la imagen aún conserva la mayor parte de su "señal" original. En un paso posterior, como x50, el ruido se ha agregado muchas veces. Porque αt=1βt, el valor de αt siempre es menor que 1. Ya que α¯50=α1α2...α49α50, el valor de α¯t en el paso 50 estará mucho más cerca de 0, lo que significa que una mayor parte de la imagen original fue reemplazada por ruido. En el paso de tiempo T, xT es completamente ruido y el valor de α¯t se acerca a 0.

Si bien la compleja derivación de la ecuación está más allá del alcance de este artículo, hay dos conclusiones importantes para comprender la importancia de este truco de reparametrización:

  • El estado de x en cualquier paso de tiempo t ahora se puede definir como xt=α¯tx0+1-α¯tε0, dónde ε0 es el ruido agregado en el primer paso. Como el valor de α¯t disminuye con cada paso, la influencia de x0 disminuye y la influencia de ε0 aumenta.

  • Porque α¯t se deriva de 1βt y el valor de βt está determinada por el programa de variación, reescribir la fórmula de esta manera permite el cálculo directo de xt en cualquier paso de tiempo t sin tener que pasar por todo el proceso paso a paso.

Proceso de difusión inversa

En los modelos de difusión, el proceso de difusión inversa es donde tiene lugar el machine learning real. Al aprender a realizar la reversión de los pasos de ruido del proceso directo, el modelo está esencialmente aprendiendo a eliminar el ruido gaussiano puro en una imagen limpia. Una vez que se entrenó la neural networks, esta capacidad se puede emplear para generar nuevas imágenes a partir del ruido gaussiano a través de la difusión inversa paso a paso.

En teoría, la tarea del modelo puede considerarse como la simple reversión de la difusión directa. El proceso directo, que comienza con el punto de datos x0 muestreado de la distribución de datos reales q(x) del conjunto de datos de entrenamiento, se define como q(xt|xt-1): es decir, dado q(xt-1), calcular  q(xt). Su opuesto, la difusión inversa, se definiría como q(xt-1|xt). Pero en la práctica, la informática q(xt-1|xt) es intratable.

En su lugar, la tarea de formación se formula a través de dos soluciones:

  • Como se describió anteriormente, q(x) se aproxima con una neural network pθ(x) que constituye el propio modelo de difusión real. El objetivo del entrenamiento es aprender los parámetros del modelo θ que hacen que la salida de pθxt-1|xt ), coincida con la salida de qxt-1|xt ).

  • Este modelo, pθ(x), no predice directamente xt-1, ni siquiera el ruido específico agregado entre xt-1 y xt. En cambio, predice todo el ruido presente en xt, luego elimina una fracción de ese ruido (basado en el estado del programa de varianza en ese paso) para llegar a xt-1. El documento original de DDPM simplificó aún más este proceso al estimar solo la media del ruido gaussiano, aunque los modelos posteriores a menudo también predicen la variación.

Recuerde nuevamente que la media del ruido gaussiano agregado en la difusión directa no es arbitraria: aunque de hecho es aleatoria, la estructura del ruido se deriva inicialmente de la estructura de la imagen original x0. Por lo tanto, al aprender a predecir con precisión el ruido a través de la difusión inversa, el modelo no solo aprende a eliminar el ruido de la imagen, sino que también aprende implícitamente la estructura de x0.

Función de pérdida para el entrenamiento del modelo de difusión

El objetivo de entrenamiento específico empleado para los modelos de difusión está estrechamente relacionado con el término de pérdida de reconstrucción empleado para optimizar los autocodificadores variacionales (VAE).Al igual que los VAE, los modelos de difusión se optimizan maximizando el límite inferior variacional (VLB), también llamado límite inferior de la evidencia (ELBO), de una combinación de múltiples términos de pérdida.

La maximización del VLB se emplea en la inferencia variacional para aproximar la función de puntaje intratable xlog(p(x)): en lugar de minimizar directamente el error, reformula la ecuación para maximizar la estimación mínima (o límite inferior) de la precisión de las predicciones del modelo.

Los términos de pérdida empleados reflejan la divergencia Kullback-Leibler (o “divergencia KL”, generalmente denotada como DKL) entre los resultados de los pasos de difusión directa de q y los pasos inversos predichos por pθ. La divergencia KL se emplea para medir la diferencia entre dos distribuciones de probabilidad, por ejemplo, entre la distribución de valores de pixeles en una imagen y la distribución de valores de pixeles en otra.

Específicamente, la función de pérdida para los modelos de difusión combina tres términos de pérdida: LT, Lt y L0.

  •  LT refleja la divergencia KL entre q(xT|x0) y pθ(xT). En otras palabras, la diferencia entre el resultado final totalmente ruidoso del proceso directo q y el punto de partida del proceso inverso. Este término generalmente se puede ignorar, porque xT es gaussiano y q no tiene parámetros que se puedan aprender.

  • Lt refleja la divergencia KL entre q(xt-1|xt,x0) y pθ(xt-1|xt) a cada paso. En otras palabras, la precisión de cada una de las predicciones de eliminación de ruido de pθ durante la difusión inversa en comparación con cada paso de ruido correspondiente durante el proceso de difusión directa para la imagen original, x0.

  • MedidasL0 -logpθ(x0|x1). En otras palabras, L0 refleja la probabilidad logarítmica negativa de la predicción del modelo de la imagen x0 completamente eliminada de ruido. El gradiente de L0 es el término de coincidencia de puntaje descrito anteriormente en el artículo. El término de pérdida es negativo, por lo que minimizar la función de pérdida se convierte en el equivalente a maximizar la probabilidad de las predicciones del modelo.

Aunque su compleja derivación matemática está más allá del alcance de este artículo, el VLB se puede simplificar en última instancia hasta el error cuadrático medio (MSE) entre el ruido predicho por el modelo, εθ y el verdadero ruido añadido en el proceso de avance, ε, en cada paso de tiempo. Esto explica por qué la salida del modelo es una predicción de ruido en cada paso, en lugar de la imagen sin ruido en sí.

Al calcular el gradiente de la función de pérdida durante la retropropagación y, a continuación, ajustar los pesos del modelo para minimizar la función de pérdida a través del descenso del gradiente, las predicciones del modelo en todo el conjunto de datos de entrenamiento serán más precisas.

Generación de imágenes con modelos de difusión

Una vez que el modelo de difusión ha aprendido a estimar con precisión el ruido que se va a restar en cada paso, se puede utilizar para generar nuevas imágenes sacando muestras a partir de una imagen ruidosa aleatoria xT de la distribución de datos que ha aprendido y eliminando el ruido para los pasos T. Al igual que los VAEs, la introducción de un ligero elemento de aleatoriedad en el proceso de muestreo permite que los modelos de difusión produzcan nuevas imágenes que se asemejen a los datos de entrenamiento, en lugar de reproducir directamente las imágenes de entrenamiento.

A diferencia del proceso de entrenamiento de difusión inversa, la cantidad de pasos en el proceso de generación no tiene que coincidir con la cantidad de pasos empleados en el proceso de avance. Esto es posible porque el modelo está capacitado para predecir todo el ruido en cada paso de la imagen, en lugar de la cantidad específica de ruido que se eliminará en ese paso.

Menos pasos implican una mayor velocidad y menores demandas computacionales, con una posible compensación en detalle; un mayor número de pasos suele mejorar la precisión, aunque a costa de una menor velocidad y un aumento de los costos informáticos.

Modelos de difusión guiada

Si bien un modelo de difusión estándar puede producir variaciones de alta calidad de imágenes de entrenamiento al azar, la mayoría de los usos prácticos de un modelo de generación de imágenes requieren cierto control sobre la salida del modelo. Los modelos de difusión guiada permiten al usuario condicionar las imágenes generadas con una guía específica.

La forma más común de modelo de difusión guiada es un modelo de difusión de texto a imagen que permite a los usuarios condicionar la salida con una instrucción de texto, como "una jirafa con sombrero de copa". Esto implica emparejar un modelo de difusión con un modelo de lenguaje extenso (LLM) separado para interpretar el mensaje de texto, presentado por primera vez por Google en el documento "Modelos fotorrealistas de difusión de texto a imagen con comprensión profunda del lenguaje".

Los modelos de difusión estándar tienen como objetivo predecir la función de puntuación incondicional ∇xlogp(x): en otras palabras, el gradiente del logaritmo de la probabilidad de que la imagen generada por el modelo p se ajuste a los datos de entrenamiento x. Los modelos de difusión guiada introducen una categoría visual específica, y—por ejemplo, “jirafa”— y predicen la función de puntuación condicional ∇xlogp(x|y): en otras palabras, la probabilidad de la imagen x, dado que debe ajustarse a la categoría y.

Los métodos para la difusión guiada se pueden dividirse en dos categorías:

  • La difusión guiada por clasificadores requiere un modelo de clasificador por separado para aprender incrustaciones vectoriales para cada categoría para las que se entrenará el modelo de difusión para producir imágenes. Esta incrustación vectorial se utiliza posteriormente para condicionar la salida en cada paso t. El modelo de difusión no requiere entrenamiento adicional, pero solo podrá condicionar las salidas en las categorías específicas aprendidas por el clasificador.

  • La guía sin clasificadores no requiere un modelo por separado, pero sí requiere un modelo de difusión de dos etapas que se entrene específicamente para la orientación condicional. Por lo general, esto implica un modelo de dos etapas: en la primera etapa, un algoritmo de incrustación como CLIP  genera una incrustación para la instrucción. En la segunda etapa, un modelo de difusión emplea esa incrustación para condicionar su salida. A pesar de la sobrecarga de entrenamiento adicional, esto tiene el beneficio de habilitar una guía zero-shot para categorías de imágenes no vistas.

Modelos de difusión latente

A pesar de su capacidad de vanguardia para generar imágenes de alta calidad, los modelos de difusión convencionales tienen dos desventajas importantes: son lentos y computacionalmente caros. Estos inconvenientes se redujeron en gran medida con la llegada de los modelos de difusión latente, empezando por la difusión estable.

La premisa en la que se basan los modelos de difusión latente es sencilla y se basa, una vez más, en la conexión con los autocodificadores variacionales (VAEs). En lugar de aplicar el proceso de difusión en un espacio de pixeles de alta dimensión—es decir, directamente a las imágenes de entrada—el modelo podría proyectar primero la entrada al espacio latente de menor dimensión, luego aplicar allí el proceso de difusión.

En esencia, los modelos de difusión latente emplean una arquitectura de autocodificador similar a VAE para entrenar un codificador para generar representaciones latentes de salida z de datos de entrada x. Esas representaciones latentes se emplean luego como entrada para un modelo de difusión estándar, generalmente empleando la arquitectura U-Net. Debido a que el modelo de difusión funciona con datos de dimensiones inferiores, su salida se alimenta a una red decodificadora para aumentar la ejemplificación al tamaño de imagen final deseado.

Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA a trabajar en su negocio con la experiencia en IA líder en la industria y la cartera de soluciones de IBM a su lado.

Explore las soluciones de IA
Servicios de IA

Reinvente los flujos de trabajo y las operaciones críticas añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

Conozca los servicios de IA
Dé el siguiente paso

Obtenga acceso único a capacidades que abarcan el ciclo de vida del desarrollo de IA. Produzca potentes soluciones de IA con interfaces fáciles de usar, flujos de trabajo y acceso a API y SDK estándar de la industria.

Explore watsonx.ai Reserve una demostración en vivo
Notas de pie de página

NOTA: Todos los enlaces se encuentran fuera de ibm.com.

[1]“Improved Denoising Diffusion Probabilistic Models”, arXiv, 18 de febrero de 2021
[2]“Variational Diffusion Models”, arXiv, última revisión: 14 de abril de 2023