(资料图)
最近网络上有很多AI生成的图片、视频,通过输入一段提示词(prompt)就能快速给生成精美的图片,通过文字或者图片,也能生成一段视频,看起来就像是神奇的魔法。通过SD和MJ生成图片,让我们都变成了提示词艺术家。
接下来,让我们一起看看这个魔法是如何产生的。Stable Diffusion使用一种潜在扩散模型(latent diffusion),基于深度学习的扩散模型使用神经网络迭代地添加然后去除图像等数据中的噪声,从而生成新的样本数据。如果你在SD里面生成过图片,你能明显看到预览框里面的图片是一点点的变清晰,这个就是在一步一步的增加新内容弄个和去除噪声的过程。
本质上,从干净的目标图像开始,并通过一系列步骤添加噪声 - 从图像向量的复杂高维空间进入“噪声”空间。然后,使用经过训练的神经网络“重建”图像,以从噪声向量返回到图像。当模型迭代地消除噪声时,它会学习图像的基本特征并学习如何“重建”图像,这就是生成方面发挥作用的地方。
添加和删除噪声的过程允许探索数据空间,并且噪声就像形式或正则化一样,防止模型过度拟合和泛化。重建或逆转噪声过程有助于模型生成类似的数据。
训练完成后,您可以从随机噪声开始,最终生成具有训练集特征的生成图像。
Stable Diffusion是一种潜在扩散模型。它主要在低维空间中运行,将图像压缩成更小的低维表示(称为潜在空间)。当您处理数据的简化版本时,这可以提高效率和速度。这也就是我们通常生成图片时会先使用低分辨率,当生产的图片整体构图符合要求时,我们可以再开启高分辨率修复和其他的一些参数。
从文本提示(prompt)开始,将文本提示使用基于 Transformer 的编码器转换为高维编码。该编码器将一系列输入标记映射到一系列潜在文本向量(embedding),然后使用这些向量来调节潜在空间以生成图像。
然后,这些向量(embedding)用于调节器里,进而在潜在空间里面去发生作用。调节器的作用是引导噪声预测器,使其能够预测出合适的噪声,以便从图像中减去后,生成的图像朝着想要的方向演变。
当我们在低维空间中操作时,也就允许根据文本提示进行定制生成图片了。
上面的描述是对扩散模型过程的过度简化,并且该过程有更多细节,没有说的很详细,但希望能够帮助你对文本提示转换为漂亮图像的过程有一个较好的理解