【AI学习】Lilian Weng:What are Diffusion Models?

读OpenAI 的 Lilian Weng博客《What are Diffusion Models?》

文章链接:https://lilianweng.github.io/posts/2021-07-11-diffusion-models/

通过浏览器的在线翻译,直接截图了。翻译的有些问题,但是基本能大概看明白了。

我只是个人的记录,大家如果觉得有益,也可以大概看看:)

以下是文章内容:

到目前为止,我已经写了三种类型的生成模型,GAN、VAE 和基于 Flow 的模型。它们在生成高质量样本方面取得了巨大成功,但每个样本都有自己的一些局限性。由于其对抗性训练性质,GAN 模型以潜在的不稳定训练和世代多样性较低而闻名。VAE 依赖于代理损失。流模型必须使用专门的架构来构建可逆转换。

扩散模型受到非平衡热力学的启发。他们定义了扩散步骤的马尔可夫链,以缓慢地向数据中添加随机噪声,然后学习反转扩散过程以从噪声中构建所需的数据样本。与 VAE 或流动模型不同,扩散模型是通过固定程序学习的,并且潜在变量具有高维数(与原始数据相同)。

图 1.不同类型的生成模型概述

什么是扩散模型?

已经提出了几种基于扩散的生成模型,其下有类似的想法,包括扩散概率模型(Sohl-Dickstein et al., 2015)、噪声调节评分网络(NCSN;Yang & Ermon,2019 年)和去噪扩散概率模型(DDPM;Ho 等人,2020 年)。

前向扩散过程

(翻译校正:步长由方差计划表控制

随着步长t变大,数据样本逐渐失去可分辨的特征。)

与随机梯度 Langevin 动力学的联系

反向扩散过程

(这里不理解,为什么反向也是高斯过程)

值得注意的是,当基于条件x0时,反向条件概率是可处理的:




训练损失的Lt参数化


与噪声调节评分网络 (NCSN) 的连接

(没看懂,这段的具体含义)

参数化β

反向过程方差的参数化

条件生成

在使用条件信息(如 ImageNet 数据集)在图像上训练生成模型时,通常会生成以类标签或一段描述性文本为条件的样本。

分类器引导扩散


无分类器指南

加速扩散模型








潜在变量空间

潜在扩散模型 (LDM;Rombach & Blattmann等人,2022年)在潜在空间而不是像素空间中运行扩散过程,从而降低训练成本并加快推理速度。其动机是图像的大部分位都有助于感知细节,并且在激进压缩后语义和概念构成仍然存在。LDM 通过生成建模学习松散地分解了感知压缩和语义压缩,首先用自动编码器修剪掉像素级冗余,然后在学习到的潜在物上用扩散过程操纵/生成语义概念。

放大生成分辨率和质量




模型架构

扩散模型有两种常见的主干架构选择: U-Net 和 Transformer 。
U-Net (Ronneberger et al. 2015) 由一个下采样堆栈和一个上采样堆栈组成。


Diffusion Transformer(DiT ;Peebles & Xie, 2023)的扩散建模对 latent patches进行操作,使用 LDM(潜在扩散模型)的相同设计空间。DiT 具有以下设置:

快速总结

优点: 可处理性和灵活性是生成建模中的两个相互冲突的目标。可处理的模型可以进行分析评估并廉价地拟合数据(例如,通过高斯或拉普拉斯),但它们不能轻易地描述丰富的数据集中的结构。灵活的模型可以拟合数据中的任意结构,但从这些模型中进行评估、训练或采样通常很昂贵。扩散模型在分析上既易于处理又灵活

缺点:扩散模型依赖于扩散步骤的长马尔可夫链来生成样本,因此在时间和计算方面可能非常昂贵。已经提出了新的方法来使该过程更快,但采样仍然比 GAN 慢。

相关推荐
Komorebi.py20 分钟前
【Linux】-学习笔记05
linux·笔记·学习
不去幼儿园23 分钟前
【MARL】深入理解多智能体近端策略优化(MAPPO)算法与调参
人工智能·python·算法·机器学习·强化学习
想成为高手49929 分钟前
生成式AI在教育技术中的应用:变革与创新
人工智能·aigc
YSGZJJ1 小时前
股指期货的套保策略如何精准选择和规避风险?
人工智能·区块链
无脑敲代码,bug漫天飞1 小时前
COR 损失函数
人工智能·机器学习
HPC_fac130520678162 小时前
以科学计算为切入点:剖析英伟达服务器过热难题
服务器·人工智能·深度学习·机器学习·计算机视觉·数据挖掘·gpu算力
小陈phd5 小时前
OpenCV从入门到精通实战(九)——基于dlib的疲劳监测 ear计算
人工智能·opencv·计算机视觉
Guofu_Liao6 小时前
大语言模型---LoRA简介;LoRA的优势;LoRA训练步骤;总结
人工智能·语言模型·自然语言处理·矩阵·llama
朝九晚五ฺ8 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
秀儿还能再秀9 小时前
神经网络(系统性学习三):多层感知机(MLP)
神经网络·学习笔记·mlp·多层感知机