许可协议: openrail++
标签:
- 稳定扩散
- 图像到图像
复制来源: stabilityai/stable-diffusion-2-depth
管道类型: 图像到图像
稳定扩散v2模型卡
本模型卡重点介绍与稳定扩散v2模型相关的模型,该模型可在此处获取。
这个stable-diffusion-2-depth
模型是从stable-diffusion-2-base(512-base-ema.ckpt
)恢复并微调了20万步。增加了一个额外的输入通道来处理由MiDaS(dpt_hybrid
)生成的(相对)深度预测,作为额外的条件输入。

模型详情
-
开发者: Robin Rombach, Patrick Esser
-
模型类型: 基于扩散的文本到图像生成模型
-
语言: 英语
-
许可协议: CreativeML Open RAIL++-M License
-
模型描述: 这是一个可以根据文本提示生成和修改图像的模型。它是一个潜在扩散模型,使用固定的预训练文本编码器(OpenCLIP-ViT/H)。
-
更多信息: GitHub仓库。
-
引用方式:
@InProceedings{Rombach_2022_CVPR,
author = {Rombach, Robin and Blattmann, Andreas and Lorenz, Dominik and Esser, Patrick and Ommer, Bj\"orn},
title = {High-Resolution Image Synthesis With Latent Diffusion Models},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2022},
pages = {10684-10695}
}
示例
使用🤗的Diffusers库以简单高效的方式运行稳定扩散2。
pip install -U git+https://github.com/huggingface/transformers.git
pip install diffusers transformers accelerate scipy safetensors
运行管道(如果不更换调度器,将使用默认的DDIM,在此示例中我们将其替换为EulerDiscreteScheduler):
import torch
import requests
from PIL import Image
from diffusers import StableDiffusionDepth2ImgPipeline
pipe = StableDiffusionDepth2ImgPipeline.from_pretrained(
"stabilityai/stable-diffusion-2-depth",
torch_dtype=torch.float16,
).to("cuda")
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
init_image = Image.open(requests.get(url, stream=True).raw)
prompt = "两只老虎"
n_propmt = "糟糕的,变形的,丑陋的,解剖结构不良"
image = pipe(prompt=prompt, image=init_image, negative_prompt=n_propmt, strength=0.7).images[0]
注意事项:
- 尽管不是必需的依赖项,但我们强烈建议安装xformers以实现内存高效注意力(更好的性能)
- 如果GPU内存较低,确保在发送到
cuda
后添加pipe.enable_attention_slicing()
以减少VRAM使用(以速度为代价)
用途
直接使用
该模型仅用于研究目的。可能的研究领域和任务包括:
- 安全部署可能生成有害内容的模型。
- 探索和理解生成模型的局限性和偏见。
- 艺术作品的生成以及在设计和艺术过程中的应用。
- 教育或创意工具中的应用。
- 生成模型的研究。
以下描述了排除的用途。
滥用、恶意使用和超出范围的用途
注:本节最初取自DALLE-MINI模型卡,用于稳定扩散v1,但同样适用于稳定扩散v2。
该模型不应被用于故意创建或传播为人们制造敌对或疏远环境的图像。这包括生成人们可预见地感到不安、痛苦或冒犯的图像;或传播历史或当前刻板印象的内容。
超出范围的用途
该模型未经过训练以生成关于人物或事件的真实或事实性表示,因此使用该模型生成此类内容超出了该模型的能力范围。
滥用和恶意使用
使用该模型生成对个人残忍的内容是对该模型的滥用。这包括但不限于:
- 生成贬低、非人化或以其他方式有害的人物或其环境、文化、宗教等的表示。
- 故意宣传或传播歧视性内容或有害刻板印象。
- 未经同意冒充个人。
- 未经可能看到的人同意生成性内容。
- 错误和虚假信息
- 极端暴力和血腥的表示
- 违反其使用条款分享受版权或许可的材料。
- 违反其使用条款分享受版权或许可的材料的修改版本。
局限性和偏见
局限性
- 该模型无法实现完美的照片级真实感
- 该模型无法渲染可读的文本
- 该模型在涉及组合性的更复杂任务上表现不佳,例如渲染与“蓝色球体上的红色立方体”相对应的图像
- 面部和人物可能无法正确生成。
- 该模型主要使用英文标题进行训练,在其他语言中表现不佳。
- 模型的自动编码部分是有损的
- 该模型是在大规模数据集LAION-5B的子集上训练的,其中包含成人、暴力和性内容。为了部分缓解这一问题,我们使用LAION的NSFW检测器对数据集进行了过滤(参见训练部分)。
偏见
尽管图像生成模型的能力令人印象深刻,但它们也可能强化或加剧社会偏见。
稳定扩散v2主要是在LAION-2B(en)的子集上训练的,
这些图像仅限于英文描述。
使用其他语言的社区和文化的文本和图像可能未被充分考虑到。
这影响了模型的整体输出,因为白人和西方文化通常被设置为默认值。此外,
模型生成非英文提示内容的能力明显比英文提示差。
稳定扩散v2反映并加剧了偏见,以至于无论输入或其意图如何,都必须建议观众谨慎。
训练
训练数据
模型开发者使用以下数据集训练模型:
- LAION-5B及其子集(详情如下)。训练数据进一步使用LAION的NSFW检测器进行过滤,使用“p_unsafe”分数为0.1(保守)。更多详情,请参阅LAION-5B的NeurIPS 2022论文和关于该主题的审稿人讨论。
训练过程
稳定扩散v2是一个潜在扩散模型,它将自动编码器与在自动编码器的潜在空间中训练的扩散模型相结合。在训练过程中,
- 图像通过编码器编码,将图像转换为潜在表示。自动编码器使用相对下采样因子8,并将形状为H x W x 3的图像映射为形状为H/f x W/f x 4的潜在表示。
- 文本提示通过OpenCLIP-ViT/H文本编码器编码。
- 文本编码器的输出通过交叉注意力输入到潜在扩散模型的UNet骨干中。
- 损失是添加到潜在中的噪声与UNet做出的预测之间的重建目标。我们还使用了所谓的_v-objective_,参见https://arxiv.org/abs/2202.00512。
我们目前提供以下检查点:
-
512-base-ema.ckpt
:在LAION-5B的子集上以分辨率256x256
训练55万步,过滤了明确的色情材料,使用LAION-NSFW分类器的punsafe=0.1
和美学评分 >= 4.5
。
在相同数据集上以分辨率512x512
训练85万步,分辨率>= 512x512
。
-
768-v-ema.ckpt
:从512-base-ema.ckpt
恢复,并在相同数据集上使用v-objective训练15万步。在我们的数据集的768x768
子集上再训练14万步。
-
512-depth-ema.ckpt
:从512-base-ema.ckpt
恢复,并微调20万步。增加了一个额外的输入通道来处理由MiDaS(dpt_hybrid
)生成的(相对)深度预测,作为额外的条件输入。
处理这些额外信息的U-Net的额外输入通道被初始化为零。
-
512-inpainting-ema.ckpt
:从512-base-ema.ckpt
恢复,并再训练20万步。遵循LAMA中提出的掩码生成策略,与掩码图像的潜在VAE表示结合使用,作为额外的条件输入。
处理这些额外信息的U-Net的额外输入通道被初始化为零。相同的策略用于训练1.5-inpainting检查点。
-
x4-upscaling-ema.ckpt
:在包含图像>2048x2048
的LAION的10M子集上训练125万步。模型在512x512
大小的裁剪上训练,是一个文本引导的潜在上采样扩散模型。
除了文本输入外,它还接收一个noise_level
作为输入参数,可用于根据预定义的扩散计划向低分辨率输入添加噪声。
-
硬件: 32 x 8 x A100 GPU
-
优化器: AdamW
-
梯度累积: 1
-
批量: 32 x 8 x 2 x 4 = 2048
-
学习率: 预热到0.0001,持续10,000步,然后保持恒定
评估结果
使用不同的无分类器引导尺度(1.5、2.0、3.0、4.0、5.0、6.0、7.0、8.0)和50步DDIM采样步骤的评估显示了检查点的相对改进:

使用50步DDIM和来自COCO2017验证集的10000个随机提示进行评估,评估分辨率为512x512。未针对FID分数进行优化。
环境影响
稳定扩散v1 估计排放量
基于这些信息,我们使用Lacoste等人(2019)中提出的机器学习影响计算器估计以下CO2排放量。硬件、运行时间、云提供商和计算区域用于估计碳影响。
- 硬件类型: A100 PCIe 40GB
- 使用小时数: 200000
- 云提供商: AWS
- 计算区域: 美国东部
- 碳排放量(功耗 x 时间 x 基于电网位置的碳产生量): 15000 kg CO2 eq.
引用
@InProceedings{Rombach_2022_CVPR,
author = {Rombach, Robin and Blattmann, Andreas and Lorenz, Dominik and Esser, Patrick and Ommer, Bj\"orn},
title = {High-Resolution Image Synthesis With Latent Diffusion Models},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2022},
pages = {10684-10695}
}
本模型卡由Robin Rombach、Patrick Esser和David Ha编写,基于稳定扩散v1和DALL-E Mini模型卡。