赞
踩
雕像已经在大理石里边了,我只是把不要的部分凿掉。--米开朗基罗
将相同的Denoise model反复进行图像去噪过程,但是每一个步骤阶段输入的噪声图像之间差别很大。则如果每个不同阶段都使用完全相同的Denoise model或许表现不会很好。
解决方案是,设计Denoise时候,去噪过程中,输入元素不仅是该阶段的噪声影像,还同时输入当前图像的噪声覆盖严重程度指标(即当前是第几步骤)。Denoise model根据输入的噪声程度采取不同的去噪操作。
在训练预测噪声分布的时候是需要有Ground Truth来进行监督的,则需要首先制造Ground Truth标签来提供Noise Predictor训练。
经典Stable Diffusion框架由三个关键部件组成:Text Encoder文本编码器、Generation生成器、Decoder解码器。文本编码器将文本描述编码为向量嵌入;生成器则利用Diffusion model,输入一个噪声矩阵与文本编码输出一个“中间产物”,即高维度的编码影像;最后经过解码器来将编码影像解码输出生成的影像。通常三个模组是单独训练的,最后将其组合在一起。
文本编码器的大小会影响到模型生成图像的质量好坏。图中的FID值越小越好,CLIP Score值越大越好。由图中的实验结果可以看出,当文本编码器的参数量越大时,模型生成后的图像质量越高。
edges:
经研究之后,Generation中的Diffusion Model的大小对生成图像的质量影响非常小。上图的U-Net size表示Diffusion Model中的Noise Predictor的大小。
训练过程
生成过程
Decoder在训练时不需要影像配对的文本描述。
Generation输出为低分辨率影像时对Decoder训练的策略
Generation输出为潜在表征时对Decoder训练的策略
影像生成模型本质上的共同目标是在输入端有一个简单已知的概率分布,通常是高斯分布。从高斯分布中sample出一个向量z出来,输入到一个Network中G(z)=x,输出为一张影像x。就算输入是很简单的高斯分布sample,通过一个Network之后转换为一个非常复杂的影像x,该影像x应该与真实的影像分布越接近。
更常见的应用是给一段文本描述,根据描述来生成图形。这段文本描述称之为条件Condition,但是对应的影像是千变万化的,此时模型的目标是产生出的影像分布与真实影像的分布越接近越好。
最大似然估计(Maximum Likelihood Estimation,简称MLE)是统计学中一种用于估计概率分布参数的方法。MLE的目标是找到最大化似然函数的参数值,其中似然函数衡量观测数据与分布之间的拟合程度。
MLE的基本思想是找到使观测数据最有可能发生的参数值。这是通过计算在不同的参数值下获得观测数据的概率来实现的。为了进行MLE,需要根据对概率分布的假设定义似然函数。然后通过对参数求导并令导数等于零来最大化似然函数。这将得到一组方程,可以通过数值求解来获得参数估计值。
如何去衡量两个分布之间的距离,常用影像生成模型的衡量方法是最大似然估计。
在VAE中无法直接最大化P(x),通常真正最大化的是P(x)的下界。
当DDPM生成影像时,可以把过程想成生成了一个高斯分布的mean,如果与生成的完全相同,此时概率最大。(假设为高斯分布并不完全合理,且假设每个维度都是固定的,文献中的实验都证明将方差考虑进来并不会提升性能。假设输出为高斯分布因为对中间部分推导有益)
整个DDPM在生成某一幅影像的概率可以写成上式。对所有可能的做积分。
如何去最小化KL散度
猜想:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。