Stable-Diffusion模型中常见 Stable Diffusion Sampling 方法

在 Stable Diffusion 里,sampling 方法通常也叫 sampler / scheduler,本质是:模型从随机噪声开始,按某种反向去噪策略一步步生成图像。Diffusers 官方说明里,scheduler 会根据模型输出和 timestep 返回去噪后的 sample;训练时它定义加噪方式,推理时它定义如何更新 sample。([Hugging Face][1])

1. 常见 Stable Diffusion Sampling 方法

类别 常见 sampler / scheduler 特点 适合场景
原始扩散采样 DDPM 最经典,随机性强,步数多,速度慢 论文 baseline、研究原理
确定性采样 DDIM 可用较少步数生成,结果更稳定,便于复现 img2img、可控生成、数据集复现
Pseudo Numerical PNDM / PLMS Stable Diffusion 早期常用默认采样器,质量稳定 通用生成、默认 baseline
Linear Multistep LMS / K-LMS 多步数值解法,平滑稳定 通用图像生成
Euler 系列 Euler / Euler a Euler 稳定;Euler a 带 ancestral 随机性,多样性更强 批量生成、多样化数据
Heun 系列 Heun 类似改进 Euler,质量较稳但略慢 高质量生成
DPM2 系列 DPM2 / DPM2 a / KDPM2 / KDPM2 a 二阶 DPM 采样,a 版本随机性更强 质量与多样性平衡
DPM-Solver 系列 DPM-Solver / DPM-Solver++ / DPM++ 2M / DPM++ SDE 高阶 ODE/SDE 求解器,少步数高质量 当前最常用的数据生成采样器
Karras 噪声调度 DPM++ 2M Karras / Euler Karras / LMS Karras 改进 sigma/noise schedule,常提升稳定性和细节 高质量批量合成数据
UniPC UniPCMultistepScheduler 训练无关的快速 predictor-corrector 采样框架 少步数快速生成
DEIS DEISMultistepScheduler 高效多步采样器 快速高质量生成
LCM / Turbo 类 LCMScheduler / SDXL-Turbo 极少步数,LCM 常见 2--4 步,SDXL Turbo 可 1 步推理 快速预览、大规模粗生成

Diffusers 官方的 scheduler 映射表中明确列出了 A1111/k-diffusion 中常见的 DPM++ 2M、DPM++ 2M Karras、DPM++ SDE、DPM2、Euler、Euler a、Heun、LMS、UniPC、DEIS 等采样器及其在 Diffusers 中的对应 scheduler。([Hugging Face][1])

2. 重点采样器说明

DDPM

DDPM 是最原始的扩散概率模型采样方式,理论基础清晰,但推理步数通常较多,速度较慢。适合做算法理解、论文复现和 baseline,不太适合高吞吐数据生成。([Hugging Face][2])

DDIM

DDIM 是对 DDPM 去噪过程的非马尔可夫扩展,常用于更少步数、更稳定的生成流程。它适合需要固定 seed、可重复生成、img2img 或自动标注数据构造的场景。([Hugging Face][3])

DPM-Solver / DPM++

DPM-Solver 和 DPM-Solver++ 是专门面向 diffusion ODE 的快速高阶求解器。Diffusers 文档说明,DPM-Solver 在 20 步时通常能生成高质量样本,10 步也能得到不错结果。([Hugging Face][4])

实际批量生成数据时,常用:

text 复制代码
DPM++ 2M Karras
DPM++ SDE Karras
DPM++ 2M
DPM++ 2S a Karras

其中 DPM++ 2M Karras 是很多 Stable Diffusion WebUI / ComfyUI 工作流中的通用高质量默认选择。

Euler / Euler a

Euler 系列简单、速度快。Euler 更稳定,Euler a 带 ancestral 随机性,生成结果变化更大。做合成数据增强时,如果你希望同一 prompt 生成更多风格变化,Euler a 比较有价值。Diffusers 官方映射中,Euler 对应 EulerDiscreteScheduler,Euler a 对应 EulerAncestralDiscreteScheduler。([Hugging Face][1])

UniPC

UniPC 是一种训练无关的快速采样框架,由 predictor 和 corrector 组成,支持多种 diffusion 模型和不同阶数,目标是少步数下提升采样质量。([Hugging Face][5])

LCM / SDXL Turbo

LCM 属于极少步数生成路线。Diffusers 文档说明,LCM 可以在 2--4 步 生成高质量图像,而不是传统 diffusion 常见的 20--30 步;LCMScheduler 通常用于 1--8 步生成。([Hugging Face][6])

SDXL Turbo 是时间蒸馏后的 SDXL 模型,Diffusers 文档称其可以低至 1 step 推理。([Hugging Face][7])

3. 做"生成数据集"时的推荐选择

高质量、稳定、通用

text 复制代码
DPM++ 2M Karras
Steps: 20--30
CFG Scale: 5--8

适合生成商品图、目标检测训练图、风格较稳定的合成数据。

更高多样性

text 复制代码
Euler a
DPM++ 2S a Karras
DPM2 a Karras
Steps: 25--40

适合做数据增强,让姿态、背景、光照、纹理变化更丰富。

快速大规模粗生成

text 复制代码
LCM
LCM-LoRA
SDXL Turbo
Steps: 1--8

适合先快速生成大量候选图,再用 CLIP / 分类器 / 检测器过滤。

可复现、可控生成

text 复制代码
DDIM
PNDM
DPM++ 2M

适合固定 seed、prompt 模板、类别标签,构建可追溯的数据生成 pipeline。

4. 结论

做 Stable Diffusion 数据生成,优先推荐:

text 复制代码
首选:DPM++ 2M Karras
多样性:Euler a / DPM++ 2S a Karras
快速:LCM / SDXL Turbo
可复现:DDIM
研究 baseline:DDPM / PNDM

对于自动标注或训练集扩充,比较实用的组合是:

text 复制代码
DPM++ 2M Karras 生成高质量主数据
Euler a 生成多样化增强数据
LCM / Turbo 生成大规模候选数据
CLIP / 检测器 / 人工审核做过滤

参考链接:

1\]: https://huggingface.co/docs/diffusers/en/api/schedulers/overview "Schedulers · Hugging Face" \[2\]: https://huggingface.co/docs/diffusers/api/schedulers/ddpm "DDPMScheduler · Hugging Face" \[3\]: https://huggingface.co/docs/diffusers/api/schedulers/ddim "DDIMScheduler · Hugging Face" \[4\]: https://huggingface.co/docs/diffusers/en/api/schedulers/multistep_dpm_solver "DPMSolverMultistepScheduler · Hugging Face" \[5\]: https://huggingface.co/docs/diffusers/en/api/schedulers/unipc "UniPCMultistepScheduler · Hugging Face" \[6\]: https://huggingface.co/docs/diffusers/using-diffusers/inference_with_lcm?utm_source=chatgpt.com "Latent Consistency Model" \[7\]: https://huggingface.co/docs/diffusers/using-diffusers/sdxl_turbo?utm_source=chatgpt.com "Stable Diffusion XL Turbo"

相关推荐
weixin_307779133 小时前
基于Vosk与CTranslate2的实时语音识别翻译系统 —— 完整C++实现详解
人工智能·算法·自动化·语音识别·原型模式
大模型最新论文速读3 小时前
05-21 · LLM 最新论文速览
论文阅读·人工智能·深度学习·机器学习·自然语言处理
小鹿软件办公3 小时前
Google 在 Chrome 和搜索中加入 SynthID AI 图像检测功能
前端·人工智能·chrome
土星云SaturnCloud3 小时前
土星云AI边缘计算-算法运行环境搭建:Docker部署全流程实操
服务器·人工智能·docker·ai·边缘计算
clp200311013 小时前
AI Coding 全栈实战
人工智能
ZGi.ai3 小时前
多租户AI平台设计:权限隔离、数据隔离与计费隔离工程实现
人工智能·数据隔离·ai平台·权限隔离·计费系统
欢喜躲在眉梢里3 小时前
从文字回复到具象交互:官网 Agent 的交互逻辑重构
人工智能·microsoft·ai·重构·交互·ai工具
IT_陈寒3 小时前
Vite热更新失效?我在这坑里卡了一下午
前端·人工智能·后端
初心未改HD3 小时前
深度学习之RNN循环神经网络详解
人工智能·rnn·深度学习