Difusión estable

Tarjeta modelo de difusión estable v1-5

Stable Diffusion es un modelo de difusión latente texto-imagen capaz de generar imágenes fotorrealistas a partir de cualquier texto. Para más información sobre el funcionamiento de Stable Diffusion, consulte 🤗 El blog de la difusión estable.

En Difusión estable-v1-5 se inicializó con los pesos del Difusión estable-v1-2 punto de control y posteriormente afinado en 595k pasos a resolución 512×512 en "laion-aesthetics v2 5+" y 10% eliminación del condicionamiento del texto para mejorar muestreo orientativo sin clasificador.

Puede utilizarlo tanto con el 🧨Biblioteca de difusores y el Repositorio GitHub de RunwayML.

Difusores

from difusores import StableDiffusionPipeline
importar antorcha

model_id = "runwayml/stable-diffusion-v1-5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to("cuda")

prompt = "una foto de un astronauta montando a caballo en marte"
image = pipe(prompt).images[0]
    
image.save("astronauta_monta_caballo.png")

Para instrucciones más detalladas, casos de uso y ejemplos en JAX siga las instrucciones aquí

Repositorio GitHub original

  1. Descargar los pesos
  2. Siga las instrucciones aquí.

Detalles del modelo

  • Desarrollado por: Robin Rombach, Patrick Esser
  • Tipo de modelo: Modelo de generación de texto a imagen basado en la difusión
  • Idioma(s): Inglés
  • Licencia: La licencia CreativeML OpenRAIL M es un Licencia RAIL M abiertaadaptado de la obra que BigScience y la Iniciativa RAIL están llevando a cabo conjuntamente en el ámbito de la concesión responsable de licencias de IA. Véase también el artículo sobre la licencia BLOOM Open RAIL en la que se basa nuestra licencia.
  • Descripción del modelo: Se trata de un modelo que permite generar y modificar imágenes a partir de indicaciones textuales. Se trata de un Modelo de difusión latente que utiliza un codificador de texto fijo y preentrenado (CLIP ViT-L/14) como se sugiere en el Papel de imagen.
  • Recursos para más información: Repositorio GitHubPapel.
  • Citar como:@InProceedings{Rombach_2022_CVPR, author = {Rombach, Robin y Blattmann, Andreas y Lorenz, Dominik y Esser, Patrick y Ommer, Bj\"orn}, title = {Síntesis de imágenes de alta resolución con modelos de difusión latente}, booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)}, month = {Junio}, year = {2022}, pages = {10684-10695}. }

Utiliza

Uso directo

El modelo está pensado únicamente para fines de investigación. Entre las posibles áreas y tareas de investigación se incluyen

  • Implantación segura de modelos que puedan generar contenidos nocivos.
  • Probar y comprender las limitaciones y los sesgos de los modelos generativos.
  • Generación de obras de arte y utilización en el diseño y otros procesos artísticos.
  • Aplicaciones en herramientas educativas o creativas.
  • Investigación sobre modelos generativos.

Los usos excluidos se describen a continuación.

Uso indebido, malintencionado y fuera del ámbito de aplicación

Nota: Esta sección está extraída del Tarjeta modelo DALLE-MINIpero se aplica del mismo modo a la difusión estable v1.

El modelo no debe utilizarse para crear o difundir intencionadamente imágenes que creen entornos hostiles o alienantes para las personas. Esto incluye generar imágenes que las personas previsiblemente encontrarían perturbadoras, angustiosas u ofensivas; o contenidos que propaguen estereotipos históricos o actuales.

Uso fuera del ámbito

El modelo no fue entrenado para ser representaciones factuales o verdaderas de personas o acontecimientos, por lo que utilizarlo para generar ese tipo de contenidos está fuera del alcance de las capacidades de este modelo.

Uso indebido y malintencionado

Utilizar el modelo para generar contenidos crueles para las personas es un mal uso de este modelo. Esto incluye, pero no se limita a:

  • Generar representaciones denigrantes, deshumanizadoras o perjudiciales de otro modo de las personas o sus entornos, culturas, religiones, etc.
  • Promover o propagar intencionadamente contenidos discriminatorios o estereotipos perjudiciales.
  • Suplantar la identidad de personas sin su consentimiento.
  • Contenido sexual sin consentimiento de las personas que podrían verlo.
  • Información errónea y desinformación
  • Representaciones de violencia atroz y gore
  • Compartir material protegido por derechos de autor o con licencia infringiendo sus condiciones de uso.
  • Compartir contenidos que supongan una alteración de material protegido por derechos de autor o con licencia que infrinja sus condiciones de uso.

Limitaciones y sesgos

Limitaciones

  • El modelo no logra un fotorrealismo perfecto
  • El modelo no puede mostrar texto legible
  • El modelo no rinde bien en tareas más difíciles que implican composicionalidad, como el renderizado de una imagen correspondiente a "Un cubo rojo sobre una esfera azul"
  • Es posible que las caras y las personas en general no se generen correctamente.
  • El modelo se entrenó principalmente con subtítulos en inglés y no funcionará tan bien en otros idiomas.
  • La parte de autocodificación del modelo tiene pérdidas
  • El modelo se entrenó con un conjunto de datos a gran escala LAION-5B que contiene material para adultos y no es apto para el uso del producto sin mecanismos y consideraciones de seguridad adicionales.
  • No se utilizó ninguna medida adicional para desduplicar el conjunto de datos. Como resultado, observamos cierto grado de memorización de las imágenes duplicadas en los datos de entrenamiento. Los datos de formación pueden consultarse en https://rom1504.github.io/clip-retrieval/ para ayudar posiblemente en la detección de imágenes memorizadas.

Sesgo

Aunque las capacidades de los modelos de generación de imágenes son impresionantes, también pueden reforzar o exacerbar los sesgos sociales. Stable Diffusion v1 se entrenó con subconjuntos de LAION-2B(es)que consiste en imágenes que se limitan principalmente a descripciones en inglés. Es probable que no se tengan suficientemente en cuenta los textos e imágenes de comunidades y culturas que utilizan otras lenguas. Esto afecta al resultado global del modelo, ya que las culturas blancas y occidentales suelen establecerse por defecto. Además, la capacidad del modelo para generar contenidos con indicaciones en otros idiomas es significativamente peor que con indicaciones en inglés.

Módulo de seguridad

El uso previsto de este modelo es con el Comprobador de seguridad en Difusores. Este verificador comprueba los resultados del modelo con conceptos NSFW codificados. Los conceptos se ocultan intencionadamente para reducir la probabilidad de aplicar ingeniería inversa a este filtro. En concreto, el verificador compara la probabilidad de clase de los conceptos nocivos en el espacio de incrustación del filtro. CLIPTextModel tras generación de las imágenes. Los conceptos se introducen en el modelo con la imagen generada y se comparan con un peso diseñado a mano para cada concepto NSFW.

Formación

Datos de formación Los desarrolladores del modelo utilizaron el siguiente conjunto de datos para entrenar el modelo:

  • LAION-2B (en) y sus subconjuntos (véase la sección siguiente)

Procedimiento de formación Estable Difusión v1-5 es un modelo de difusión latente que combina un autocodificador con un modelo de difusión que se entrena en el espacio latente del autocodificador. Durante el entrenamiento,

  • Las imágenes se codifican mediante un codificador, que las convierte en representaciones latentes. El autocodificador utiliza un factor de reducción de muestreo relativo de 8 y asigna imágenes de forma H x W x 3 a latentes de forma H/f x W/f x 4
  • Las indicaciones de texto se codifican mediante un codificador de texto ViT-L/14.
  • La salida no agrupada del codificador de texto se introduce en la red troncal UNet del modelo de difusión latente a través de la atención cruzada.
  • La pérdida es un objetivo de reconstrucción entre el ruido que se añadió a la latente y la predicción realizada por la UNet.

Actualmente se proporcionan seis puntos de control de difusión estable, que se formaron de la siguiente manera.

  • difusión-estable-v1-1237.000 pasos en resolución 256x256 en laion2B-es. 194.000 pasos en la resolución 512x512 en laion-alta resolución (170M ejemplos de LAION-5B con resolución >= 1024x1024).
  • difusión-estable-v1-2: Reanudado desde difusión-estable-v1-1. 515.000 pasos a resolución 512x512 en "laion-improved-aesthetics" (un subconjunto de laion2B-es, filtrado a imágenes con un tamaño original >= 512x512Puntuación estética estimada > 5.0y una probabilidad estimada de la marca de agua < 0.5. La estimación de la marca de agua procede de los metadatos de LAION-5B, la puntuación estética se estima utilizando un estimación estética mejorada).
  • difusión-estable-v1-3: Reanudado desde difusión-estable-v1-2 - 195.000 pasos en la resolución 512x512 sobre "laion-mejora-estética" y 10 % abandono del condicionamiento del texto para mejorar muestreo orientativo sin clasificador.
  • difusión-estable-v1-4 Reanudado desde difusión-estable-v1-2 - 225.000 pasos en resolución 512x512 en "laion-aesthetics v2 5+" y 10 % abandono del condicionamiento del texto para mejorar muestreo orientativo sin clasificador.
  • difusión-estable-v1-5 Reanudado desde difusión-estable-v1-2 - 595.000 pasos en resolución 512x512 en "laion-aesthetics v2 5+" y 10 % abandono del condicionamiento del texto para mejorar muestreo orientativo sin clasificador.
  • stable-diffusion-inpainting Reanudado desde difusión-estable-v1-5 - a continuación, 440.000 pasos de entrenamiento de inpainting a una resolución de 512×512 en "laion-aesthetics v2 5+" y 10% de abandono del condicionamiento de texto. Para el inpainting, la UNet dispone de 5 canales de entrada adicionales (4 para la imagen enmascarada codificada y 1 para la propia máscara) cuyos pesos se inicializaron a cero tras restablecer el punto de control de no-inpainting. Durante el entrenamiento, generamos máscaras sintéticas y en 25% enmascaramos todo.
  • Hardware: 32 x 8 x GPU A100
  • Optimizador: AdamW
  • Acumulaciones de gradiente: 2
  • Lote: 32 x 8 x 2 x 4 = 2048
  • Ritmo de aprendizaje: calentamiento a 0,0001 durante 10.000 pasos y luego se mantiene constante

Resultados de la evaluación

Las evaluaciones con diferentes escalas de orientación sin clasificador (1,5, 2,0, 3,0, 4,0, 5,0, 6,0, 7,0, 8,0) y 50 pasos de muestreo PNDM/PLMS muestran las mejoras relativas de los puntos de control:

pareto

Evaluado utilizando 50 pasos PLMS y 10000 mensajes aleatorios del conjunto de validación COCO2017, evaluados a una resolución de 512×512. No optimizado para puntuaciones FID.

Impacto medioambiental

Difusión estable v1 Emisiones estimadas Basándonos en esa información, estimamos las siguientes emisiones de CO2 utilizando la Calculadora de impacto del aprendizaje automático presentado en Lacoste et al. (2019). El hardware, el tiempo de ejecución, el proveedor de la nube y la región de computación se utilizaron para estimar el impacto del carbono.

  • Tipo de hardware: A100 PCIe 40 GB
  • Horas utilizadas: 150000
  • Proveedor de la nube: AWS
  • Región de cálculo: EE.UU.-Este
  • Carbono emitido (Consumo de energía x Tiempo x Carbono producido en función de la ubicación de la red eléctrica): 11250 kg CO2 eq.

Cita

    @InProceedings{Rombach_2022_CVPR,
        author = {Rombach, Robin y Blattmann, Andreas y Lorenz, Dominik y Esser, Patrick y Ommer, Bj\"orn},
        title = {Síntesis de imágenes de alta resolución con modelos de difusión latente},
        booktitle = {Actas de la Conferencia IEEE/CVF sobre Visión por Ordenador y Reconocimiento de Patrones (CVPR)},
        month = {Junio},
        año = {2022},
        pages = {10684-10695}
    }

Esta ficha modelo ha sido redactada por: Robin Rombach y Patrick Esser y se basa en la Mini tarjeta modelo DALL-E.