No te enamores, la chica de arriba del pelo rojo no existe: ha sido creada con Stable Diffusion, un modelo de aprendizaje profundo creado por la empresa Stability AI que puede generar imágenes de alta calidad a partir de descripciones en lenguaje natural conocidas como indicaciones de texto. Pero, ¿cómo funciona Stable Diffusion?

En este reportaje vamos a analizar las entrañas de una de las mejores alternativas a Midjourney: la difusión estable más famosa del mundo de la inteligencia artificial: Stable Diffusion. Por cierto, puedes usar Stable Diffusion gratis aquí.

(Relacionado: Las 10 mejores alternativas a Midjourney en 2023)

¿Por qué se llama difusión estable? ¿Acaso hay difusiones inestables?

Ha sido en 2023 cuando los avances técnicos han mejorado enormemente la fidelidad del arte que pueden crear los sistemas de IA. Aunque sistemas como Stable Diffusion y DALL-E 3 de OpenAI son controvertidos, plataformas como DeviantArt y Canva los han adoptado para potenciar herramientas creativas, personalizar marcas e incluso idear nuevos productos.

¿Qué es exactamente la difusión y por qué supone un salto tan grande con respecto al estado anterior de la técnica? Merece la pena echar un vistazo a los orígenes de la difusión y a su evolución hasta convertirse en la fuerza influyente que es hoy. La historia de la difusión no ha terminado: cada mes que pasa se perfeccionan las técnicas, pero los últimos dos años han traído consigo avances notables.

(Relacionado: Cómo hacer ilustraciones vectoriales gratis con inteligencia artificial)

El nacimiento de la difusión

Es posible que recuerdes la moda de las aplicaciones de deepfakes hace varios años: aplicaciones que insertaban retratos de personas en imágenes y vídeos existentes para crear sustituciones de aspecto realista de los sujetos originales en ese contenido de destino. Gracias a la IA, las aplicaciones «insertaban» la cara de una persona (o, en algunos casos, todo su cuerpo) en una escena, a menudo de forma lo bastante convincente como para engañar a alguien a primera vista.

La mayoría de estas aplicaciones se basaban en una tecnología de IA denominada redes generativas adversariales (GAN, por sus siglas en inglés). Las GAN constan de dos partes:

  • Un generador que produce ejemplos sintéticos (por ejemplo, imágenes) a partir de datos aleatorios
  • Un discriminador que intenta distinguir entre los ejemplos sintéticos y los ejemplos reales de un conjunto de datos de entrenamiento. Los conjuntos de datos de entrenamiento típicos de los GAN constan de cientos a millones de ejemplos de cosas que se espera que el GAN acabe captando.

Tanto el generador como el discriminador mejoran en sus respectivas capacidades hasta que el discriminador es incapaz de distinguir los ejemplos reales de los ejemplos sintetizados con una precisión superior al 50% que se espera del azar.

(Relacionado: DALL-E 3: Así ha evolucionado el generador de imágenes de OpenAI desde 2021)

¿Cómo crea imágenes Stable Diffusion?

Mosaico de imagenes creadas con Stable Diffusion

Stable Diffusion es un modelo generativo que utiliza el aprendizaje profundo para crear imágenes a partir de texto. El modelo se basa en una arquitectura de red neuronal que puede aprender a asignar descripciones de texto a características de imagen. Esto significa que puede crear una imagen que coincida con la descripción del texto de entrada.

El modelo de Stable Diffusion utiliza la «difusión» para generar imágenes de alta calidad a partir de texto. El proceso de difusión consiste en actualizar iterativamente un conjunto de píxeles de la imagen basándose en una ecuación de difusión. Esto ayuda a suavizar la imagen y crear una textura más realista.

¿Cómo funciona la difusión?

La difusión se inspira en la física: es el proceso por el que algo se desplaza de una región de mayor concentración a otra de menor concentración, como un terrón de azúcar disolviéndose en el café. Los gránulos de azúcar en el café se concentran inicialmente en la parte superior del líquido, pero se distribuyen gradualmente.

Los sistemas de difusión se basan en la difusión en termodinámica de no equilibrio, en la que el proceso aumenta la entropía (o aleatoriedad) del sistema con el tiempo. Si pensamos en un gas, con el tiempo se extenderá hasta llenar todo un espacio de manera uniforme gracias al movimiento aleatorio. Del mismo modo, datos como las imágenes pueden transformarse en una distribución uniforme añadiendo ruido al azar.

Los sistemas de difusión destruyen lentamente la estructura de los datos añadiendo ruido hasta que no queda más que ruido.

En física, la difusión es espontánea e irreversible: el azúcar difundido en el café no puede recuperarse en forma de cubo. Pero los sistemas de difusión en el aprendizaje automático pretenden aprender una especie de proceso de «difusión inversa» para restaurar los datos destruidos, adquiriendo la capacidad de recuperar los datos a partir del ruido.

Obviamente, hay muchos procesos complejos que ocurren cuando Stable Diffusion genera imágenes. Para simplificarlo a su forma más básica, el texto que le proporcionas al modelo se convierte en números que se relacionan con las palabras individuales, llamados tokens. A continuación, cada token se convierte en un vector de 768 valores conocido como incrustación. Estas incrustaciones son procesadas por el transformador de texto y están listas para ser consumidas por el predictor de ruido.

como funciona stable diffusion

Un modelo de difusión latente

Stable Diffusion es un modelo de difusión latente, y esta es en parte la razón por la que puede generar imágenes de alta resolución a una velocidad tan rápida. El modelo comprime la imagen en el espacio latente en lugar de operar en el espacio de imagen de alta dimensión. En el contexto de la IA, el espacio latente se refiere a un espacio matemático que mapea lo que una red neuronal ha aprendido de las imágenes de entrenamiento. Como el espacio latente es mucho más pequeño, las imágenes se generan más rápidamente.

(Relacionado: ¿Es Craiyon la mejor IA gratuita para hacer imágenes?)

Esta compresión (y posterior descompresión/pintura) se realiza en realidad a través de un autocodificador. El autocodificador comprime la información en el espacio latente utilizando su codificador, y luego la reconstruye de nuevo como imagen utilizando sólo la información comprimida mediante el decodificador.

¿Es la difusión algo nuevo?

Los sistemas de difusión existen desde hace casi una década. Pero una innovación  de OpenAI llamada CLIP (abreviatura de «Contrastive Language-Image Pre-Training») los volvió mucho más prácticos en las aplicaciones cotidianas. CLIP clasifica los datos (por ejemplo, imágenes) para «puntuar» cada paso del proceso de difusión en función de la probabilidad de que se clasifiquen bajo una determinada indicación textual (por ejemplo, «un dibujo de un perro en un césped florido»).

Al principio, los datos tienen una puntuación CLIP muy baja, porque en su mayoría son ruido. Pero a medida que el sistema de difusión reconstruye los datos a partir del ruido, poco a poco se acerca más a la coincidencia con la petición. Una analogía útil es el mármol sin tallar: como un maestro escultor que le dice a un novato dónde tallar, CLIP guía al sistema de difusión hacia una imagen que da una puntuación más alta.

OpenAI introdujo CLIP junto con el sistema de generación de imágenes DALL-E. Desde entonces, se ha introducido en DALL-E, así como en alternativas de código abierto como Stable Diffusion.

(Relacionado: Desnudar con IA: un delito penado con 9 años de cárcel en España)

Modelo basado en la energía

Dicho de forma sintetizada, Stable Diffusion es un modelo basado en la energía que aprende a generar imágenes minimizando una función de energía. La función de energía mide hasta qué punto la imagen desarrollada coincide con la descripción del texto de entrada. Stable Diffusion puede crear imágenes que se ajusten al texto de entrada minimizando la función de energía.

Una vez entrenado Stable Diffusion, puede generar imágenes a partir de descripciones de texto. Para ello, se introduce una descripción de texto en el modelo y éste crea una imagen que coincide con la descripción. La imagen generada puede refinarse aún más ajustando diversos parámetros, como los valores de temperatura y umbral.

por que se llama stable diffusion

Ventajas de Stable Diffusion

Stable Diffusion tiene varias ventajas sobre otros modelos de conversión de texto en imagen. Una de las principales ventajas es su capacidad para generar imágenes de alta calidad con detalles finos y texturas que coinciden con el texto de entrada. Esto se debe al proceso de difusión que permite al modelo crear imágenes estables y coherentes.

(Relacionado: Guía para crear logos con IA gratis)

Una de las razones de la popularidad de Stable Diffusion es su naturaleza de código abierto, su facilidad de uso y su capacidad para ejecutarse en una GPU de consumo. En cierto modo, esto democratiza la generación de imágenes y la IA generativa, permitiendo que cualquiera que esté interesado pueda probarlo.

Stability AI: ¿de dónde ha salido esta empresa?

Stability AI, con sede en Londres y San Francisco, es la creación del director ejecutivo Emad Mostaque. Tras graduarse en Oxford con un máster en Matemáticas e Informática, trabajó como analista en varios fondos de cobertura antes de dedicarse a tareas más públicas. Mostaque cofundó y puso en marcha Stability AI en 2020, motivado tanto por su fascinación personal por la IA como por lo que caracterizó como una falta de «organización» dentro de la comunidad de IA de código abierto.

«Nadie tiene derecho a voto, salvo nuestros empleados: ni multimillonarios, ni grandes fondos, ni gobiernos, ni nadie que controle la empresa o las comunidades a las que apoyamos. Somos completamente independientes», declaró Mostaque a TechCrunch en una entrevista: «Planeamos usar nuestro cómputo para acelerar la IA fundacional de código abierto».

Stability AI tiene un clúster de más de 4.000 GPU Nvidia A100 funcionando en AWS, que utiliza para entrenar sistemas de IA, incluido Stable Diffusion. Su mantenimiento es bastante costoso: Las operaciones y los gastos en la nube de Stability AI se cifran en decenas de millones de dólares. Pero Mostaque ha afirmado en repetidas ocasiones que la I+D de la empresa le permitirá entrenar modelos de forma más eficiente en el futuro.