Zero-Shot Text-to-Image Generation阅读笔记

Zero-Shot Text-to-Image Generation

方法

目标:训练一个Transformers将文本和图像标记作为单个数据流进行自回归建模
以往的解决办法:可能性目标倾向于优先考虑像素之间的短程依赖关系建模,因此大部分建模能力将用于捕获高频细节,而不是使物体在视觉上可识别的低频结构。
本文的解决办法:

  1. 训练了一个离散变分自编码器(dVAE),将每个256×256 RGB图像压缩成一个32 × 32的图像标记网格,其中每个元素可以假设8192个可能的值。这将变压器的上下文大小减少了192倍,而视觉质量没有明显下降,如图所示:
    Zero-Shot Text-to-Image Generation阅读笔记_第1张图片
  2. 将多达256个bpe编码的文本标记与32 × 32 = 1024个图像标记连接起来,并训练一个自回归转换器来模拟文本和图像标记的联合分布
    整个过程可以看作是最大化证据下界(ELB)关于图像x、标题y和编码RGB图像的标记z上的模型分布的联合似然
    在这里插入图片描述
    Zero-Shot Text-to-Image Generation阅读笔记_第2张图片
    Zero-Shot Text-to-Image Generation阅读笔记_第3张图片

第一阶段:学习可视化codebook

最大化ELB关于φ和θ,这对应于单独在图像上训练dVAE。
将初始先验pψ设为K = 8192个codebook向量上的均匀分类分布,而qφ设为编码器输出的32 × 32网格中相同空间位置上的8192个对数参数化的分类分布
ELB现在变得难以优化:因为qψ是一个离散分布,我们不能使用重新参数化梯度来最大化它
使用gumbel-softmax松弛,将qφ上的期望替换为qτφ上的期望,其中弛豫随着温度τ→0而变得紧密。pθ的可能性是用对数-拉普拉斯分布来评估的
对于稳定训练重要的原因:

  • 将τ退火到1/16足以缩小放松验证ELB与qτφ intsead而不是真实验证ELB之间的差距

  • 编码器的末尾和解码器的开头使用1 × 1的卷积。我们发现,减小围绕松弛的卷积的接受野大小会导致它更好地推广到真正的EL

  • 编码器和解码器的输出激活的乘法由一个小常数re-block,以确保初始化时稳定的训练
    Zero-Shot Text-to-Image Generation阅读笔记_第4张图片

  • 将KL权重增加到β = 6.6可以促进更好的codebook使用

第二阶段:学习先验

  1. 固定φ和θ,并通过最大化关于ψ的ELB来学习文本和图像标记上的先验分布。这里,pψ由一个120亿参数的稀疏变压器表示
  2. 给定一个文本-图像对,我们使用最多256个标记(词汇量为16384)对小写标题进行bpe编码
  3. 并使用32 × 32 = 1024个标记(词汇量为8192)对图像进行编码
  4. 图像标记是从dV AE编码器logits中使用argmax采样获得的,没有添加任何gumbel噪声
  5. 最后,将文本和图像标记连接起来,并作为单个数据流进行自回归建模
    此外:
  • Transformer是一个仅解码器模型,其中每个图像标记可以关注其64个自注意层中的任何一个中的所有文本标记,模型中使用了三种不同的自我注意面具。注意掩码中对应于文本对文本注意的部分是标准因果掩码,图像对图像注意的部分使用行、列或卷积注意掩码
    Zero-Shot Text-to-Image Generation阅读笔记_第5张图片
  • 将文本标题的长度限制在256个标记,尽管对于最后一个文本标记和图像开始标记之间的“填充”位置不完全清楚,本文选择为256个文本位置中的每个位置分别学习一个特殊的填充标记
  • 将文本的交叉熵损失乘以1/8,将图像的交叉熵损失乘以7/8。采用Adam指数加权迭代平均法对目标进行优化

你可能感兴趣的:(#,自然语言,计算机视觉,深度学习,python)