DALL·E:OpenAI第一代文本生成图片模型

news/2024/5/14 5:45:11/文章来源:https://blog.csdn.net/zephyr_wang/article/details/130021457

1 简介

本文根据openAI 2021年2月的《Zero-Shot Text-to-Image Generation》翻译总结的。原文详见https://arxiv.org/pdf/2102.12092v1.pdf。

DALL·E : 论文中没看到这个名字,可能是后起的吧。

DALL·E有120亿参数,基于自回归transformer,在2.5亿 图片-文本对上训练的。在人为评价中,90%的时间认为该模型好于以前的模型。

DALL-E还没有使用扩散模型使用的dVAE(discrete variational autoencoder离散变分自动编码器)。文中主要和GAN相关模型进行比较,如AttnGAN、DM-GAN、DF-GAM.

2 方法

采用两步法。

第一步:训练一个dVAE(discrete variational autoencoder离散变分自动编码器),其将256*256的RGB图片转换为32*32的图片token。图片token的词汇量大小是8192个。第一阶段同时训练dVAE编码器和dVAE解码器。图片token示例如下:

第二步:将文本token(采用256 Byte Pair Encoding (BPE) 编码)和图片token(32*32=1024)进行拼接,然后训练一个自回归transformer来建模文本和图片token的联合分布。

训练目标:采用Evidence Lower BOund (ELBO,推导详见文章最下面)。如下:

其中,x指图片,y指文本,z指对编码的图片(用于生成图片)。

ELBO的一般取1,但我们发现使用更大的值更好。

3 步骤一:学习视觉

4 步骤二:学习先验

给定一个文本-图片对,我们采用BPE编码小写的文本描述,最多256个token,词汇量大小为16384。使用dVAE编码器,编码图片为32*32=1024 token,词汇量大小为8192。然后将文本和图片token拼接,作为一个单独的数据流,输入到自回归模型。

transformer采用只有编码的部分。其中每一个图片token对所有文本token进行注意力关注。共有3中自注意力在模型中使用。文本对文本的注意力时标准的causal mask;图片对图片的注意力使用行、列,或者卷积关注mask。

5 样本生成

我们使用一个对比(contrastive)模型对从transformer绘制的样本进行重排序。给定一个文本描述和候选图片,对比模型对图片是否很好的匹配文本进行打分。我们绘制了N=512个样本进行重排序。下图显示了,N越大效果越好,如第1行N=512。

6 实验结果

和GAN相关模型进行比较,如AttnGAN、DM-GAN、DF-GAM,可以看到DALL-E(第2行)效果更好。

在MS-COCO 数据集上的效果,DALL-E也比较好。

7 ELBO推导

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_283210.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring 01 -项目管理框架Spring入门

本部分理解原理就好 Spring入门1 Spring引入1.1 原生web开发中存在的问题2 Spring2.1 Spring的概念2.2 Spring 作用2.3 Spring的组成2.4 spring的IOC底层实现原理3 Spring快速入门3.1 引入spring依赖3.2 spring的配置文件3.3 测试四、Spring的开发细节4.1 BeanFactory的类间关系…

android的system_server进程的启动

android的system_server进程的启动 android的system_server进程的启动的简单介绍 system_server是Zygote的fork的第一个Java进程相当于它的大儿子,这个进程非常重要的,这里这个进程提供了很多系统线程,提供了所有的核心的系统服务。比如&am…

mysql与redis区别

一、.redis和mysql的区别总结 (1)类型上 从类型上来说,mysql是关系型数据库,redis是缓存数据库 (2)作用上 mysql用于持久化的存储数据到硬盘,功能强大,但是速度较慢 redis用于存储使…

SQL基础查选和条件查选

写完毕业论文,终于有空复习sql了,继续学习之旅~下次不能和上次一样,简单的sql语句都忘记了。 1.查询结果去重 关键字 distinct select distinct university from user_profile; 2. 将查询后的列重新命名 关键字 as 关键字limit…

Linux kernel 编译 exfat.ko ntfs.ko 来支持exFat 和 NTFS 分区

项目需求想让设备支持 exFat 和 NTFS 的文件格式. 默认的内核是不支持的,因为内核要限定1.5M之内, 所以很多东西都裁剪掉了. 而且不是所有项目都有这个需求,所以就需要编译为 ko ,按需加载; 而不是才去built-in的方式. 在如下的选项找到对应的配置. 至于如何找到, 我推荐2种方式…

LE AUDIO快速了解

有BIS和CIS两种 BIS是广播的,不需要连接,只需要监听 CIS要建立连接的,除了ACL链路,还需要建立CIS链路 BIS部分 也没啥要看的,只需要记住3个指令就可以了 主要是HCI的3个指令 2068 206b 206e 这3个指令即可 206…

Nacos安全性探究

Nacos怎么做安全校验的? 以下使用nacos2.x 如上图所示, 可以直接访问Nacos的接口来获取用户列表。这说明Nacos的接口被爆露,任何情况下都可以访问,因此安全性得不到保障。 Nacos 使用 spring security 作为安全框架。spring sec…

Baumer工业相机堡盟工业相机如何通过BGAPI SDK获取每张图像的微秒时间和FrameID(C#)

BGAPI SDK获取图像微秒级时间和FrameID Baumer工业相机Baumer工业相机FrameID技术背景一、FrameID是什么?二、使用BGAPI SDK获取图像微秒时间和FrameID步骤 1.获取SDK图像微秒级时间2.获取SDK图像FrameIDBaumer工业相机使用微秒级时间和FrameID保存的用处Baumer工业…

混淆矩阵Confusion Matrix(resnet34 基于 CIFAR10)

目录 1. Confusion Matrix 2. 其他的性能指标 3. example 4. 代码实现混淆矩阵 5. 测试,计算混淆矩阵 6. show 7. 代码 1. Confusion Matrix 混淆矩阵可以将真实标签和预测标签的结果以矩阵的形式表示出来,相比于之前计算的正确率acc更加的直观…

jenkins打包发布前端项目

1.配置前端nodejs打包环境 1.1安装nodejs插件 1.2配置jenkins nodejs环境 2.下载git插件(使用此插件配置通过gitlab标签拉取项目) 3.创建一个自由风格的发布项目 4.配置项目构建流程 4.1添加钉钉告警 4.2配置参数化构建 4.3配置源码管理为git拉取项目 4.4配置构建环境 4.5配置…

transform属性

CSS transform属性允许对某一个元素进行某些形变, 包括旋转,缩放,倾斜或平移等。 注意事项,并非所有的盒子都可以进行transform的转换,transform对于行内级非替换元素是无效的,比如对span、a元素等 常见的函数transform function有&#xf…

算法笔记:匈牙利算法

1 二部图(二分图) 二分图(Bipartite graph)是一类特殊的图,它可以被划分为两个部分,每个部分内的点互不相连。 匈牙利算法主要用来解决两个问题:求二分图的最大匹配数和最小点覆盖数。 2 最大匹…

[C++笔记]初步了解STL,string,迭代器

STL简介 STL(standard template libaray-标准模板库): 是C标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包含数据结构与算法的软件框架。 是一套功能强大的 C 模板类,提供了通用的模板类和函数,这些模板…

STM32开发(十二)STM32F103 功能应用 —— NTC 温度采集

文章目录一、基础知识点二、开发环境三、STM32CubeMX相关配置四、Vscode代码讲解(过程中相关问题点在第五点中做解释说明)五、知识点补充六、结果演示一、基础知识点 了解STM32 片内资源ADC。本实验是基于STM32F103开发 实现 NTC温度采集。 NTC温度采集…

3年外包离奇被裁,痛定思痛24K上岸字节跳动....

三年前,我刚刚从大学毕业,来到了一家外包公司工作。这份工作对于我来说是个好的起点,因为它让我接触到了真正的企业项目和实际的开发流程。但是,随着时间的流逝,我发现这份工作并没有给我带来足够的成长和挑战。 三年…

文心一言平替版ChatGLM本地部署(无需账号)!

今天用了一个超级好用的Chatgpt模型——ChatGLM,可以很方便的本地部署,而且效果嘎嘎好,经测试,效果基本可以平替内测版的文心一言。 目录 一、什么是ChatGLM? 二、本地部署 2.1 模型下载 2.2 模型部署 2.3 模型运…

数据结构系列13——排序(归并排序)

目录 1. 递归实现归并排序 1.1 思路 1.2 代码实现 1.3 时间复杂度和空间复杂度 2. 非递归实现归并排序 2.1 思路 2.2 代码实现 2.3 时间复杂度和空间复杂度 1. 递归实现归并排序 1.1 思路 将已有序的子序列合并,得到完全有序的序列;即先使每个子序列…

Excel 文件 - 比如 .csv文件编码问题 转为 UTF-8 编码 方法,解决中文乱码问题 - 解决科学计数显示问题

解决 excel 文件编码问题 1、方法一: 有点点击 excel 文件,然后选择打开方式,选择使用 Excel 2016 软件打开 选择 工具 ——> Web 选项 这里选择 UTF-8 编码 2、方法二 wps 导出为 .csv 文件,然后修改 csv 文件的后缀…

Linux修改密码报错Authentication token manipulation error的终极解决方法

文章目录报错说明解决思路流程排查特殊权限有没有上锁查看根目录和关闭selinux/etc/pam.d/passwd文件/etc/pam.d/system-auth文件终极办法,手动定义密码passwd: Have exhausted maximum number of retries for servic、ssh用普通用户登录输入密码正确但是登录时却提…

元宇宙是什么,元宇宙虚拟会议改变会议体验

随着人类社会的发展和科技的进步,传统的会议方式已经无法满足现代社会的需求。为了更好地满足社会的需求,VR全景元宇宙虚拟会议是近年来快速崛起的新兴领域,其融合了虚拟现实技术和通信技术,为人们提供了一种全新的交流、协作和学…