【扩散模型】10、Imagen | 借用语言模型的能力来实现文生图(NIPS2022 Oral)

在这里插入图片描述

论文:Imagen: Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding

官网:https://www.assemblyai.com/blog/how-imagen-actually-works/#how-imagen-works-a-deep-dive

博客:https://cloud.tencent.com/developer/article/2202539

出处:谷歌 | NIPS2022 Oral

一、背景

本文提出的 Imagen,是一个借用语言模型结合扩散模型来实现 text-to-image 的生成模型,实现具有语言理解能力的文本到图像的生成

Imagen 模型包括两部分:

  • 固定的 T5-XXL encoder:将文本映射到 embedding
  • 64x64 的扩散模型,后面跟两个超分模型,来生成 256x256 和 1024x1024 的模型,所有的扩散模型都是以 text embedding 作为条件,使用 classifier-free guidance

在这里插入图片描述

二、方法

2.1 预训练的语言编码器

Text-to-image 模型需要一个很强大的语义理解 text encoder,这样才能捕捉到输入文本的语义

当前很多文生图模型都使用 text-image pairs 的模式来训练文本编码器,例如 CLIP

但本文作者认为大型语言模型也可以是另一种选择来为文本到图片生成任务进行文字编码。最近大型语言模型(如BERT [15], GPT [47, 48, 7], T5 [52]) 上的进步,实现了对于文字理解和生成能力上的飞跃。这些语言模型比只用纯粹比配对图片-文字数据更大规模且分布更广阔丰富的纯粹文字库进行训练。

故本文作者对比了 BERT、T5、CLIP,固定这些模型的权重,也有利于训练过程中减小计算量,对比结果发现,提高文本编码器的体量,就能很好的提高 text-to-image 生成的质量。尽管T5-XXL 和 CLIP 文字编码器在简单基准测试如 MS-COCO 上表现相似,但人类评估员更喜欢T5-XXL 编码器,无论是图片 - 文字对齐还是 DrawBench 片保真度都更好一些。

2.2 扩散模型和 classifier-free guidance

classifier guidance:

  • 不需要重新训练 diffusion 模型,需要训练加噪图片的分类模型,可以控制生成图片的类别,分类图片有多少类,就能控制这个扩散模型生成多少类

classifier-free guidance:

  • 需要重新训练 diffusion 模型,不需要训练分类模型,不受限于类别,直接用条件控制即可

扩散模型就是从噪声数据中一步步来得到原始图片的过程

这个过程中:

  • Classifier guidance:能够通过影响采样过程的梯度来降低生成图片的多样性,提升图片的保真性,可以使用预训练好的扩散模型,需要额外训练一个噪声图片分类器,在采样的时候引导扩散模型
  • Classifier-free guidance:不需要额外训练图片分类器,而是在训练扩散模型时使用 conditional 和 unconditional,随机 10% 的概率 drop 掉文本 c

在这里插入图片描述

  • 前面的是 conditional 结果
  • 后面的是 unconditional 结果
  • w 是 guidance weight,w=1 的时候就是有条件模型,w=0 时就是无条件模型,提升 w>1 就会提高有条件引导的作用

三、效果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 21
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆呆的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值