当前位置:   article > 正文

深度学习(7)---Diffusion Model概念讲解_diffusion model 文本标签

diffusion model 文本标签


一、基本概括

1.1 概念讲解

 1. Diffusion Model是一种生成模型,通过连续添加高斯噪声来破坏训练数据,然后学习反转的去噪过程来恢复数据。它分为正向的扩散过程和反向的逆扩散过程。正向扩散过程是往图片上加噪声的过程,即从无到有地添加噪声,直到得到纯噪声图片。反向扩散过程则是通过学习如何从噪声图片恢复到原始图片。

 2. 正向过程:首先,对于一张原始图片 X 0 X_0 X0,我们给 X 0 X_0 X0 图片添加高斯噪声,图片由 X 0 X_0 X0 变为 X 1 X_1 X1。接着我们会在 X 1 X_1 X1 的基础上再添加高斯噪声得到 X 2 X_2 X2。重复上述添加高斯噪声步骤,直到图片变成 X n X_n Xn。由于添加了足够多的高斯噪声,现在的 X n X_n Xn 近似服从高斯分布(又称正态分布)。
注意:(1) 这里必须要加高斯噪声,因为高斯噪声服从高斯分布,后面的一些运算需要用到高斯分布的一些特性。(2) 每步添加高斯噪声的量是变化的,且后一步比前一步添加的高斯噪声更多。

在这里插入图片描述

 3. 逆向过程:首先,我们会随机生成一个服从高斯分布的噪声图片,然后一步一步的减少噪声直到生成预期图片。

在这里插入图片描述

1.2 Denoise模块

 去噪过程不是说由一张图片生成另一张图片,而是在一张高噪声图片的基础上,减掉一个噪声图片从而得到另一张低噪声图片。

在这里插入图片描述

在这里插入图片描述

二、Stable Diffusion

2.1 概念讲解

 1. 通过上面所述我们可得:当扩散步数和图像很大时,这种纯扩散模型会非常慢。为了解决这个问题,Stable Diffusion 应运而生。Stable Diffusion是一个文本到图像的潜在扩散模型。顾名思义,Stable Diffusion 发生在潜在空间中,这就是它比纯扩散模型更快的原因。

 2. Stable Diffusion第一步会将文本转换成向量;第二步会产生一个随机潜在噪声作为输入和文本转换后的向量产生一个 “中间产物”;第三步通过 “中间产物” 还原成原始图片。通常三个模块分开训练,最后组合在一起。

在这里插入图片描述

 论文中的Stable Diffusion结构图如下图所示:

在这里插入图片描述

 3. 如下图谷歌的由文本生成图片的模型也是大同小异。

在这里插入图片描述

 4. 第三步处理的 “中间产物” 可以是小图,也可以是图像潜在表示。

在这里插入图片描述

在这里插入图片描述

 5. Stable Diffusion第二步生成 “中间产物” 过程类似于Diffusion Model中Noise Predicter产生 “中间产物” 的过程。

在这里插入图片描述

在这里插入图片描述

2.2 FID

 在扩散模型中,FID(Frechet Inception Distance)是一种用于评估生成图像质量的度量标准。它衡量的是生成图像与真实图像之间的距离,其值越小代表生成的图像质量越高。FID的计算方法包括提取真实图像和生成图像的特征向量,并计算二者的Frechet距离。

在这里插入图片描述

2.3 CLIP

 CLIP(Contrastive Language–Image Pre-training)是一种多模态学习框架,旨在将语言和图像信息结合起来进行预训练。CLIP通过对比图像和文本的embedding来衡量两者之间的相似性,从而实现了对图像和文本的匹配。在扩散模型中,CLIP可以作为打通文本和图像的桥梁的核心模块,用于控制图像生成的过程。

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/220749
推荐阅读
相关标签
  

闽ICP备14008679号