AIGC之论文笔记DALL-E

这篇具有很好参考价值的文章主要介绍了AIGC之论文笔记DALL-E。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。



Zero-Shot Text-to-Image Generation

一. 简介

机构:openai
代码:https://github.com/openai/DALL-E

人们常说自然语言处理是人工智能皇冠上的明珠,这些年transformer以及大规模语言模型LLM的蓬勃发展,让这颗明珠更加熠熠生辉。除此之外,ViT,MAE等方法也充分验证了图像在transformer以及大规模预训练之路上的可行性,那么近一步的思考,就是如何跨越图像,文本等多种模态的鸿沟,让机器真正实现智能?理解人类生活中存在的各种模态?接收人类的指令,与物理世界交互?实现视,听,说,触等人类感知在机器上的应用。这份思考也让多模态这个领域这些年如火如荼,模态可能不只包括图像,文本,视频,音频等,除此之外,人体姿态,3D模型等等都可以视作一种广义上的模态,但一般上更关注图像以及文本,一方面:图像文本是人类世界分布最广的两种媒介,蕴含着巨大的信息,另一方面:各种模态之间往往也可以相互转化,比如音频转化为文本,视频切帧为图像。

就图像和文本而言,有多种benchmark任务建立起两种模态之间的桥梁,包括但不限于多模态检索:文本检索图像,图像检索文本,多模态生成:文本生成图像,图像生成文本,多模态问答:VQA等。其中文本生成图像是一个备受关注的领域,之前的技术路线多是基于VAE,GAN等,在特定数据集或者特定域进行生成,比如CUB或者MS-COCO,生成效果差,细节不逼真,离通用,泛化性强的生成能力还相去甚远,这两年DALL-E的一鸣惊人,加上后来diffusion model的井喷式发展,让人看到了机器拥有艺术创造以及设计的希望,其生成的图像往往能够以假乱真,在真实性,多样性,创造性等方面,远远超过之前的模型。

今天,我们先聊一聊DALL-E。按照中文的谐音,DALL-E 音同 dali,所谓大力出奇迹,在这儿仿佛也算是如其名,有气吞山河山河之势。参考https://mp.pdnews.cn/Pc/ArtInfoApi/article?id=28457810 才知道openai的初衷是"让机器拥有顶级艺术家,设计师的创造力,因此结合了艺术以及机器的两位代表性标杆:艺术家萨尔瓦多·达利(Salvador Dali)

visual codebook,AIGC,AIGC,论文阅读,人工智能

和皮克斯《机器人总动员》中的 WALL-E,用DALL-E向他们致敬。

visual codebook,AIGC,AIGC,论文阅读,人工智能

摘要:
Text-to-image generation has traditionally focused on finding better modeling assumptions for training on a fixed dataset. These assumptions might involve complex architectures, auxiliary losses, or side information such as object part labels or segmentation masks supplied during training. We describe a simple approach for this task based on a transformer that autoregressively models the text and image tokens as a single stream of data. With sufficient data and scale, our approach is competitive with previous domain-specific models when evaluated in a zero-shot fashion.

论文的摘要比较朴实,其指出先前的文本生成图像任务在特定的数据集上展开,往往训练过程伴随着复杂的网络结果,额外的损失函数或者监督信息。而DALL-E用transformer(12亿参数)自回归地建模图像以及文本tokens,当给定足够的数据(文中用了2.5亿网络图文对),往往能以一种zero-shot的方式,与在某个特定域的专精模型相匹敌。当然,笔者其实对这个zero-shot一直打一个天大的问号,也不太清楚为什么DALL-E主打zero-shot这个点。

二. 方法

整体思路借鉴了:VQ-VAE与VQ-VAE2,即对图像并不直接在像素级别上自回归,而是将图像编码为离散的tokens,再进行建模,这样能够降低复杂度以及长序列的建模难度。具体而言,方法分为了两个阶段:

  1. 第一阶段:训练一个离散自编码器dVAE,将 256 ∗ 256 256 * 256 256256的RGB图像压缩为 32 ∗ 32 32 * 32 3232个tokens,每个token都有8192个可能的选择,即code book的大小是8192。这样transformer建模的上下文大小从 256 ∗ 256 ∗ 3 256 * 256 * 3 2562563 降低到 32 ∗ 32 32 * 32 3232,压缩了192倍,但视觉质量却没有很大的损失(但其实细节,会有一些损失,比如下图)
    visual codebook,AIGC,AIGC,论文阅读,人工智能

  2. 第二阶段:将256个BPE编码的文本token,与上面的 32 ∗ 32 = 1024 32 * 32 = 1024 3232=1024个视觉token进行concate,然后用一个自回归transformer建模图像和文本token的联合分布。
    那么整体的文本生成图像的优化目标,可以视作优化一个关于图像 x x x,文本描述 y y y,视觉token z z z的ELB。

visual codebook,AIGC,AIGC,论文阅读,人工智能 其中
  • q ϕ q_\phi qϕ denotes the distribution over the 32 × 32 image tokens generated by the dVAE encoder given the RGB image x x x;(注意论文在这一句有一个注释:We assume that y is conditionally independent of x x x given z z z.,有谁知道这句话的目的是什么吗?)
  • p θ p_\theta pθ denotes the distribution over the RGB images generated by the dVAE decoder given the image tokens;
  • p ψ p_\psi pψ denotes the joint distribution over the text and image tokens modeled by the transformer.
    其实上面的ELB与VAE的ELB在公式上,长得很相似:
visual codebook,AIGC,AIGC,论文阅读,人工智能

具体公式的推导可以见:
visual codebook,AIGC,AIGC,论文阅读,人工智能

整体DALL-E的方法流程图可见:
visual codebook,AIGC,AIGC,论文阅读,人工智能

2.1. 第一阶段:Learning the visual codebook

训练dVAE,即最大化关于 ϕ \phi ϕ θ \theta θ 的ELB,初始化先验 ψ \psi ψ为在codebook vectors上的均匀类别分布。
visual codebook,AIGC,AIGC,论文阅读,人工智能

2.1.1 回顾VQ-VAE

这儿,我们先简单回顾一下VQ-VAE的相关内容:

visual codebook,AIGC,AIGC,论文阅读,人工智能

VQ-VAE是DALL-E的前身,不同于VAE,VQ-VAE将图像编码成离散的token,具体的做法是定义了一个 K ∗ d K * d Kd的code book或者叫做embedding space,其是可以学习的,类似一个nn.embedding层,然后对于一个输入的图像,经过encder得到 z e z_e ze ,它的维度是 m ∗ n ∗ d m * n * d mnd,然后将 m ∗ n m * n mn个网格的特征,分别与code book里面的K个特征算一个距离,找到最近邻,其code book中的index当作对应位置的离散编码 z z z,并填充对应的d维特征,形成 z q z_q zq,当作decoder的输入,并重建得到图像。其为了避免最近邻查找中argmax带来的不可导问题,引入了直通估计来设计其损失函数:
visual codebook,AIGC,AIGC,论文阅读,人工智能
在DALL-E里面,这儿的VQ-VAE也被叫做dVAE,其相关的配置如下

image_size 256 × \times × 256
codebook_size 8192
encoding image size 32 × 32 \times 32 ×32
β \beta β (上面KL散度的权重) 6.6

如上所说,训练dVAE就是在最大化 ϕ \phi ϕ θ \theta θ的ELB,初始化先验 p ψ p_{\psi} pψ为在codebook vectors上的均匀类别分布。
目前存在的问题:

  1. p ψ p_{\psi} pψ是离散分布,涉及到不可导的问题
  2. p θ p_{\theta} pθ分布和像素不匹配的问题
2.1.2 p ψ p_{\psi} pψ是离散分布,不可导的问题 -> gumbel-softmax

首先我们介绍一下什么是gumbel分布

visual codebook,AIGC,AIGC,论文阅读,人工智能

它的分布函数是: F ( x ; μ , β ) = e − e − ( x − μ ) / β F(x;\mu,\beta)=e^{-e^{-(x-\mu)/\beta}} F(x;μ,β)=ee(xμ)/β
采样: x = F − 1 ( μ ) = μ − β ln ⁡ ( − ln ⁡ ( μ ) ) , μ ∼ U n i f o r m ( 0 , 1 ) x = F^{-1}(\mu)=\mu-\beta\ln(-\ln(\mu)), \mu\sim Uniform(0,1) x=F1(μ)=μβln(ln(μ)),μUniform(0,1)
标准分布: μ = 0 , β = 1 \mu=0,\beta=1 μ=0,β=1

  • F ( x ; 0 , 1 ) = e − e ( − x ) F(x;0,1)=e^{-e^(-x)} F(x;0,1)=ee(x)
  • 采样: x = F − 1 ( μ ) = − ln ⁡ ( − l n ( μ ) ) , μ ∼ U n i f o r m ( 0 , 1 ) x=F^{-1}(\mu)=-\ln(-ln(\mu)), \mu \sim Uniform(0,1) x=F1(μ)=ln(ln(μ)),μUniform(0,1)

gumbel softmax

[1] E. Jang, S. Gu, and B. Poole. Categorical reparameterization with gumbel-softmax. arXiv preprint arXiv:1611.01144, 2016.
针对离散变量采样过程无法求导这个固有性质,上面的文献[1]提出了连续且可导的近似采样替代方案gumbel softmax。

假设离散变量 z z z的值域有k个可能的取值 z 1 , z 2 , . . . , z k {z_1, z_2, ..., z_k} z1,z2,...,zk,对应的概率分布向量为 p = [ p 1 , p 2 , . . . , p k ] p=[p_1,p_2,...,p_k] p=[p1,p2,...,pk],那么整个采样的过程就变成了
z = o n e h o t ( a r g m a x i [ g i + log ⁡ p i ] ) z=one_{hot}(argmax_i[g_i + \log p_i]) z=onehot(argmaxi[gi+logpi]),其中 g i g_i gi是从gumbel(0,1)中独立同分布采样得到。然后用连续可导的计算代替argmax近似得到采样向量 y y y
y i = e ( log ⁡ ( p i ) + g i ) / τ ∑ j = 1 k e ( log ⁡ ( p j ) + g j ) / τ f o r   i = 1 , . . . , k y_i=\frac{e^{(\log(p_i)+g_i)/\tau}}{\sum_{j=1}^k e^{(\log(p_j) + g_j)/\tau}} for\ i = 1,...,k yi=j=1ke(log(pj)+gj)/τe(log(pi)+gi)/τfor i=1,...,k文章来源地址https://www.toymoban.com/news/detail-824948.html

到了这里,关于AIGC之论文笔记DALL-E的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用AIGC工具提升论文阅读效率

      大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的

    2024年02月08日
    浏览(44)
  • AIGC时代高效阅读论文实操

      大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的

    2024年01月21日
    浏览(39)
  • 【AIGC】论文阅读神器 SciSpace 注册与测试

    欢迎关注【AIGC使用教程】 专栏 【AIGC使用教程】论文阅读神器 SciSpace 从注册到体验 【AIGC使用教程】Microsoft Edge/Bing Chat 注册使用完全指南 【AIGC使用教程】GitHub Copilot 免费注册及在 VS Code 中的安装使用 【AIGC使用教程】GitHub Copilot 免费注册及在 PyCharm 中的安装使用 【AIGC使用

    2023年04月09日
    浏览(36)
  • 【AIGC使用教程】论文阅读神器 SciSpace 从注册到体验

    欢迎关注【AIGC使用教程】 专栏 【AIGC使用教程】论文阅读神器 SciSpace 从注册到体验 【AIGC使用教程】Microsoft Edge/Bing Chat 注册使用完全指南 【AIGC使用教程】GitHub Copilot 免费注册及在 VS Code 中的安装使用 【AIGC使用教程】GitHub Copilot 免费注册及在 PyCharm 中的安装使用 【AIGC使用

    2024年02月05日
    浏览(49)
  • 论文阅读:Vary论文阅读笔记

    论文:Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models Paper | Github | Demo 许久不精读论文了,内心一直想找个专门的时间来细细品读自己感兴趣的论文。现在想来,无异于是自己骗自己了,因为根本就不存在那个专门的时间。所以改变最好的时候就是现在。 因为自己一

    2024年01月19日
    浏览(46)
  • 论文阅读:Vary-toy论文阅读笔记

    论文:Small Language Model Meets with Reinforced Vision Vocabulary Paper | Github | Demo 说来也巧,之前在写论文阅读:Vary论文阅读笔记文章时,正好看到了Vary-toy刚刚发布。 这次,咱也是站在了时代的前沿,这不赶紧先睹为快。让我看看相比于Vary,Vary-toy做了哪些改进? 从整体结构来看,仍

    2024年01月25日
    浏览(60)
  • [论文阅读笔记18] DiffusionDet论文笔记与代码解读

    扩散模型近期在图像生成领域很火, 没想到很快就被用在了检测上. 打算对这篇论文做一个笔记. 论文地址: 论文 代码: 代码 首先介绍什么是扩散模型. 我们考虑生成任务, 即encoder-decoder形式的模型, encoder提取输入的抽象信息, 并尝试在decoder中恢复出来. 扩散模型就是这一类中的

    2023年04月08日
    浏览(67)
  • 论文阅读:Segment Anything之阅读笔记

    引言 论文:Segment Anything是Meta出的图像语义分割的算法。这个算法因其强大的zero-shot泛化能力让人惊艳,这不抽空拿来学习了一下。 该算法的代码写得很清楚、简洁和规范,读来让人赏心悦目。推荐去看源码,很有意思。 本篇文章,将以问答形式来解读阅读过程中遇到的困

    2024年02月13日
    浏览(37)
  • PointMixer论文阅读笔记

    MLP-mixer是最近很流行的一种网络结构,比起Transformer和CNN的节构笨重,MLP-mixer不仅节构简单,而且在图像识别方面表现优异。但是MLP-mixer在点云识别方面表现欠佳,PointMixer就是在保留了MLP-mixer优点的同时,还可以很好的处理点云问题。PointMixer可以很好的处理intra-set, inter-set

    2024年02月19日
    浏览(39)
  • 论文阅读笔记2:NetVLAD

    题目:NetVLAD: CNN Architecture for Weakly Supervised Place Recognition:、 团队: PSL Research University/Tokyo Institute of Technology 解决的问题: 我们解决了大规模视觉位置识别的问题,其任务是快速准确地识别给定查询照片的位置 创新点: 这篇文章主要有3个创新点: 1. 为场景识别任务构造出

    2024年02月11日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包