模型概述
模型特點
模型能力
使用案例
🚀 BK - SDM模型卡片
Block - removed Knowledge - distilled Stable Diffusion Model(BK - SDM)是一種經過架構壓縮的穩定擴散模型(SDM),用於高效的通用文本到圖像合成。該模型通過以下方式構建:(i)從Stable Diffusion v1.4的U - Net中移除幾個殘差和注意力塊;(ii)僅在0.22M LAION圖像文本對上進行蒸餾預訓練(少於完整訓練集的0.1%)。儘管使用了非常有限的資源進行訓練,但我們的緊湊模型可以通過遷移知識來模仿原始SDM。
🚀 快速開始
本模型使用CreativeML OpenRAIL - M許可證,對所有用戶開放。使用前請仔細閱讀許可證內容,瞭解相關權利和使用限制。
請在此處閱讀完整許可證:https://huggingface.co/spaces/CompVis/stable-diffusion-license
✨ 主要特性
- 架構壓縮:通過移除U - Net中的部分塊,顯著減少了模型參數,提高了效率。
- 知識蒸餾:利用蒸餾預訓練,在有限的訓練數據上模仿原始模型的性能。
- 文本到圖像合成:能夠根據輸入的文本生成相應的圖像。
📦 安裝指南
本項目依賴於🤗Diffusers庫,請確保你已經安裝了該庫。
💻 使用示例
基礎用法
import torch
from diffusers import StableDiffusionPipeline
pipe = StableDiffusionPipeline.from_pretrained("nota-ai/bk-sdm-small", torch_dtype=torch.float16)
pipe = pipe.to("cuda")
prompt = "a tropical bird sitting on a branch of a tree"
image = pipe(prompt).images[0]
image.save("example.png")
高級用法
import torch
from diffusers import StableDiffusionPipeline, UNet2DConditionModel
pipe = StableDiffusionPipeline.from_pretrained("CompVis/stable-diffusion-v1-4", torch_dtype=torch.float16)
pipe.unet = UNet2DConditionModel.from_pretrained("nota-ai/bk-sdm-small", subfolder="unet", torch_dtype=torch.float16)
pipe = pipe.to("cuda")
prompt = "a tropical bird sitting on a branch of a tree"
image = pipe(prompt).images[0]
image.save("example.png")
📚 詳細文檔
壓縮方法
U - Net架構
從SDM - v1.4的U - Net中移除了某些殘差和注意力塊:
- 10.4億參數的SDM - v1.4(8.6億參數的U - Net):原始源模型。
- 7.6億參數的BK - SDM - Base(5.8億參數的U - Net):通過移除外部階段的部分塊得到。
- 6.6億參數的BK - SDM - Small(4.9億參數的U - Net):在上述基礎上,移除中間階段的部分塊得到。
- 5.0億參數的BK - SDM - Tiny(3.3億參數的U - Net):在前兩者基礎上,進一步移除內部階段的部分塊得到。

蒸餾預訓練
緊湊的U - Net經過訓練以模仿原始U - Net的行為。我們利用了特徵級和輸出級的蒸餾,以及去噪任務損失。

屬性 | 詳情 |
---|---|
訓練數據 | 來自LAION - Aesthetics V2 6.5+的212,776個圖像文本對(即0.22M對) |
硬件 | 單塊NVIDIA A100 80GB GPU |
梯度累積 | 4 |
批次大小 | 256(= 4×64) |
優化器 | AdamW |
學習率 | 在50K次迭代的預訓練中,恆定學習率為5e - 5 |
實驗結果
以下表格展示了在MS - COCO驗證集的30K個樣本上的零樣本結果。使用PNDM調度器和25次去噪步驟生成512×512的圖像後,將其下采樣到256×256以評估生成分數。我們的模型在第50K次訓練迭代時進行評估。
模型 | FID↓ | IS↑ | CLIP分數↑ (ViT - g/14) |
U - Net參數數量 |
整個SDM參數數量 |
---|---|---|---|---|---|
Stable Diffusion v1.4 | 13.05 | 36.76 | 0.2958 | 0.86B | 1.04B |
BK - SDM - Base(我們的模型) | 15.76 | 33.79 | 0.2878 | 0.58B | 0.76B |
BK - SDM - Small(我們的模型) | 16.98 | 31.68 | 0.2677 | 0.49B | 0.66B |
BK - SDM - Tiny(我們的模型) | 17.12 | 30.09 | 0.2653 | 0.33B | 0.50B |
以下圖片展示了使用一些MS - COCO字幕合成的圖像。

使用場景
本部分內容取自Stable Diffusion v1模型卡片,同樣適用於BK - SDM模型。
直接使用
該模型僅用於研究目的。可能的研究領域和任務包括:
- 安全部署可能生成有害內容的模型。
- 探索和理解生成模型的侷限性和偏差。
- 生成藝術作品並用於設計和其他藝術創作過程。
- 在教育或創意工具中的應用。
- 生成模型的研究。
排除的使用場景如下所述。
濫用、惡意使用和超出範圍的使用
該模型不應被用於故意創建或傳播會對人們造成敵對或疏離環境的圖像。這包括生成人們可預見會感到不安、痛苦或冒犯的圖像;或傳播歷史或當前刻板印象的內容。
超出範圍的使用
該模型並非用於生成對人物或事件的真實或準確表示,因此使用該模型生成此類內容超出了該模型的能力範圍。
濫用和惡意使用
使用該模型生成對個人殘酷的內容是對該模型的濫用。這包括但不限於:
- 生成貶低、非人化或以其他方式傷害人們或其環境、文化、宗教等的表示。
- 故意推廣或傳播歧視性內容或有害的刻板印象。
- 在未經個人同意的情況下冒充他人。
- 未經可能看到該內容的人的同意生成性內容。
- 虛假信息和錯誤信息。
- 令人髮指的暴力和血腥場面的表示。
- 違反版權或許可材料的使用條款分享此類材料。
- 違反版權或許可材料的使用條款分享對其進行修改的內容。
侷限性和偏差
侷限性
- 模型無法實現完美的照片級真實感。
- 模型無法渲染清晰可讀的文本。
- 模型在涉及組合性的更困難任務上表現不佳,例如渲染與“A red cube on top of a blue sphere”對應的圖像。
- 面部和人物通常可能無法正確生成。
- 模型主要使用英文字幕進行訓練,在其他語言中的效果不佳。
- 模型的自動編碼部分存在信息損失。
- 模型在大規模數據集LAION - 5B上進行訓練,該數據集包含成人內容,在沒有額外安全機制和考慮的情況下不適合產品使用。
- 未使用額外措施對數據集進行去重。因此,我們觀察到對於訓練數據中重複的圖像存在一定程度的記憶現象。可以在https://rom1504.github.io/clip-retrieval/上搜索訓練數據,以幫助檢測記憶的圖像。
偏差
雖然圖像生成模型的能力令人印象深刻,但它們也可能強化或加劇社會偏差。Stable Diffusion v1在LAION - 2B(en)的子集上進行訓練,該子集主要由英文描述的圖像組成。使用其他語言的社區和文化的文本和圖像可能沒有得到充分考慮。這影響了模型的整體輸出,因為白人及西方文化通常被設定為默認。此外,模型使用非英文提示生成內容的能力明顯低於使用英文提示的情況。
安全模塊
該模型的預期使用方式是結合Diffusers中的安全檢查器。該檢查器通過將模型輸出與已知的硬編碼NSFW概念進行比對來工作。這些概念被故意隱藏以降低反向工程此過濾器的可能性。具體而言,檢查器在圖像生成後,在CLIPTextModel
的嵌入空間中比較有害概念的類概率。這些概念與生成的圖像一起傳入模型,並與每個NSFW概念的手工設計權重進行比較。
🔧 技術細節
- 架構壓縮:通過移除U - Net中的殘差和注意力塊,減少了模型的計算量和參數數量。
- 知識蒸餾:利用特徵級和輸出級的蒸餾,在有限的訓練數據上學習原始模型的知識。
- 訓練策略:使用去噪任務損失和恆定學習率進行預訓練。
📄 許可證
本模型使用CreativeML OpenRAIL - M許可證。請仔細閱讀完整許可證:https://huggingface.co/spaces/CompVis/stable-diffusion-license
📚 致謝
- 感謝Microsoft for Startups Founders Hub慷慨提供預訓練期間使用的Azure信用額度。
- 感謝CompVis、Runway和Stability AI在潛在/穩定擴散方面的開創性研究。
- 特別感謝LAION、Diffusers和Gradio的貢獻者們提供的寶貴支持。
📖 引用
@article{kim2023architectural,
title={BK-SDM: A Lightweight, Fast, and Cheap Version of Stable Diffusion},
author={Kim, Bo-Kyeong and Song, Hyoung-Kyu and Castells, Thibault and Choi, Shinkook},
journal={arXiv preprint arXiv:2305.15798},
year={2023},
url={https://arxiv.org/abs/2305.15798}
}
@article{kim2023bksdm,
title={BK-SDM: Architecturally Compressed Stable Diffusion for Efficient Text-to-Image Generation},
author={Kim, Bo-Kyeong and Song, Hyoung-Kyu and Castells, Thibault and Choi, Shinkook},
journal={ICML Workshop on Efficient Systems for Foundation Models (ES-FoMo)},
year={2023},
url={https://openreview.net/forum?id=bOVydU0XKC}
}
本模型卡片由Bo - Kyeong Kim編寫,基於Stable Diffusion v1模型卡片。

