持续创作,加速生长!这是我参与「日新计划 10 月更文挑战」的第17天,点击查看活动详情

由于DALLE 2是基于CLIP和GLIDE模型写的,作者在写论文的时候弄得十分简略,所以直接看那篇论文或许并不会取得很多信息。今天先帮大家差异一下几个生成模型的差异


GAN

图像生成模型简介

图片来历:What are Diffusion Models? | Lil’Log (lilianweng.github.io)

GAN的话是有两部分的,需求练习两个网络:

  • 一个 生成器(generator)

    给定随机噪声,生成图片。

  • 一个鉴别器(discriminator)

    获取生成的图片,和实在图片进行比照,让判别器判别二者哪个是真的哪个是假的,其实是做一个二分类问题。

在GAN的原文中是这样来描述模型的: 便是说现在有两组人,一组人是差人,另一组人是造假币的。

造假币那个人要干什么呢?便是要做出假的钱呀,让假的钱和真的钱更为相似。但差人的效果便是不断的去识别出假钱来。这样造假币的人不断精进技能造假币,差人的识别技能也不断增进。可是在论文原中,作者是期望最后造假币的人能够胜利,造出以假乱真 让差人无法识别的假币。

差人便是discriminator,而造假币的便是generator。

现在咱们有一个生成一个x′x’。然后把生成的这个x′x’和原来的那个xx一同放入discriminator里,进行一个二分类。来判别哪一个是真的。

由于GAN的规划的意图便是以假乱真,所以它生成出来图片十分实在。由于它生成的图片保真度十分的高,所以为此特意美国公布了两条法则。

  • 第一个是不许拿GAN修改人脸去做涩图。

  • 第二个是不能运用政治人物的脸去说一些他没有说过的话,和做一些他没做过的工作。

GAN不光是生成的图片实在,而且经过这么多年对GAN的这个模型改造之后,现在也比较好用。练习GAN需求的数据也不是那么多,还能在各个场景底下运用,所以长处仍是很多的。但GAN也有它的丧命缺点:

  • GAN仍是练习不够安稳,最首要的原因是要同时去练习两个网络,这存在一个平衡性的问题,常常假如练习的欠好会导致模型坍塌。

  • 由于GAN的首要优化方针便是让这个图片尽或许的实在,可是它生成图片的这个多样性就不太好,它的多样性首要就来自于开端的随机噪声。

  • GAN不是概率模型,它的这个生成进程都是隐式的,是黑盒模型,它便是经过一个网络去完成的。所以你也无法知道网络内部究竟做了什么,你也不知道它学出来的东西遵循了什么散布,所以说这样的在数学上就不如VAE和分散模型这些数学模型优美。


AE

图像生成模型简介

图片来历:自己造的

AE模型便是auto-encoder,给定一个输入xx,经过一个编码器,咱们能够取得一个小很多的特征表明,称之为bottle neck(直译为瓶颈);之后咱们经过一个解码器生成图像x′x’,这个x′x’的意图是重建xx,也便是说让x′x’xx越相似越好,这儿优化方针用的便是一个重建损失。


VAE

图像生成模型简介

图片来历:What are Diffusion Models? | Lil’Log (lilianweng.github.io)

VAE和AE看起来差不多,可是其实差异很大,可是中心特征不再是bottle neck了,而是变成了一个散布。这样就让模型有了泛化能力,模型就能够拿去做生成了。在这儿优化方针就变成了去做一个极大似然估计,从数学角度来看就变得优美了。

AE模型和VAE模型具体能够看这儿:进来学VAE,VAE都不明白还想懂分散模型? | Variational Auto-Encoder


VQ-VAE

图像生成模型简介

图片来历:自己造的

VQ-VAE便是把VAE做量化,将其离散化。假如用VAE没办法把模型做的很大,而且中心那个散布或许比较难学,所以这儿就将中心换为一个CodeBook,咱们能够把它理解为一个聚类中心,巨细为KD,一般K=8192,D=512K \times D,一般K=8192,D=512

这时候一个图片经过编码器取得对应的特征图ff,咱们把特征图的向量去和CodeBook向量做比照,看看和哪个聚类中心更挨近,然后将挨近的聚类中心放到矩阵zz中,昨晚聚类分配之后咱们就运用zz中组合起来的成果作为新的特征图f′f’,然后用量化之后的特征图去经过解码器重建图片。

由于f′f’都是从CodeBook中出来的,所以可控性更高,所以VQ-VAE更好练习。

可是这样的话如同VQ-VAE又回到了AE模型,怎么才干去做生成呢?作者为此又添加了一个pixel CNN当作prior网络,使其做生成。


Diffusion model

分散模型是一种概率散布模型。分散模型生成图片是从一个散布里去采样,因此分散模型的多样性十分的好。可是它的保证度比不过GAN,由于GAN本身便是为了这个以假乱真去优化,所以说GAN生成的图像就特别的传神,可是分散模型就做不到这一点。至少是在点评目标的数值比较上,比方说FID score之类的这些目标上面。所以在生成的图片效果上GAN一直都是压制diffusion model的。

咱们已经知道分散模型它存在的问题便是我虽然生成的图片多样性比较好,可是我生成的图片度保真度欠好。你人眼比较的话,比照GAN生图片来说或许会有一眼假的这种感觉。比方你看一下下图,最右边考拉的手仍是有问题的。

图像生成模型简介
图片来历:Imagen论文

可是从20年开端就有一系列的工作致力于进步分散模型的保真度,比方说刚开端的DDPM、improved ddpm,到后来的diffusion model beat GAN,再到现在的GLIDE,DALLE 2等。这一系列的工作采用了很多很多小tricks,其中有一个比较著名的是一个叫引导(gudiance)的技巧,便是献身一部分多样性,从而能达到更好的保真度。

经过上边的一些改善,分散模型才干在数值比较上跟GAN平起平坐,从此分散模型也火了起来,取得了很多SOTA。

简单了解分散模型能够看这儿:

  1. 应用:是什么让人工智能忽然开端画画了? – ()

  2. 模型数学理论(不含推导):忽然火起来的diffusion model是什么? – ()