模型概述
模型特點
模型能力
使用案例
🚀 Stable Diffusion v2模型卡片
Stable Diffusion v2是一款基於潛在擴散模型的文本到圖像生成模型,可根據文本提示生成和修改圖像。它由Hugging Face使用Apple的倉庫生成,在圖像生成領域具有廣泛的應用前景。
🚀 快速開始
此模型由Hugging Face使用Apple的倉庫生成,該倉庫採用了ASCL許可證。
本模型卡片主要聚焦於與Stable Diffusion v2模型相關的內容,該模型可在此處獲取。
此模型是從頭開始訓練的,首先在經過篩選的LAION - 5B數據集子集上,以256x256
的分辨率訓練了550k步,篩選過程使用了LAION - NSFW分類器,punsafe = 0.1
,且美學分數 >= 4.5
。然後,在相同數據集的分辨率>= 512x512
的圖像上,以512x512
的分辨率繼續訓練了850k步。
這裡的權重已轉換為Core ML格式,可在Apple Silicon硬件上使用。
Core ML權重有4種變體:
coreml-stable-diffusion-2-base
├── original
│ ├── compiled # Swift推理,“original”注意力機制
│ └── packages # Python推理,“original”注意力機制
└── split_einsum
├── compiled # Swift推理,“split_einsum”注意力機制
└── packages # Python推理,“split_einsum”注意力機制
詳情請參考https://huggingface.co/blog/diffusers-coreml 。
- 可使用 🧨
diffusers
來使用該模型。 - 也可使用
stablediffusion
倉庫:在此處下載512 - base - ema.ckpt
。
✨ 主要特性
- 文本到圖像生成:能夠根據文本提示生成相應的圖像。
- 多分辨率訓練:經過不同分辨率的訓練,能生成不同尺寸的圖像。
- Core ML支持:權重轉換為Core ML格式,可在Apple Silicon硬件上使用。
📚 詳細文檔
模型詳情
屬性 | 詳情 |
---|---|
開發者 | Robin Rombach, Patrick Esser |
模型類型 | 基於擴散的文本到圖像生成模型 |
語言 | 英語 |
許可證 | CreativeML Open RAIL++ - M許可證 |
模型描述 | 這是一個可用於根據文本提示生成和修改圖像的模型。它是一個潛在擴散模型,使用了一個固定的預訓練文本編碼器(OpenCLIP - ViT/H)。 |
更多信息資源 | [GitHub倉庫](https://github.com/Stability - AI/) |
引用格式 | bibtex<br>@InProceedings{Rombach_2022_CVPR,<br> author = {Rombach, Robin and Blattmann, Andreas and Lorenz, Dominik and Esser, Patrick and Ommer, Bj\"orn},<br> title = {High - Resolution Image Synthesis With Latent Diffusion Models},<br> booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},<br> month = {June},<br> year = {2022},<br> pages = {10684 - 10695}<br>}<br> |
用途
直接使用
該模型僅用於研究目的。可能的研究領域和任務包括:
- 安全部署有可能生成有害內容的模型。
- 探究和理解生成模型的侷限性和偏差。
- 藝術品生成以及在設計和其他藝術過程中的應用。
- 在教育或創意工具中的應用。
- 生成模型的研究。
以下是排除的使用場景。
濫用、惡意使用和超出範圍的使用
⚠️ 重要提示
本部分內容最初取自[DALLE - MINI模型卡片](https://huggingface.co/dalle - mini/dalle - mini),曾用於Stable Diffusion v1,同樣適用於Stable Diffusion v2。
該模型不應被用於故意創建或傳播會給人們造成敵對或疏離環境的圖像。這包括生成人們可預見會感到不安、痛苦或冒犯的圖像;或傳播歷史或當前刻板印象的內容。
超出範圍的使用
該模型並非用於生成真實或準確反映人物或事件的內容,因此使用該模型生成此類內容超出了其能力範圍。
濫用和惡意使用
使用該模型生成對個人殘酷的內容屬於濫用行為。這包括但不限於:
- 生成貶低、非人化或以其他方式傷害人們或其環境、文化、宗教等的表現形式。
- 故意推廣或傳播歧視性內容或有害刻板印象。
- 未經他人同意冒充他人。
- 未經可能看到該內容的人的同意生成色情內容。
- 虛假和誤導性信息。
- 嚴重暴力和血腥場面的表現形式。
- 違反使用條款分享受版權保護或有許可證的材料。
- 違反使用條款分享對受版權保護或有許可證的材料進行修改後的內容。
侷限性和偏差
侷限性
- 模型無法實現完美的照片級真實感。
- 模型無法渲染清晰可讀的文本。
- 模型在涉及組合性的更復雜任務上表現不佳,例如渲染與“一個紅色立方體放在藍色球體上”對應的圖像。
- 面部和人物通常可能無法正確生成。
- 模型主要使用英語字幕進行訓練,在其他語言中的效果不佳。
- 模型的自動編碼部分存在信息損失。
- 模型在大規模數據集[LAION - 5B](https://laion.ai/blog/laion - 5b/)的子集上進行訓練,該數據集包含成人、暴力和色情內容。為部分緩解這一問題,我們使用LAION的NFSW檢測器對數據集進行了篩選(見訓練部分)。
偏差
雖然圖像生成模型的能力令人印象深刻,但它們也可能強化或加劇社會偏差。Stable Diffusion v2主要在[LAION - 2B(en)](https://laion.ai/blog/laion - 5b/)的子集上進行訓練,該子集由僅限於英語描述的圖像組成。來自使用其他語言的社區和文化的文本和圖像可能未得到充分考慮。這影響了模型的整體輸出,因為白人和西方文化通常被設定為默認。此外,模型使用非英語提示生成內容的能力明顯低於使用英語提示的能力。Stable Diffusion v2在很大程度上反映和加劇了偏差,無論輸入或其意圖如何,都建議觀眾謹慎使用。
訓練
訓練數據
模型開發者使用以下數據集進行模型訓練:
- LAION - 5B及其子集(詳情如下)。訓練數據使用LAION的NSFW檢測器進一步篩選,“p_unsafe”分數為0.1(保守)。更多詳情,請參考LAION - 5B的[NeurIPS 2022](https://openreview.net/forum?id = M3Y74vmsMcY)論文和關於該主題的評審討論。
訓練過程
Stable Diffusion v2是一個潛在擴散模型,它將自動編碼器與在自動編碼器的潛在空間中訓練的擴散模型相結合。在訓練過程中:
- 圖像通過編碼器進行編碼,將圖像轉換為潛在表示。自動編碼器使用相對下采樣因子8,將形狀為H x W x 3的圖像映射到形狀為H/f x W/f x 4的潛在表示。
- 文本提示通過OpenCLIP - ViT/H文本編碼器進行編碼。
- 文本編碼器的輸出通過交叉注意力機制輸入到潛在擴散模型的UNet主幹中。
- 損失是添加到潛在表示中的噪聲與UNet預測之間的重建目標。我們還使用了所謂的“v - 目標”,詳見https://arxiv.org/abs/2202.00512 。
目前提供以下檢查點:
-
512 - base - ema.ckpt
:在經過篩選的[LAION - 5B](https://laion.ai/blog/laion - 5b/)數據集子集上,以256x256
的分辨率訓練550k步,篩選過程使用了[LAION - NSFW分類器](https://github.com/LAION - AI/CLIP - based - NSFW - Detector),punsafe = 0.1
,且美學分數 >=4.5
。然後在相同數據集的分辨率>= 512x512
的圖像上,以512x512
的分辨率繼續訓練850k步。 -
768 - v - ema.ckpt
:從512 - base - ema.ckpt
繼續訓練,在相同數據集上使用v - 目標訓練150k步。然後在數據集的768x768
子集上繼續訓練140k步。 -
512 - depth - ema.ckpt
:從512 - base - ema.ckpt
繼續訓練並微調200k步。添加了一個額外的輸入通道來處理[MiDaS](https://github.com/isl - org/MiDaS) (dpt_hybrid
)產生的(相對)深度預測,作為額外的條件。處理此額外信息的U - Net的額外輸入通道初始化為零。 -
512 - inpainting - ema.ckpt
:從512 - base - ema.ckpt
繼續訓練200k步。遵循[LAMA](https://github.com/saic - mdal/lama)中提出的掩碼生成策略,結合掩碼圖像的潛在VAE表示,作為額外的條件。處理此額外信息的U - Net的額外輸入通道初始化為零。使用相同的策略訓練了[1.5 - inpainting檢查點](https://github.com/saic - mdal/lama)。 -
x4 - upscaling - ema.ckpt
:在包含圖像>2048x2048
的LAION的10M子集上訓練1250k步。模型在大小為512x512
的裁剪圖像上進行訓練,是一個文本引導的潛在上採樣擴散模型。除了文本輸入外,它還接收一個noise_level
作為輸入參數,可根據[預定義的擴散時間表](configs/stable - diffusion/x4 - upscaling.yaml)向低分辨率輸入添加噪聲。 -
硬件:32 x 8 x A100 GPU
-
優化器:AdamW
-
梯度累積:1
-
批次大小:32 x 8 x 2 x 4 = 2048
-
學習率:在10000步內預熱到0.0001,然後保持不變
評估結果
使用不同的無分類器引導尺度(1.5、2.0、3.0、4.0、5.0、6.0、7.0、8.0)和50步DDIM採樣步驟進行評估,顯示了各檢查點的相對改進情況:

使用50步DDIM採樣和來自COCO2017驗證集的10000個隨機提示進行評估,評估分辨率為512x512。未針對FID分數進行優化。
環境影響
Stable Diffusion v1估計排放量
基於這些信息,我們使用Lacoste等人(2019)中提出的機器學習影響計算器估計了以下CO2排放量。利用硬件、運行時間、雲服務提供商和計算區域來估計碳影響。
- 硬件類型:A100 PCIe 40GB
- 使用時長:200000小時
- 雲服務提供商:AWS
- 計算區域:美國東部
- 碳排放(功耗 x 時間 x 基於電網位置產生的碳):15000千克CO2當量
引用
@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撰寫,基於[Stable Diffusion v1](https://github.com/CompVis/stable - diffusion/blob/main/Stable_Diffusion_v1_Model_Card.md)和[DALL - E Mini模型卡片](https://huggingface.co/dalle - mini/dalle - mini)。
📄 許可證
該模型採用[CreativeML Open RAIL++ - M許可證](https://huggingface.co/stabilityai/stable - diffusion - 2/blob/main/LICENSE - MODEL)。









