扩散模型背后的数学太难,谷歌发论文带路

90622b7a0fec3de1f709c2f32d38dd46.jpeg

源 | 机器之心

扩散模型背后的数学可是难倒了一批人。

最近一段时间,AI 作画可谓是火的一塌糊涂。

在你惊叹 AI 绘画能力的同时,可能还不知道的是,扩散模型在其中起了大作用。就拿热门模型 OpenAI 的 DALL·E 2 来说,只需输入简单的文本(prompt),它就可以生成多张 1024*1024 的高清图像。

在 DALL·E 2 公布没多久,谷歌随后发布了 Imagen,这是一个文本到图像的 AI 模型,它能够通过给定的文本描述生成该场景下逼真的图像。

就在前几天,Stability.Ai 公开发布文本生成图像模型 Stable Diffusion 的最新版本,其生成的图像达到商用级别。

自 2020 年谷歌发布 DDPM 以来,扩散模型就逐渐成为生成领域的一个新热点。之后 OpenAI 推出 GLIDE、ADM-G 模型等,都让扩散模型火出圈。

很多研究者认为,基于扩散模型的文本图像生成模型不但参数量小,生成的图像质量却更高,大有要取代 GAN 的势头。

不过,扩散模型背后的数学公式让许多研究者望而却步,众多研究者认为,其比 VAE、GAN 要难理解得多。

近日,来自 Google Research 的研究者撰文《 Understanding Diffusion Models: A Unified Perspective 》,本文以极其详细的方式展示了扩散模型背后的数学原理,目的是让其他研究者可以跟随并了解扩散模型是什么以及它们是如何工作的。

7b9879cecf36e3efde6308f25ce41c34.png

论文地址:
https://arxiv.org/abs/2208.11970

至于这篇论文有多「数学」,论文作者是这样描述的:我们以及其令人痛苦的细节(excruciating detail)展示了这些模型背后的数学。

论文共分为 6 部分,主要包括生成模型;ELBO、VAE 和分级 VAE;变分扩散模型;基于分数的生成模型等。

b9f54ac786597c9d5fe67c7deed890da.png

以下摘取了论文部分内容进行介绍:

18fd4ba56bcf6f74a0296082895817a0.png生成模型4ff6e4514ae16dfaafa99eea2123d1fc.png

给定分布中的观察样本 x,生成模型的目标是学习为其真实数据分布 p(x) 进行建模。模型学习完之后,我们就可以生成新的样本。此外,在某些形式下,我们也可以使用学习模型来进行评估观察或对数据进行采样。

当前研究文献中,有几个重要方向,本文只在高层次上简要介绍,主要包括:GAN,其对复杂分布的采样过程进行建模,该过程以对抗方式学习。生成模型,我们也可称之为「基于似然,likelihood-based」的方法,这类模型可以将高似然分配给观察到的数据样本,通常包括自回归、归一化流、VAE。基于能量的建模,在这种方法中,分布被学习为任意灵活的能量函数,然后被归一化。在基于分数的生成模型中,其没有学习对能量函数本身进行建模,而是将基于能量模型的分数学习为神经网络。

在这项研究中,本文探索和回顾了扩散模型,正如文中展示的那样,它们具有基于可能性和基于分数的解释。

4ce5978dfe460391c18420c07a425f68.png变分扩散模型4add0deab278457cc2fa72a8e202d552.png

以简单的方式来看,一个变分扩散模型(Variational Diffusion Model, VDM)可以被考虑作为具有三个主要限制(或假设)的马尔可夫分层变分自编码器(MHVAE),它们分别为:

  • 潜在维度完全等同于数据维度;

  • 每个时间步上潜在编码器的结构没有被学到,它被预定义为线性高斯模型。换言之,它是以之前时间步的输出为中心的高斯分布;

  • 潜在编码器的高斯参数随时间变化,过程中最终时间步 T 的潜在分布标是准高斯分布。

5f513b9cb0535843dd13a26ffcbff614.png
▲变分扩散模型的视觉展示图。

此外,研究者明确维护了来自标准马尔可夫分层变分自编码器的分层转换之间的马尔可夫属性。他们对以上三个主要假设的含义一一做了扩展。

从第一个假设开始,由于符号的滥用,现在可以将真实数据样本和潜在变量表示为 x_t,其中 t=0 表示真实样本数据,t ∈ [1, T] 表示相应的潜在变量,它的层级结构由 t 进行索引。VDM 后验与 MHVAE 后验相同,但现在可以重写为如下:

d2f5ffd4149a8f1e87b60257085bf5c4.png

从第二个假设,已知的是编码器中每个潜在变量的分布都是以之前分层潜在变量为中心的高斯分布。与 MHVAE 不同的是,编码器在每个时间步上的结构没有被学到,它被固定为一个线性高斯模型,其中均值和标准差都可以预先设置为超参数或者作为参数学得。在数学上,编码器转换表示为如下:

0f8f0f425c7eefcbaa940865d8d28111.png

对第三个假设,α_t 根据固定或可学得的 schedule 而随时间演化,使得最终潜在变量 p(x_T) 的分布为标准高斯分布。然后可以更新 MHVAE 的联合分布,将 VDM 的联合分布写为如下:

12ad89ad1c61628084ec438902aff4b5.png

总的来说,这一系列假设描述了一个图像随时间演化的稳定噪声。研究者通过添加高斯噪声渐进地破坏图像,直到最终变得与高斯噪声完全相同。

与任何 HVAE 相似的是,VDM 可以通过最大化证据下界(Evidence Lower Bound, ELBO)来优化,可以推导如下:

eae12437233ce8fb4e3ce5af291b5c64.png

ELBO 的解释过程如下图 4 所示:

829c82482f8a2a34108acedf431da813.png

三种等价的解释

正如之前证明的,一个变分扩散模型可以简单地通过学习神经网络来训练,以从任意噪声版本 x_t 及其时间索引 t 中预测原始自然图像 x_0。但是,x_0 有两个等价的参数化,使得可以对 VDM 展开两种进一步的解释。

首先可以利用重参数化技巧。在推导 q(x_t|x_0) 的形式时,文中公式 69 可以被重新排列为如下:

9c6ea79ead8cd5850d2029812dd09eb5.png

将其带入之前推导出的真实去噪转换均值 µ_q(x_t, x_0),则可以重新推导如下:

4e67a5efd57ce5c1e0ce8aee7679f9a8.png

因此可以将近似去噪转换均值 µ_θ(x_t, t) 设置为如下:

7772aaa267c4a57fb9a7f05fd940448b.png

并且相应的优化问题变成如下:

c5dd52f3edb124a1477e106f6341de22.png

为了推导出变分扩散模型的三种常见解释,需要求助于 Tweedie 公式,它指的是当给定样本时,指数族分布的真实均值可以通过样本的最大似然估计(也称为经验均值)加上一些涉及估计分数的校正项来估计。

从数学上讲,对于一个高斯变量 z ∼ N (z; µ_z, Σ_z),Tweedie 公式表示如下:

c8b7806f295278783a12736fc1a88c5d.png

基于分数的生成模型

研究者已经表明,变分扩散模型可以简单地通过优化一个神经网络 s_θ(x_t, t) 来学得,以预测一个得分函数∇ log p(x_t)。但是,推导中的得分项来自 Tweedie 公式的应用。这并不一定为解读得分函数究竟是什么或者它为什么值得建模提供好的直觉或洞见。

好在可以借助另一类生成模型,即基于分数的生成模型,来获得这种直觉。研究者的确证明了之前推导出的 VDM 公式具有等价的基于分数的生成建模公式,使得可以在这两种解释之间灵活切换。

为了理解为什么优化一个得分函数是有意义的,研究者重新审视了基于能量的模型。任意灵活的概率分布可以写成如下形式:

eb04fcb9f5869f9bbd92e96f9401a4f0.png

避免计算或建模归一化常数的一种方式是使用神经网络 s_θ(x) 来学习分布 p(x) 的得分函数∇ log p(x)。这是观察到了公式 152 两边可以进行对数求导:

bcbac0a7872f96cb3e879817889c3d92.png

它可以自由地表示为神经网络,不涉及任何归一化常数。通过利用真值得分函数最小化 Fisher 散度,可以优化得分函数。

a68039b27aef6d7ad2ea52c134538659.png

直观地讲,得分函数在数据 x 所在的整个空间上定义了一个向量场,并指向模型,具体如下图 6 所示。

20d5dacbb642af427aed8168a8966ee1.png

最终,研究者从训练目标和抽样过程两方面,建立了变分扩散模型和基于分数的生成模型之间的显式关联。

更多细节内容请参阅原论文。

6e168d905e6ed150a9a556c58b34efad.jpeg后台回复关键词【入群

加入卖萌屋NLP、CV、搜推广与求职讨论群

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/476969.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

程序员面试金典 - 面试题 04.05. 合法二叉搜索树(中序遍历)

1. 题目 实现一个函数,检查一棵二叉树是否为二叉搜索树。 示例 1: 输入:2/ \1 3 输出: true示例 2: 输入:5/ \1 4/ \3 6 输出: false 解释: 输入为: [5,1,4,null,null,3,6]。根节点的值为 5 ,但是其右子节点值为 4 。2. 解题 该题要求严格&…

2 MyWarCraftStudio v0.6版

MyWarCraftStudio v0.6版,可以查看Wow的BLP2、M2、WMO、WDL、ADT、DBC格式的文件 如题。平民程序2005.03.11放出。大家可去平民程序下载:http://blog.gameres.com/show.asp?BlogID144&column0// --- 这个Blog作者不再更新了,如果下载不了&#xff0…

我是如何从头开始写一篇顶级论文的

文 | 重剑无锋知乎源 | 极市平台关于一篇顶会论文是如何产生的这件事—且看作者为你娓娓道来,如何从一形成routine的日常科研生活中挖掘到巧妙的产出。最近完成了一篇很满意的论文,不仅整个过程愉快,回味无穷,而且真正做到了“学术…

程序员面试金典 - 面试题 05.06. 整数转换(位运算)

1. 题目 整数转换。编写一个函数,确定需要改变几个位才能将整数A转成整数B。 示例1:输入:A 29 (或者0b11101), B 15(或者0b01111)输出:2示例2:输入:A 1,B 2输出&am…

论文模型构建的步骤_【论文分享】AiR:具有推理能力的注意力模型框架

大家好,今天我们分享一篇来自于ECCV 2020的论文《AiR: Attention with Reasoning Capability》。这篇论文主要研究的是在视觉推理过程中,人和机器的注意力在时域上的渐进变化。论文代码​github.com一. 论文的动机现有的工作在视觉任务中,例如…

第一次Blog

没有经验请多关照转载于:https://www.cnblogs.com/oiramario/archive/2005/10/18/257414.html

这可能是中国最穷的211大学!连研究生奖学金都发不起了....

源 | 募格学术万万没想到曾经因为“穷”而登上了微博热搜榜的西北大学。最近又因为“没钱”惹的祸而闯上了风口浪尖....近日,西北大学因研究生奖学金发放问题引发关注。起因是临近开学,西北大学通知调整奖学金发放政策,不仅取消了考研新生的奖…

LintCode 1862. 给树浇水的时间(图的遍历)

1. 题目 有一棵n个节点的树,节点编号是0至 n−1,其中 0号节点是根节点,i号节点的父亲节点是father[i] 。 现在要对树浇水,把水撒到根节点上,水会顺着每一条边流下去,从 i 号节点的父亲流到 i 号节点需要 …

potainer 日志_日志系统落地:制定日志规范

我们的系统,已经接入阿里云的日志服务很长一段时间了,存了数以TB级别的日志,突然有一天,领导说,我们需要所有订单的ip信息用于审计订单的真实性,突然发现日志系统无法一次性查找到我所有需要的信息&#xf…

软件项目管理的质量保证

软件工程项目管理是一个系统工程,软件工程项目管理的主要目标是保证项目在规定时间内高质量地完成。项目管理包括了项目组开发各阶段的人员结构的配置,质量控制的实施方略,内部文档和产品文档的组织编写等多项工作,其中质量控制方…

8 月份 Github 上最火的10篇 AI 论文!

文 | 天于刀刀不晓得各位同学在看论文的时候最关注的是什么?也许是论文的创新点,或是被引用的数量,还是...是不是自带代码!重要的事说三遍!复现,复现,还是复现!(ーー゛)为了方便各位…

LintCode 1859. 最小振幅(排序)

1. 题目 给定一个由 N 个整数组成的数组 A,一次移动,我们可以选择此数组中的任何元素并将其替换为任何值。 数组的振幅是数组A中的最大值和最小值之间的差。 返回通过执行最多三次替换之后数组A的最小振幅 示例 1 输入: A [-9, 8, -1] 输出: 0 解释&a…

小程序 webview 分享_新的一周,分享15个好玩的小程序

文/阿C 一周进步签约作者自小程序推出以来,由于其相对比APP而言,具有方便、轻巧、即用即走、不占内存的特性,受到广大追求效率(内存不足)星人的喜爱。不过随着小程序的发展,市面上的小程序开始有些滥竽充数、页面难看同时又极为无…

我的Blog不值钱

My blog is worth $0.00. How much is your blog worth? 呵呵,大家可以看看自己得Blogs值多少钱。转载于:https://www.cnblogs.com/Duiker/archive/2005/11/02/267011.html

中科大博士:我眼中的NLP最快学习路径

有人这样分类目前的人工智能:感知智能、运动智能、认知智能。在这三类智能里面,最复杂的也是人类所特有的认知智能,离不开自然语言处理技术的支持。虽然说自然语言的研究历史虽然还不是很长,但近些年在NLP知名核心企业&#xff08…

软件开发 thoughtworks 技术面_【软件开发】10月29日比赛详细预告

第三回软件开发专业比赛内容 软件需求分析与设计:需求识别、需求挖掘、评估、管理方法论以及业务、流程、场景的分析与建模等知识软件设计与开发;软件设计与开发:编程语言基础基础、数据库技术基础知识、程序开发技术、软件开发流程和工具使…

程序员面试金典 - 面试题 04.10. 检查子树(双重递归)

1. 题目 检查子树。你有两棵非常大的二叉树:T1,有几万个节点;T2,有几万个节点。 设计一个算法,判断 T2 是否为 T1 的子树。 如果 T1 有这么一个节点 n,其子树与 T2 一模一样,则 T2 为 T1 的子…

终于……我的游戏………简体版就要发布了!

喜讯!喜讯!!由软星科技(上海)有限公司研发、北京寰宇之星软件有限公司代理的《阿猫阿狗2》在广大玩家的引颈期盼中,即将在本月上市了! 美丽的田园生活温馨而宁静,淳朴的民风民情是每…

改了!教育部核准这所985高校更改简称!网友:华科大终于来了

源 | 募格学术到底叫“华中大”还是“华科大”?这个曾经无数次成为舆论焦点的难题终于有解了!8月31日,教育部网站发布《教育部关于同意华中科技大学章程部分条款修改的批复》、《教育部关于同意吉林大学章程部分条款修改的批复》、《教育部关…

deepfashion 深度学习_基于Alluxio加速混合云下的Intel Analytics Zoo开源深度学习平台...

本文描述了Alluxio如何在混合云环境中,加速oneAPI支撑的英特尔Analytics Zoo开源平台深度学习模型训练。本文会讨论有关新架构和工作流的细节,以及Alluxio的性能优势和基准测试结果。1.混合环境中的深度学习从架构演进到混合模式传统上,数据处…