OpenAI刚刚推出了一个名为“GLIDE.”的新文本生成图像模型
与今年年初出生的大哥Dall E相比,它有一个只有35亿参数(Dall E有120亿)。
规模虽小,质量却不差。
仔细看这个效果。带计算器的刺猬,星空下的狐狸,彩色玻璃窗风格吃竹子的熊猫,太空电梯舱的蜡笔画:
是不是很体面?
一位既是农民又是艺术家的网友将其描述为“和真的难以区分”.
GLIDE,在人类评估员的评分中,PK确实漏掉了DALL E,他用CLIP对图片进行排序。
最有趣的是,这个GLIDE似乎有“智能”。——会拒绝你画一只八条腿的猫的想法,不要认为老鼠可以捕食狮子。
OpenAI岁末新作GLIDE
GLIDE是G伊德L的全名,语言为I法师D.福音书,意思是G和E的融合,是扩散模型.的一种
扩散模型最早于2015年提出。它定义了一个马尔可夫链,用于在扩散步骤中缓慢地向数据中添加随机噪声,然后通过学习反转扩散过程从噪声中构建所需的数据样本。
与GAN、VAE和基于流的生成模型相比,扩散模型在性能上有很好的折衷,并且最近被证明在图像生成方面有很大的潜力,特别是结合引导来实现保真度和多样性。
ption">△扩散模型与其他三种生成模型的对比
研究人员训练了一个64×64分辨率的文本条件扩散模型,参数35亿;以及一个256×256分辨率的文本条件上采样扩散模型,参数15亿。
模型有两种引导形式来获得更好的生成效果:无分类器引导(classifier-free guidance)和CLIP引导。
对于CLIP引导,他们还训练了一个噪声感知的64×64 ViT-L CLIP模型 (vit)。
模型采用了SOTA论文《Improved Denoising Diffusion Probabilistic Models》(改进的去噪扩散概率模型)的架构,使用文本条件信息对其进行增强。
对于每个带噪图像xt和相应的提示文本caption,该模型预测出p(xt-1|xt,caption)。
为了对文本进行条件处理,模型还将文本编码为K个token的序列,并将这些token馈送到Transformer中,此Transformer的输出有两个用处:
1、在ADM模型中使用最终token embedding来代替class embedding;
2、token embedding的最后一层在整个ADM模型中分别映射每个注意层的维度,然后连接到每个层的注意上下文。
研究人员在与DALL·E相同的数据集上训练GLIDE,batch size为2048,共经过250万次迭代;对于上采样模型,则进行了batch size为512的160万次迭代。
这些模型训练稳定,总训练计算量大致等于DALL·E。
在初始训练完成之后,研究人员还微调了基础模型以支持无条件图像生成。
训练过程与预训练完全一样,只是将20%的文本token序列替换为空序列。这样模型就能既保留文本条件生成的能力,也可以无条件生成。
为了让GLIDE在图像编辑任务中产生不必要的伪影,研究人员在微调时将GLIDE训练样本的随机区域擦除,其余部分与掩码通道一起作为附加条件信息输入模型。
相比DALL·E,GLIDE的效果更逼真
- 定性实验
研究人员首先比较了GLIDE两种不同的引导策略:CLIP引导和无分类器引导。
分别用XMC-GAN、DALL·E(使用CLIP重排256个样本,从中选择最佳结果)和CLIDE模型(CLIP引导/无分类器引导)在相同的文本条件下生成了一些结果。
CLIDE模型的结果未经挑选。
可以发现,无分类器引导的样本通常比CLIP引导的看起来更逼真,当然,两者都胜过了DALL·E。
对于复杂的场景,CLIDE可以使用修复功能进行迭代生成:比如下图就是先生成一个普通客厅,再加画、加茶几、加花瓶……
此外,CLIDE还可以在SDedit模型上利用草图与文本相结合的方式,对图像进行更多受控修改。
- 定量实验
研究人员首先通过衡量质量和保真度的帕累托边界(Pareto frontier)来评估无分类引导和CLIP引导之间的差异。
在前两组曲线中,可以发现无分类器引导几乎都是最优的——不管是在准确率/召回率上,还是在IS/FID距离上。
而在绘制CLIP分数与FID的关系时,出现了完全相反的趋势。
研究人员假设这是CLIP引导正在为评估CLIP模型寻找对抗性示例,而并非真正优于无分类器引导。为了验证这一假设,他们聘请了人工评估员来判断生成图像的质量。
在这个过程中,人类评估者会看到两个256×256的图像,选择哪个样本更好地匹配给定文本或看起来更逼真。如果实在分辨不出,每个模型各得一半分数。
结果如下:
无分类器引导产生了更符合相应提示的高质量样本。
同时,研究人员也将CLIDE与其他生成模型的质量进行了评估:CLIDE获得了最有竞争力的FID分数。
再将GLIDE与DALL-E进行人工评估。
包含三种比法:两种模型都不使用CLIP重排序;仅对DALL·E使用CLIP重排序;对DALL-E使用CLIP重排序,并通过DALL-E使用的离散VAE映射GLIDE样本。
结果是不管哪种配置,人类评估员都更倾向于GLIDE的结果(每项第一行代表GLIDE)。
当然,说这么多,GLIDE也有它的不足,就如开头的例子,它没法画出不合常理的“八条腿的猫”,也就是有智力但缺乏想象力。
此外,未优化的GLIDE需要15秒才能在单张A100 GPU上生成一张图像,这比GAN慢多了。
最后,po一张我们在官方发布的Colab链接上亲手试的一张效果,还凑合(an illustration of a rabbit,demo上的模型比较小):
论文地址:
https://arxiv.org/abs/2112.10741
GitHub地址(是一个在过滤后的数据集上训练的小模型):
https://github.com/openai/glide-text2im
Colab试玩:
https://colab.research.google.com/github/openai/glide-text2im/blob/main/notebooks/text2im.ipynb#scrollTo=iuqVCDzbP1F0
— 完 —
量子位 QbitAI · 头条号签约
关注我们,第一时间获知前沿科技动态
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/157392.html