在噪声中“生长”:扩散生成模型(Diffusion Models),score-based models,基于评分的生成模型

一切智能体都在“噪声”中生长,甚至依赖“噪声”滋养 ,它们不是上帝,不可能在虚无中创造—— David 9

1970年,心理学家Richard Warren和他的同事研究了音素恢复在人类语言中的案例。

以“legislatures”这个单词的完整发音为例,是下图第一行的音频,如果在这段音频中切离一部分音频,替换成毫无声音的静音(第二行)音频,或替换成宽音域的噪声(第三行)音频,人类恢复声音的能力是不一样的。对于第三行的宽域噪声,人们可以很好地脑补完整的“legislatures”单词,而对于完全的静音,人们则难以“脑补”整个单词。

这从侧面展示噪声对智能体的作用往往被低估了,智能体善于从噪声中过滤和还原信息,而不是从虚无中。智能体善于快速地“做选择题”。

现在,借助郎之万动力学采样法扩散生成模型(Diffusion Models) 已经可以生成高像素的人造图像,其多样性也超越了传统GAN。

其核心思想正是从噪声中一步一步还原出新图像:

而与我们 继续阅读在噪声中“生长”:扩散生成模型(Diffusion Models),score-based models,基于评分的生成模型

重新认识ELBO,对“后验失效”(posterior collapse)问题的新理解,探索VAE,pPCA和贝叶斯模型世界

有时一件事做的不够好,不是准备的不够好,只是因为我们不够“聪明”。 —— David 9

神经网络一个有意思的地方是,它的信息容量总是比要处理的问题大,它的复杂度往往是“过剩”的。但是其他传统模型,包括今天聊的贝叶斯概率模型世界,复杂度就不能简单地用“加深层数”和“跳层连接”实现,这些模型,增加模型复杂度就要用其他“聪明”些的方式。

在贝叶斯模型世界(如VAEpPCA),所担心的不是神经网络的梯度消失”或“梯度爆炸,而是“后验失效”(posterior collapse)现象。本质上,任何模型(传统或非传统)都要从每个新样本“汲取信息”,更新自身。当信息无法汲取并用来更新模型,就会出现上述问题。

不同的是,GAN(或神经网络)信息传递是内部“混沌”的,VAE的信息传递在内部总要映射到一个假想的隐变量z的分布上(常见高斯分布)

VAE与GAN结构比较

即,GAN训练的是如何生成一个样本,而VAE训练的是如何生成一个分布(这个分布可以生成样本)。

VAE的变分推断中,直接计算数据x的相似度边际分布log p(x) 非常困难,但是可以用变分分布q(z|x)去估计后验(实际上变分分布就是VAE的编码器encoder),这就引出了VAE的目标函数ELBO,即the Evidence Lower Bound

log p(x)一定是大于ELBO的,那么让ELBO最大就是VAE的最终解了:ELBO的广泛使用使得“后验失效”(posterior collapse)现象的根源看似就是ELBO目标函数。 继续阅读重新认识ELBO,对“后验失效”(posterior collapse)问题的新理解,探索VAE,pPCA和贝叶斯模型世界

GAN和VAE都out了?理解基于流的生成模型(flow-based): Glow,RealNVP和NICE,David 9的挖坑贴

生成模型一直以来让人沉醉,不仅因为支持许多有意思的应用落地,而且模型超预期的创造力总是让许多学者和厂商得以“秀肌肉”:

OpenAI Glow模型生成样本样例,在隐空间控制图像渐变

了解基于流的生成模型(flow-based)前,先回顾目前主流的两类生成模型GAN和VAE,David 9文章早已介绍过

VAE与GAN结构比较

GAN简单粗暴,用两个深度网络(判别器D和生成器G)交替学习使得生成器G可以模拟现实生成样本,但是缺陷也是明显的:GAN不能直接了当地给出一个样本的隐分布的表征(你可以生成一个明星,但是你无法马上生成一个“微笑的”或“年轻的”明星),即,你很难用隐变量随意操纵生成的样本,你只知道生成的是任意样本(除非你重新设计GAN,像我们以前谈到的cGAN或者FaderNetworks等等。。)

VAE思路就完全不同,它继承了古老的贝叶斯理论,相信一切的创造可以用抽样后验概率来缔造。

你想创造新样本?好的,但是真实分布空间X 太复杂了,我们先意淫一个后验空间Z吧: 继续阅读GAN和VAE都out了?理解基于流的生成模型(flow-based): Glow,RealNVP和NICE,David 9的挖坑贴