StableDiffusion内功修炼(1) | CFG与采样步数
StableDiffusion内功修炼(1) | CFG与采样步数
什么是CFG
CFG 用来衡量提示词对生成结果的影响程度,在我们使用stable diffusion过程中,是一个参数的形式呈现。
那具体怎么理解这个呢?可以说CFG值越高,生成的图像就会跟我们的提示词越来越接近。
那是不是越高越好呢?
答案是否定的,当采样值超过某个特定值的时候,就会出现以下情况:
颜色饱和度随着 CFG 的增加而增加
对比度随着 CFG 的增加而增加
高于某个 CFG 值时,输出图像变得模糊,导致细节丢失
这是因为模型过于强调提示词的特征,导致生成的图像过于突出这些特征,失去了一些细腻和自然的表现。所以我们设置参数的时候,选择一个合适的值非常重要。
不同的采样模型都有一个合适的大小,可以参考这篇文章设置:
Stable Diffusion采样方法最优步数整理:https://www.aizwz.com/archives/1715170098753
什么是采样
我们理解SD生成图像的过程分为两个步骤:前向扩散,后向去噪
前向过程不断的向lantent space增加噪声,后向利用采样器不断的去掉噪声的过程
预测噪声,再减去噪声后生成一个新图像的过程,成为采样,不断的增加步数,就是不断循环这个采样步骤的过程,通常情况下,步数越大,生成的细节也就越多。
不同的采样器采用的不同的算法,会导致最后收敛性的不同。
采样方法很多,对于常用的我们大致可以归类为两种
概率模型,例如 DDPM、DDIM、PLMS 以及 DPM 系列模型
数值方法,例如 Euler、Heun和 LMS
对于采样器的介绍,依旧可以看这篇内容:https://www.aizwz.com/archives/1715170098753
我们在使用过程中应该采用什么采样器和采样步数呢?
一方面可以根据经验使用我们常用的采样器和步数。
另一方面对于一个新的checkpoint可以看作者的推荐,然后再不断测试参数,最终获得效果。