论文阅读_扩散模型_DDPM

英文名称: Denoising Diffusion Probabilistic Models
中文名称: 去噪扩散概率模型
论文地址: http://arxiv.org/abs/2006.11239
代码地址1: https://github.com/hojonathanho/diffusion (论文对应代码 tensorflow)
代码地址2: https://github.com/AUTOMATIC1111/stable-diffusion-webui stable-diffusion-webui/modules/models/diffusion/ddpm_edit.py (推荐 pytorch)
时间: 2020-12-16
作者: Jonathan Ho, 加州大学伯克利分校
引用量: 3286

读后感

论文优化了扩散模型的具体实现,并证明了扩散模型可生成高质量的图像。具体方法是结合扩散概率模型和朗之万动力学去噪的加权变分训练模型。

学习路径

论文中公式很多,有些依赖DM论文,VAE论文,还有跳步,虽然方法部分不长,但是很难读明白。至今看到最好的解读是:

方法

扩散模型

扩散模型由加噪 q 和去噪 p 两部分组成,如图-2所示,先从右往左看下边部分加噪q,x0是原始图像,经过T步逐渐加噪变为纯高斯噪声XT(时间步常设为 T=1000),其中每一步的图像xt根据上一步的xt-1通过加少量高斯噪声得到;再看上边部分去噪pθ,它是q的逆过程,每一步通过xt得到xt-1,最终还原图像x0,p由神经网络实现,θ 是神经网络参数,最后得到的深度学习模型就是可用噪声生成真实图像的网络。

每个时间步加噪力度不同,这里 用 β 控制加噪的力度:
0<\beta_1<\beta_2<...<\beta_T<1
也就是说加噪的力度越来越大,这也很容易理解,加噪过程中先从小的噪声加起,在恢复图像的逆过程中,去噪越来越精细。加噪到了第T步时,图像就变成了纯噪声。

加噪过程 q 的每一步依赖上一步的图片:
q\left(\mathbf{x}_{t} \mid \mathbf{x}_{t-1}\right)=\mathcal{N}\left(\mathbf{x}_{t} ; \sqrt{1-\beta_{t}} \mathbf{x}_{t-1}, \beta_{t} \mathbf{I}\right)
加入高斯噪声N。它的两个参数分别是均值(根据前一时间步Xt-1的图像)和方差(小的噪声BtI)。
向后去噪的过程定义为p,理论上使用它可还原原始图像,但它相对难以实现。
p_{\theta}(x_t|x_{t-1})
这里的 θ 是待学习的神经网络权重。假设这个反向过程也是高斯的,也需要均值和方差。
p_\theta (\mathbf{x}_{t-1} | \mathbf{x}_t) = \mathcal{N}(\mathbf{x}_{t-1}; \mu_\theta(\mathbf{x}_{t},t), \Sigma_\theta (\mathbf{x}_{t},t))
也就是说,这里需要对均值、方差建模,求取网络权重 θ,且模型是和时间步t相关的,具体操作时通过位置嵌入将 t 编码到输入数据中。DDPM论文中建议只对均值建模,将方差设为常数,这样更简单一些。

目标函数

损失函数定义为,所有时间步损失之和:
L=L_0+L_1+...+L_T
其中每个时间步(除了第0个时间步是原图)以外,计算的都是正向反向两个高斯分布的KL散度。

简化计算加噪过程

由于高斯分布的积累也是高斯分布,所以在加噪过程中,可以直接计算出第t步的数据,从而简化从0-t的多步计算,这里又引入了一个变量 α:
\alpha_t := 1 - \beta_t\ and\ \bar{\alpha}_t := \Pi_{s=1}^{t} \alpha_s
两个α可视为β的函数,可以提前计算出来。使得由x0直接计算出xt,而不用逐步迭代。
q(\mathbf{x}_t | \mathbf{x}_0) = \cal{N}(\mathbf{x}_t; \sqrt{\bar{\alpha}_t} \mathbf{x}_0, (1- \bar{\alpha}_t) \mathbf{I})

用预测噪声代替预测均值

另一个优化是:通过重新参数化高斯分布的均值,让神经网络从一个均值预测器变成了噪声预测器,即:让神经网络学习对图片的附加噪声建模(这里只考虑高斯分布的均值建模,先不考虑方差)。实验证明,该方法效果更好。经过数学推导,均值与噪声关系如下:
\mu_{\theta}\left(\mathbf{x}_{t}, t\right)=\frac{1}{\sqrt{\alpha_{t}}}\left(\mathbf{x}_{t}-\frac{\beta_{t}}{\sqrt{1-\bar{\alpha}_{t}}} \epsilon_{\theta}\left(\mathbf{x}_{t}, t\right)\right)
第t步损失函数Lt如下:
\| \mathbf{\epsilon} - \mathbf{\epsilon}_\theta(\mathbf{x}_t, t) \|^2 = \| \mathbf{\epsilon} - \mathbf{\epsilon}_\theta( \sqrt{\bar{\alpha}_t} \mathbf{x}_0 + \sqrt{(1- \bar{\alpha}_t) } \mathbf{\epsilon}, t) \|^2.
其中 ϵ 是在时间步 t 采样的噪声,εθ 是神经网络。

算法

最终求的是误差网络e的权重参数θ。

在训练过程中:

  • 抽取样本图片x0
  • 随机抽取时间步t
  • 采样高斯噪声ϵ,使用该噪声和时间步t生成第t步的加噪图像
  • 训练神经网络基于加噪图像xt和该步βt来预测噪声

在推理过程中:

  • 取一个高斯噪声做为XT图片
  • 通过T步对其进行去噪
  • 随机取z作为高斯噪声的方差参数
  • 代入上述公式,利用神经网络预测的 ϵ 为第t步图片去噪,从而得到第t-1步图片
  • 最终还原原始图片
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,753评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,668评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,090评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,010评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,054评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,806评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,484评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,380评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,873评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,021评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,158评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,838评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,499评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,044评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,159评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,449评论 3 374
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,136评论 2 356

推荐阅读更多精彩内容