14-20 Vision Transformer用AI的画笔描绘新世界

14-20 Vision Transformer用AI的画笔描绘新世界

概述

毫无疑问,目前最受关注且不断发展的最重要的主题之一是使用人工智能生成图像、视频和文本。大型语言模型 (LLM) 已展示出其在文本生成方面的卓越能力。它们在文本生成方面的许多问题已得到解决。然而,LLM 面临的一个主要挑战是它们有时会产生幻觉反应。

最近推出的新模型(如新发布的 GPT-40)尤其令人惊叹。OpenAI 无疑正在改变游戏规则。此外,谷歌强大的模型 Gemini 1.5 Pro 极大地改变了我们的看法。因此,我们可以看到模型正在改进。轮子已经发明,现在必须加以改进。

最初,LLM 是为翻译任务而开发的。现在,我们看到它们执行各种任务,趋势是朝着多模态模型发展。Transformers 强大而重要的架构使这一切成为可能。

Transformers 可以执行的另一项任务是图像生成,如 DALL-E、Midjourney 或 Ideogram 等产品中所示。这些模型接受文本提示并生成图像。最近发布的 LlaMa 3 模型在编写文本提示时生成图像,并在我们修改文本时更改图像。

但更令人惊讶的是从文本生成视频。几个月前,OpenAI 推出了一款名为Sora的产品。它令人印象深刻,令人惊叹,能够生成高质量、高度逼真的图像,甚至可以创造其他世界。当我看到它时,我首先想到的是电影《黑客帝国》。

在本文中,我们将从头开始研究从文本生成图像和视频的想法,并追溯其演变过程。我们的目标是首先了解图像生成,然后了解视频生成,并研究用于这些任务的架构。

历史

第一批电影于 19 世纪 80 年代制作,令观众惊叹不已,为今天我们所知的强大的电影业奠定了基础。在电影制作中使用人工智能 (AI) 的概念出现于 20 世纪初,随着计算机的兴起而逐渐流行。1960 年,约翰·惠特尼 (John Whitney) 创立了 Motion Graphics Incorporated,并使用他的模拟计算机制作电影片段、电视剧名和广告,开创了计算机动画的先河。IBM于1966 年授予第一位驻场艺术家职位,以表彰他的贡献。多年来,各种关于计算机生成的电影和动画的文章相继发表,为今天我们所知的 AI 在电影制作和表演艺术中的应用铺平了道路。21 世纪21世纪的进步包括深度学习算法和生成对抗网络 (GAN),进一步推动了 AI 在数字内容创作和编辑中的应用。下一节将探讨使用 Transformer 架构生成图像的可行性。

跨平台对抗网络TransGANs

生成对抗网络 (GAN) 由Ian Goodfellow及其同事于2014 年 ( Transformers 诞生之前) 提出,用于图像处理和其他任务。生成对抗网络

生成对抗网络 (GAN) 的概念早于 Transformer,涉及两个参与零和博弈的深度神经网络。第一个网络是生成器,它创建合成样本;第二个网络是鉴别器,它负责区分真实样本和合成样本。生成器的目标是生成可以欺骗鉴别器的样本,使其无法区分真实样本和合成样本。

Transformer 与 GAN 的结合(称为 TransGAN)表明,Transformer 既可以充当 GAN 中的生成器,也可以充当鉴别器。这些模型利用 Transformer 的优势来捕捉数据的复杂特征。这种方法在2021 年Yifan Jiang、Shiyu ChangZhangyang Wang 发表的同名论文中进行了详细介绍。TransGAN:两个纯 Transformer 可以组成一个强大的 GAN,而且可以扩展

TransGAN 是 Transformer 生成对抗网络的缩写。该模型是一种 GAN,其生成器和鉴别器均采用 Transformer 架构。与传统 GAN 不同,TransGAN 不使用 CNN 作为生成器或鉴别器,而是同时采用 Transformer 结构。

14-20 Vision Transformer用AI的画笔描绘新世界

这幅图清晰地展示了 TransGAN 的架构以及生成器和鉴别器的结构。输入图像是一张 3×3 的彩色照片。来源

生成器Generator

在 TransGAN 中,生成器使用 Transformer 架构来生成数据序列。生成器从随机噪声输入开始,该输入通常是具有高斯(正态)分布的随机值的向量。此噪声输入被转换为更高维的特征空间。此阶段涉及多个前馈层和 MHA 层。

基于 Transformer 的生成器逐步生成数据序列。在每个步骤中,生成器生成一部分数据(例如,图像的一个像素),然后将此输出用作下一步的输入。注意力机制可帮助生成器对数据中存在的长期依赖关系和复杂性进行建模。

在生成完整的数据序列后,这些序列被转换成完整的样本(例如,完整的图像)。这种转换包括重建复杂的特征和最终的细节。

鉴别器Discriminator

TransGAN 中的 Discriminator 负责判断 Generator 生成的样本是真是假,它采用 Transformer 架构来分析生成的数据序列。

最初,鉴别器接收可能是真实图像或虚假图像的样本。这些样本作为图像块序列输入到模型中。每个图像块代表图像的一小部分,例如16×16像素块。每个图像块首先转换为矢量表示。此矢量表示通常通过嵌入层获得,该嵌入层将每个图像块转换为指定维度的矢量。然后将这些矢量与位置嵌入相结合,以保留每个图像块的空间信息。

然后将编码的块序列输入到多个多头注意力 (MHA) 层。这些层允许鉴别器对图像不同块之间的长期依赖关系和关系进行建模。MHA 帮助模型同时关注图像的不同特征。

注意力层的输出被输入到多个前馈层。这些层提取并处理组合特征,从而产生更复杂、更丰富的图像表示。然后,前馈层的最终输出被输入到聚合层。该层将所有提取的特征组合成一个综合表示。然后,这个综合表示连接到最后一层,例如密集层,最终决定图像是真是假。

在 GAN 中使用

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

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

相关文章

06-6.4.5 关键路径

👋 Hi, I’m Beast Cheng 👀 I’m interested in photography, hiking, landscape… 🌱 I’m currently learning python, javascript, kotlin… 📫 How to reach me --> 458290771qq.com 喜欢《数据结构》部分笔记的小伙伴可以…

Apispec,一个用于生成 OpenAPI(Swagger)规范的 Python 库

目录 01什么是 Apispec? 为什么选择 Apispec? 安装与配置 02Apispec 的基本用法 生成简单的 API 文档 1、创建 Apispec 实例 2、定义 API 路由和视图 3、添加路径到 Apispec 集成 Flask 和 Apispec 1、安装…

Buuctf之SimpleRev做法

首先,查个壳,64bit,那就丢进ida64中进行反编译进来之后,我们进入main函数,发现里面没什么东西,那就shiftf12搜索字符串,找到关键字符串,双击进入然后再选中该字符串,ctrl…

东莞惠州数据中心机房搬迁方案流程

进入21世纪以来,数据中心如雨后春笋般在各行各业兴建起来,经过近20年的投产运行,大量的数据中心机房存在容量不足、机房陈旧、设备老化无法支撑业务发展的情况,产生机房改造、搬迁需求。为安全、可靠地完成机房搬迁,减…

【JVM 的内存模型】

1. JVM内存模型 下图为JVM内存结构模型: 两种执行方式: 解释执行:JVM是由C语言编写的,其中有C解释器,负责先将Java语言解释翻译为C语言。缺点是经过一次JVM翻译,速度慢一点。JIT执行:JIT编译器…

7 动态规划

下面的例子不错: 对于动态规划,能学到不少东西; 你要清楚每一步都在做什么,划分细致就能够拆解清楚! xk. - 力扣(LeetCode) labuladong的算法笔记-动态规划-CSDN博客 动态规划是一种强大的算法…

nginx的正向代理和反向代理以及tomcat

nginx的正向代理和反向代理: 正向代理以及缓存配置: 代理:客户端不再是直接访问服务端,通过代理服务器访问服务端。 正向代理:面向客户端,我们通过代理服务器的IP地址访问目标范围端。 服务端只知道代理…

绝区叁--如何在移动设备上本地运行LLM

随着大型语言模型 (LLM)(例如Llama 2和Llama 3)不断突破人工智能的界限,它们正在改变我们与周围技术的互动方式。这些模型早已集成到我们的手机中,但到目前为止,它们理解和处理请求的能力还非常有限。然而,…

【C++】模板进阶--保姆级解析(什么是非类型模板参数?什么是模板的特化?模板的特化如何应用?)

目录 一、前言 二、什么是C模板? 💦泛型编程的思想 💦C模板的分类 三、非类型模板参数 ⚡问题引入⚡ ⚡非类型模板参数的使用⚡ 🔥非类型模板参数的定义 🔥非类型模板参数的两种类型 &#x1f52…

使用 ESP32-WROOM + DHT11 做个无屏温湿度计

最近梅雨天,有个房间湿度很大,而我需要远程查看温湿度,所以无所谓有没有显示屏,某宝上的温湿度计都是带屏的,如果连WIFI查看温湿度操作也比较麻烦,还需要换电池,实在不能满足我的需求&#xff0…

剖析DeFi交易产品之UniswapV3:交易路由合约

本文首发于公众号:Keegan小钢 SwapRouter 合约封装了面向用户的交易接口,但不再像 UniswapV2Router 一样根据不同交易场景拆分为了那么多函数,UniswapV3 的 SwapRouter 核心就只有 4 个交易函数: exactInputSingle:指…

Vue进阶(四十五)Jest集成指南

文章目录 一、前言二、环境检测三、集成问题汇总四、拓展阅读 一、前言 在前期博文《Vue进阶(八十八)Jest》中,讲解了Jest基本用法及应用示例。一切顺利的话,按照文档集成应用即可,但是集成过程中遇到的问题可能五花八…

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第55课-芝麻开门(语音 识别 控制3D纪念馆开门 和 关门)

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第55课-芝麻开门(语音识别控制3D纪念馆开门和关门) 使用dtns.network德塔世界(开源的智体世界引擎),策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtn…

KVM使用命令行添加新磁盘(注:支持热插拔)

1、使用qemu-img创建格式为qcow2的磁盘 [rootkvm ~]# qemu-img create -f qcow2 /var/lib/libvirt/images/test-disk.qcow2 15G 2、显示虚拟机硬盘列表,查看未使用的target [rootkvm ~]# virsh domblklist kvm-client 3、添加硬盘到kvm-client虚拟机中 [rootkvm…

SpringBoot | 大新闻项目后端(redis优化登录)

该项目的前篇内容的使用jwt令牌实现登录认证,使用Md5加密实现注册,在上一篇:http://t.csdnimg.cn/vn3rB 该篇主要内容:redis优化登录和ThreadLocal提供线程局部变量,以及该大新闻项目的主要代码。 redis优化登录 其实…

html+css+js图片手动轮播

源代码在界面图片后面 轮播演示用的几张图片是Bing上的&#xff0c;直接用的几张图片的URL&#xff0c;谁加载可能需要等一下&#xff0c;现实中替换成自己的图片即可 关注一下点个赞吧&#x1f604; 谢谢大佬 界面图片 源代码 <!DOCTYPE html> <html lang&quo…

C++继承初识

一。继承 1.继承本质是复用相同的代码&#xff08;属性&#xff09; 2.格式&#xff1a;class 类名&#xff1a;继承方式 父类 3.继承方式的规律&#xff1a; 父类的&#xff1a; 对于私有成员&#xff0c;不管哪种继承方式都不可见--->不想被子类继承的成员 对于保护…

代码随想录——划分字母区间(Leetcode763)

题目链接 贪心 class Solution {public List<Integer> partitionLabels(String s) {int[] count new int[27];Arrays.fill(count,0);// 统计元素最后一次出现的位置for(int i 0; i < s.length(); i){count[s.charAt(i) - a] i;}List<Integer> res new Ar…

非对称加密算法原理与应用2——RSA私钥加密文件

作者:私语茶馆 1.相关章节 (1)非对称加密算法原理与应用1——秘钥的生成-CSDN博客 第一章节讲述的是创建秘钥对,并将公钥和私钥导出为文件格式存储。 本章节继续讲如何利用私钥加密内容,包括从密钥库或文件中读取私钥,并用RSA算法加密文件和String。 2.私钥加密的概述…

JDK都出到20多了,你还不会使用JDK8的Stream流写代码吗?

目录 前言 Stream流 是什么&#xff1f; 为什么要用Steam流 常见stream流使用案例 映射 map() & 集合 collect() 单字段映射 多字段映射 映射为其他的对象 映射为 Map 去重 distinct() 过滤 filter() Stream流的其他方法 使用Stream流的弊端 前言 当你某天看…