欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 详解Stable Diffusion 原理图

详解Stable Diffusion 原理图

2024/11/30 12:54:27 来源:https://blog.csdn.net/u010087338/article/details/140557536  浏览:    关键词:详解Stable Diffusion 原理图

参考英文文献:The Illustrated Stable Diffusion – Jay Alammar – Visualizing machine learning one concept at a time.

 

 

在这个Stable Diffusion模型的架构图中,VAE(变分自编码器)模型对应的是图中的 E 和 D 部分。

具体来说:

  1. E(Encoder): 这是VAE的编码器部分。它接收输入图像 x0,并将其编码为潜在空间表示 z0。
  2. D(Decoder): 这是VAE的解码器部分。它接收潜在空间表示 z0,并将其解码回图像空间,重构出输入图像。

在Stable Diffusion的工作流程中:

  • 训练阶段,VAE用于将高维图像数据压缩到低维潜在空间。
  • 生成阶段,扩散模型在这个低维潜在空间中工作,生成新的潜在表示。
  • 最后,VAE的解码器 D 用于将生成的潜在表示转换回可视化的图像。

τ_θ(tau theta)通常是指文本编码器,它用于将输入的文本提示编码成模型可以理解的向量表示。

  • CLIP(Contrastive Language-Image Pre-training)是由 OpenAI 开发的模型,用于连接文本和图像。
  • 在 Stable Diffusion 中,CLIP 的文本编码器部分被用作 τ_θ(tau theta),即用来将文本提示转换为模型可理解的向量表示。

  • UNet的作用:
    • UNet是一个神经网络模型,专门用于预测和去除图像中的噪声。
    • 在每个步骤中,UNet接收当前的噪声图像,并预测应该去除多少噪声。
  • Scheduler的作用:
    • Scheduler控制整个去噪过程的节奏和强度。
    • 它决定在每个步骤中应该去除多少噪声,以及如何调整这个过程。
  • 配合过程: a. 初始化:从完全随机的噪声开始。 b. 迭代过程(重复50次):
    • UNet分析当前的噪声图像,预测应该去除的噪声。
    • Scheduler根据当前步骤和UNet的预测,计算实际应该去除的噪声量。
    • 将计算出的噪声从当前图像中减去,得到稍微清晰一点的图像。
    c. 逐步优化:
    • 在早期步骤,Scheduler可能会让UNet去除较多噪声,以快速形成图像的大致轮廓。
    • 在后期步骤,Scheduler可能会减缓去噪速度,让UNet更专注于细节的优化。
  • 文本引导:
    • 文本编码的信息会输入到UNet中,影响它对噪声的预测。
    • 这使得去噪过程能够朝着符合文本描述的方向进行。
  • 适应性调整:
    • Scheduler可以根据去噪的进展动态调整过程,确保生成的图像既符合文本描述,又保持高质量。

这个过程是逐步进行的。每一步都添加了更多相关信息。为了直观地了解这个过程,我们可以检查随机潜变量数组,看看它是如何转化为视觉噪音的。在这种情况下,视觉检查是通过图像解码器进行的。

扩散发生在多个步骤中,每个步骤在一个输入潜变量数组上操作,并生成另一个潜变量数组,更好地反映输入文本以及模型从训练中捕获的所有图像信息。


 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com