一次性搞清Stable diffusion里的30多种采样器

运行打开webui之后,你会在屏幕中间看到Sampling method这个参数,人们管它叫采样器。在它的下拉列表里,你会看到至少30几个不同的method。文章最后,我会总结出常用的几种采样器,以及它们对应的步数(Sampling steps)。如果你时间有限,可以直接滑到文章底部看总结,常用的采样器就那么几种。

在本文中,我将分析 Automatic1111 中可用的采样器。虽然很难将它们分类,但是它们大致可被归为两类。

1,概率模型,例如 DDPM、DDIM、PLMS 和 DPM 系列模型。这些生成模型能够根据模型估计的概率分布生成输出。这就像用相机拍摄风景一样。

2,数值方法,如Euler,Heun和LMS。在每个步骤中,都会寻求特定数学问题的解决方案,并一点一点地估计解决方案。在这种情况下,这就像使用绘画和画布来创建景观并在每个步骤中添加新的细节。

下面看具体介绍:

DDPM(Denoising Diffusion Probabilistic Models)是稳定扩散中最早可用的采样器之一。它基于显式概率模型来消除图像中的噪声。它需要大量的步骤才能达到体面的结果。因为它的效率很低,现在在Automatic1111已经不存在了。

DDIM(Denoising Diffusion Implicit Models)的工作方式与DDPM类似,在本例中使用隐式概率模型。这种差异在更少的步骤中产生更好的结果,使其成为更快的采样器,质量损失很小。虽然它比DDPM有所提高,但是也需要至少100步才能生成质量较好的图片,所以这个模型现在已经没人用了。

PLMS(Pseudo Linear Multi-Step)是对DDIM的改进。虽然它比DDIM有所提高,但是也需要至少50步才能生成质量较好的图片,所以这个模型现在已经没人用了。

通过短短三段文字,你就可以感受到模型和方法的进步,但是这是很多人花了很多时间一点点找出优化的模型和方法的。在人工智能快速发展的今天,你今天学的,可能明天就用不到了,所以我们一定要做到与时俱进,跟着我学习AI最前沿的技术。

我们接着讲。

Euler可能是最简单的方法。基于常微分方程(ODE),该数值方法在每个步骤中线性消除噪声。由于其简单性,它可能不像我们想要的那样准确,但它是最快的之一。Euler采样器收敛,Euler a是Euler的旧版本,不收敛。Euler的速度很快,以至于即使在 10 个步骤中也能提供良好的结果。它的强项是在 30 到 50 步之间。这两个都推荐使用。

Heun 是 Euler 的完美主义者兄弟。虽然Euler只执行线性近似,但 Heun 在每个步骤中执行两个任务,使其成为二阶采样器。它首先使用线性近似进行预测,然后使用非线性近似进行校正。这种精度的提高提供了更高的质量,但换来了一个小缺点:它需要两倍的时间。Karl Heun在一个多世纪前就开发了这种数值方法!

LMS (Linear Multi-Step method)是 PLMS 的表亲,它使用数值而不是概率方法。它使用前面步骤中的信息来减少每个新步骤中的噪音。它提供了更好的准确性,以换取更高的计算要求,所以速度比Euler要慢,不推荐使用。

DPM模型系列

DPM(Diffusion Probabilistic Models)是比 DDPM 提供改进的概率模型。因此有相似的名字。Automatic1111 中也没有可用的实现,因为它具有改进的版本,DPM2 是对 DPM 的改进。你可以说它是版本 2。

如果你用DPM2,通过10步,你就可以拿到想要的结果,大约 30 到 50 步是理想的点。更多的步骤通常是不值得的。

另一方面,我们有 DPM++,这也是对 DPM 的改进。它使用混合方法,结合了确定性和概率性方法进行采样和随后的降噪。Automatic1111 中没有此采样器的基本实现,但它与其他方法结合使用。

顾名思义,扩散概率模型 (DPM) 是概率性的。在每个步骤中,方程不会像 Euler、Heun 或 LMS 那样通过确定性数值方法求解,而是通过近似来解决问题,以尝试尽可能准确地进行采样。

在这些模型中,有一种称为求解器的算法,该算法在计算和近似抽样中的概率分布方面起着重要作用。这就是实现一种称为 DPM-Solver 的新技术的地方,该技术缩短了每个步骤的持续时间。

换言之,DPM fast或 DPM++ 2S或DPM++ 2M等模型实现了更快的求解器,从而节省了采样过程的时间。

在 DPM++ 2S/DPM++ 2M 的情况下,数字 2 表示它们是二阶。也就是说,他们同时使用预测器和校正器来准确近似结果。

S 代表单步。每个步骤都执行一次计算,因此速度更快。

相比之下,字母 M 代表多步,这是一种在每个步骤中执行多个计算的方法,同时考虑在前面的步骤中获得的信息。这相当于更准确、更高质量的收敛,但代价是需要更长的时间。

在这两种模式中,此求解器都比默认的 DPM 模型求解器快。

DPM++ 2S 没有 Automatic1111 实现,只有 A、Karras 和 SDE 变体。

至于UniPC,它是一个求解器,由两部分组成:unified predictor (UniP)和unified corrector(UniC)。此方法可应用于任何 DPM 模型,并专注于以最少的步骤提供尽可能高的采样质量。在某些情况下,UniPC 只需 5 或 10 个步骤即可生成高质量的图像。

因此,UniPC 可以集成到 DPM 模型中,无论是单步还是多步,使其可与 DPM++ 2S 或 DPM++ 2M 相媲美,其特点是在步数非常少时提供更好的结果。

在下面使用UniPC的例子中,10 个步骤不足以生成没有噪声的图像,但在 15 或 20 个步骤中你将得到它。在 30 个步骤中,它非常壮观,无需再进一步,尽管仍有一些改进的余地。

DPM adaptive模型是 DPM 模型的扩展,它根据试图解决的问题的难度调整步长。

换言之,就好像忽略了指定的步骤数,算法可以自由地更有效地采样,直到实现最佳收敛。它生成更高质量的图像,但代价是需要花费尽可能长的时间。

要知道,我们只能选择一种采样算法。可以使用 Euler 或 DPM,但不能同时使用两者。相反,当我们谈论变体或额外功能时,这些可以组合在一起。

例如,我们可以使用名为 DPM2 A Karras 的采样器。让我们看看这些新值意味着什么。

当采样器包含字母 A 时,通常意味着它属于祖先变体(ancestral variants)的类别。这些变体在每个新步骤中都添加了从先前步骤中获得的随机变量。就好像一步到位地清理了噪音之后,之前的一些噪音又加了回来。例子是 Euler A、DPM2 A 或 DPM++ 2S A。

此功能的采样器永远不会收敛,因为每个步骤都会添加随机噪声。如果总是有噪音需要消除,你总是可以更进一步。

这使他们更具创造性的采样器。额外的步骤不一定会提高质量,而是会产生另一个类似的结果。

带有 Karras(或 K)一词的变体是指由 Nvidia 工程师 Tero Karras 领导的工作。此过程对某些采样器进行了一系列改进,从而提高了输出质量和采样所需计算的效率。

使用这些更改的一些采样器包括:LMS Karras、DPM2 Karras、DPM2 A Karras、DPM++ 2S A Karras、DPM++ 2M Karras 或 DPM++ SDE Karras。

Karras 版本的优点是在更少的步骤中提供更好的结果,如以下示例所示:

SDE变体使用随机微分方程(stochastic differential equations)。在不赘述细节的情况下,使用这种类型的微分方程可以以更复杂、更准确的方式对噪声进行建模,使用前面步骤中的信息,原则上,这将生成更高质量的图像,以换取更慢的图像。由于是随机的,它永远不会收敛,因此步数越多,它们不会提供更高的质量,而是提供更多的变化,就像祖先的采样器一样。

我们有 DPM++ SDE、DPM++ 2M SDE、DPM++ SDE Karras 和 DPM++ 2M SDE Karras。

推荐常用采样器

Euler a,Euler:快速获得简单的结果

DPM++ 2M Karras:推荐的算法,速度快,质量好,推荐步数 20~30 步

DPM++ SDE Karras:图像质量好但是不收敛,速度慢,推荐步数 10~15 步

DPM++ 2M SDE Karras:2M和SDE的结合算法,速度和2M相仿,推荐步数 20~30 步

DPM++ 2M SDE Exponential:画面柔和,细节更少一些,推荐步数 20~30 步

DPM++ 3M SDE Karras,DPM++ 3M SDE Exponential:3M 系列。步数需要 30 步以上,且 CFG 要低一些

写在最后

AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。

感兴趣的小伙伴,赠送全套AIGC学习资料和安装工具,包含AI绘画、AI人工智能等前沿科技教程,模型插件,具体看下方。

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

若有侵权,请联系删除
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值