Stable Diffusion采样器实战指南:如何选择合适的采样器

AI教程 2024-04-19

当你成功运行webui并打开界面时,首先映入眼帘的便是“Sampling method”这个参数,通常我们称之为采样器。只需稍稍下拉,你会惊讶地发现至少有30几种不同的采样方法可供选择。

image.png

尽管它们看似多样,但大致可以分为两大类别。

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

image.png

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

现在,让我们详细了解一下这些采样器:

DDPM,即去噪扩散概率模型,是稳定扩散技术中早期的一种采样器。它基于显式概率模型来消除图像中的噪声。然而,由于其需要大量的步骤才能达到满意的效果,且效率相对较低,现在在Automatic1111中已不多见。

image.png

紧接着是DDIM,即隐式去噪扩散模型。尽管它与DDPM在原理上相似,但由于采用了隐式概率模型,DDIM在更少的步骤内能产生更好的结果。然而,它仍然需要至少100步来生成质量较高的图片,因此现在使用的人也相对较少。

PLMS,即伪线性多步方法,是对DDIM的进一步改进。然而,它同样需要至少50步才能达到满意的效果,因此现在已逐渐退出主流。

通过这几段简短的介绍,你可以感受到技术和方法的不断进步。然而,这些进步背后是无数人的辛勤付出和时间的积累。在人工智能快速发展的今天,我们需要保持与时俱进,紧跟技术前沿。

image.png

接下来,我们再继续探讨其他的采样器。

Euler方法可能是最简单的一种数值方法。它基于常微分方程,通过在每个步骤中线性消除噪声来工作。虽然它的简单性可能导致其精度不如我们期望的那样高,但Euler方法的速度非常快,甚至在10个步骤内就能提供良好的结果。尤其是在30到50步之间,Euler方法的表现尤为出色。因此,我非常推荐你尝试使用Euler方法。

而Heun方法可以被视为Euler方法的“完美主义者”兄弟。与Euler方法仅执行线性近似不同,Heun方法在每个步骤中执行两次计算,从而成为二阶采样器。它首先使用线性近似进行预测,然后使用非线性近似进行校正。这种精度的提高确实带来了更高的质量,但相应地,它也需要两倍的时间。值得一提的是,Karl Heun在一个多世纪前就已经开发了这种数值方法,可见其历史悠久。

LMS方法则是PLMS的近亲,它使用数值而非概率方法。LMS方法利用前面步骤中的信息来减少每个新步骤中的噪声。虽然它提供了更高的准确性,但这也带来了更高的计算要求,因此其速度相对较慢。综合考虑,我并不推荐使用LMS方法。

接下来,我们谈谈DPM模型系列。

DPM,即扩散概率模型,是对DDPM进行改进的概率模型。然而,Automatic1111中并没有提供DPM的基本实现,因为其已经有了改进的版本——DPM2。你可以将DPM2视为DPM的升级版。使用DPM2,你只需10步就能得到想要的结果,而30到50步则是理想的范围。更多的步骤通常是不必要的。

此外,我们还有DPM++,这也是对DPM的进一步改进。它结合了确定性和概率性方法进行采样和降噪。虽然Automatic1111中并没有提供DPM++的基本实现,但它与其他方法结合使用时能够发挥出强大的效果。

总的来说,扩散概率模型(如DPM、DPM2和DPM++)都是基于概率性的。在每个步骤中,它们并不像Euler、Heun或LMS那样通过确定性数值方法求解,而是通过近似来解决问题,以尽可能准确地进行采样。在这些模型中,求解器起着关键作用,它在计算和近似采样中的概率分布方面发挥着重要作用。而像DPM-Solver这样的新技术则进一步缩短了每个步骤的持续时间。

image.png

具体来说,像DPM fast、DPM++ 2S或DPM++ 2M这样的模型都实现了更快的求解器,从而大大节省了采样过程的时间。

推荐常用采样器

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 要低一些

@版权声明:部分内容从网络收集整理,如有侵权,请联系删除!

相关文章