VAR:自回归家族文生图新SOTA,ImageNet上超越Diffusion与DiTs

news2024/11/28 10:39:21

一、背景:

        在人工智能领域,尤其是计算机视觉和自然语言处理中,自回归(AR)大型模型(如GPT系列)因其强大的生成能力和在多种任务上的通用性而受到广泛关注。这些模型通过自监督学习策略,即预测序列中的下一个标记,展现出了卓越的性能和可扩展性。然而,在图像生成领域,传统的自回归模型面临着性能不足和计算效率低下的问题,尤其是在与扩散模型等其他先进生成模型的比较中。因此,研究者们一直在探索如何改进自回归模型,使其在图像生成任务上达到甚至超越现有技术的性能。

二、摘要:

论文:https://arxiv.org/pdf/2404.02905.pdf
代码:https://github.com/FoundationVision/VAR

        本文提出了一种名为视觉自回归(VAR)建模的新范式,它通过将图像的自回归学习重新定义为“下一尺度预测”,与传统的栅格扫描“下一个标记预测”方法不同。VAR模型采用多尺度VQ-VAE来编码图像,并利用自回归Transformer来学习图像的分布。这种方法不仅提高了图像生成的质量,还显著加快了推理速度。VAR模型在ImageNet 256×256基准测试中的表现超越了现有的自回归和扩散模型,其Fréchet inception distance (FID) 和inception score (IS) 分别达到了1.80和356.4,同时推理速度提升了20倍。文章中甚至做了与DiTs相同量级参数的对比,指标上也有明显优势

        VAR模型还展现出了类似大型语言模型(LLMs)的幂律缩放法则和零样本泛化能力,这表明通过扩大模型规模可以持续提高性能。此外,VAR模型在图像修复、外绘和编辑等下游任务中也表现出色,无需特殊设计或微调即可泛化到新任务。

        文章的贡献包括提出了一种新的视觉效果生成框架、验证了VAR模型的缩放法则和零样本泛化潜力,并提供了开源代码以促进视觉自回归学习的进步。这些成果不仅推动了图像生成技术的发展,也为将自然语言处理领域的成功经验整合到计算机视觉中提供了新的思路。

三、算法

本文的核心算法创新、亮点、贡献以及细节网络结构和训练步骤如下:

核心算法创新:

  1. Visual AutoRegressive (VAR) modeling:本文提出了一种新的图像生成范式,即视觉自回归模型(VAR),它将图像的自回归学习重新定义为粗到细的“下一尺度预测”或“下一分辨率预测”,与传统的栅格扫描“下一个标记预测”不同。
  2. 多尺度VQ-VAE:VAR模型需要一个多尺度的向量量化自编码器(VQ-VAE)来工作,该自编码器能够将图像编码为不同分辨率的标记图(token maps)。
  3. 并行标记生成:在每个尺度上,VAR模型能够并行生成标记,这显著提高了生成效率。

亮点:

  1. 性能超越:VAR模型首次使得GPT风格的自回归模型在图像生成方面超越了扩散变换器(diffusion transformers)。
  2. 高效推理速度:在ImageNet 256×256基准测试中,VAR模型的推理速度比AR基线快20倍。
  3. 多维度优势:VAR在图像质量、推理速度、数据效率和可扩展性方面均优于Diffusion Transformer (DiT)。
  4. 幂律缩放法则:VAR模型展现出与大型语言模型(LLMs)中观察到的类似的幂律缩放法则,证明了其在性能预测方面的潜力。
  5. 零样本泛化能力:VAR在图像修复、外绘和编辑等下游任务中展示了零样本泛化能力。

贡献:

  1. 提出了一种新的多尺度自回归范式,为计算机视觉中的自回归算法设计提供了新的见解。
  2. 经验性验证了VAR模型的缩放法则和零样本泛化潜力,这些特性最初模仿了大型语言模型(LLMs)的吸引力。
  3. 在图像合成方面,使GPT风格的自回归方法首次超越了强大的扩散模型。
  4. 提供了一个全面的开源代码套件,包括VQ标记器和自回归模型训练流程,以推动视觉自回归学习的进步。

细节网络结构:

  1. 多尺度VQ-VAE:使用与VQGAN相同的架构,但修改了多尺度量化层,以编码图像到多个离散标记图。
  2. VAR Transformer:采用了类似于GPT-2的解码器仅Transformer架构,唯一的修改是将传统的层归一化替换为自适应归一化(AdaLN)。
  3. 模型参数和训练:模型的宽度、头数和丢弃率与深度线性缩放,所有模型均使用类似的设置进行训练。

训练步骤:

  1. 训练多尺度VQ-VAE:首先,使用复合重建损失训练多尺度量化自编码器,将图像编码为K个标记图。
  2. 训练VAR Transformer:然后,通过最大化似然或最小化交叉熵损失来训练VAR Transformer,进行下一尺度预测。

这些创新和贡献表明,VAR模型在图像生成领域具有重要的应用潜力,并且通过开源代码的提供,将进一步推动相关技术的发展和应用。

四、效果

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android 性能优化(七):APK安装包体积优化

包体积优化重要性 移动 App 特别关注投放转化率指标,而 App 包体积是影响用户新增的重要因素,而 App 的包体积又是影响投放转化率的重要因素。 Google 2016 年公布的研究报告显示,包体积每上升 6MB 就会带来下载转化率降低 1%, …

获取公募基金净值【数据分析系列博文】

摘要 从指定网址获取公募基金净值数据,快速解析并存储数据。 (该博文针对自由学习者获取数据;而在投顾、基金、证券等公司,通常有Wind、聚源、通联等厂商采购的数据) 导入所需的库:代码导入了一些常用的库…

CSS3 伪元素与伪类选择器区别、详解与应用实例

伪元素与伪类两者都是通过在选择器后附加一个特定的关键字来定义,遵循相似的语法规则,并在 CSS 规则块中设置相应的样式。伪元素 能够通过 content 属性添加或替换内容。例如,:before 和 :after 可以插入文本、图像或其他生成的内容。伪类 仅…

Go 单元测试之Mysql数据库集成测试

文章目录 一、 sqlmock介绍二、安装三、基本用法四、一个小案例五、Gorm 初始化注意点 一、 sqlmock介绍 sqlmock 是一个用于测试数据库交互的 Go 模拟库。它可以模拟 SQL 查询、插入、更新等操作,并且可以验证 SQL 语句的执行情况,非常适合用于单元测试…

数据赋能(58)——要求:数据赋能实施部门能力

“要求:数据赋能实施部门能力”是作为标准的参考内容编写的。 在实施数据赋能中,数据赋能实施部门的能力体现在多个方面,关键能力如下图所示。 在实施数据赋能的过程中,数据赋能实施部门应具备的关键能力如下。 理性思维与逻辑分…

ES源码四:网络通信层流程

听说ES网络层很难?今天来卷它😄 前言 ES网络层比较复杂,分为两个部分: 基于HTTP协议的REST服务端基于TCP实现的PRC框架 插件化设计的网络层模块(NetworkModule) 入口还是上一章的创建Node构造方法的地方…

如何爬出 Kotlin 协程死锁的坑?

作者:悬衡 一、前言 在 Java 中有一个非常经典的死锁问题, 就是明明自己已经占用了线程池, 却还继续去申请它, 自己等自己, 就死锁了, 如下图和代码: // 这段代码将死锁到天荒地老final ExecutorService executorService Executors.newSingleThreadExecutor();exe…

4月27日复旦大学-华盛顿大学EMBA项目教授分享暨招生说明会

复旦大学-华盛顿大学EMBA项目2024年4月27日精彩看点:      国际视野助推商业价值,“她力量”赋能管理      数字营销浪潮中,如何重新定义价值创造      主讲嘉宾    复旦大学-华盛顿大学EMBA项目教授分享暨招生说明会     …

Redmi Turbo 3新品发布,天星金融(原小米金融)优惠加持护航新机体验

Redmi新十年使命不变,挑战不断升级。Redmi Turbo 3,作为Turbo系列的开篇之作,将自身定位为新生代性能旗舰,决心重塑中端性能新格局。据悉,Redmi Turbo 3于4月10日已正式发布。预售期间更是连续数日,蝉联小米…

C++:文件内容完全读入

在上一篇文章中我留下了一点小坑:使用>> 运算符,这个运算符默认将空格作为分隔符,所以在文件内容读取的时候发现在读到空格时就会停止读取,导致读取内容不完整,这显然不符合日常的使用用能,那么今天就…

科学突破可能开创6G通信新时代

格拉斯哥大学开发的火柴盒大小的天线可以为全息通话、改进自动驾驶和更好的医疗保健的世界铺平道路。 格拉斯哥大学表示,这种创新的无线通信天线将超材料的独特特性与复杂的信号处理相结合,有助于构建未来的 6G 网络。 数字编码动态超表面天线&#xf…

python-flask结合bootstrap实现网页小工具实例-半小时速通版

参考: Python之flask结合Bootstrap框架快速搭建Web应用_支持bootstrap的python软件-CSDN博客 https://blog.csdn.net/lovedingd/article/details/106696832 Bootstrap 警告框 | 菜鸟教程 https://www.runoob.com/bootstrap/bootstrap-alert-plugin.html flask框架…

机器学习实验二-----决策树构建

决策树是机器学习中一种基本的分类和回归算法,是依托于策略抉择而建立起来的树。本文学习的是决策树的分类 1. 构建决策树流程 选择算法:常用的算法包括ID3、C4.5、CART等。 划分节点:根据数据特征和算法选择,递归地划分节点&…

C++算法题 - 矩阵

目录 36. 有效的数独54. 螺旋矩阵48. 旋转图像73. 矩阵置零289. 生命游戏 36. 有效的数独 LeetCode_link 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现…

Linux安装和使用Android Debug Bridge(ADB)

目录 1、开发环境和工具 2、ADB是什么? 3、安装ADB 3.1、使用包管理器安装 ADB 3.2、手动安装 ADB 4、使用ADB 4.1、连接设备 4.2、执行shell命令 4.3、安装应用程序 4.4、截取屏幕截图 4.5、模拟按键和手势 4.6、上传文件到Android设备 4.7、从Android设备下载文件…

el-table 表格列里添加 树

<el-table-column label"部门名称" align"center"><template slot-scope"scope"><el-cascader filterable :disabled"type 3 ? true : false" :show-all-levels"false":ref"provinceTree scope.row.…

【机器学习300问】72、神经网络的隐藏层数量和各层神经元节点数如何影响模型的表现?

评估深度学习的模型的性能依旧可以用偏差和方差来衡量。它们反映了模型在预测过程中与理想情况的偏离程度&#xff0c;以及模型对数据扰动的敏感性。我们简单回顾一下什么是模型的偏差和方差&#xff1f; 一、深度学习模型的偏差和方差 偏差&#xff1a;衡量模型预测结果的期望…

[Meachines][Easy] Usage

Main # nmap -sV -sC 10.10.11.18 --min-rate 1000 # echo 10.10.11.18 usage.htb admin.usage.htb >> /etc/hosts 在/forget-password发现存在SQL注入 emailmaptnh%40log.comAND5212%3dBENCHMARK(5000000,MD5(0x62434473))--NKGG $ sqlmap -r request.txt --level 5 -…

js: UrlDecode解码、UUID和GUID、阿拉伯数字转为中文数字

UrlDecode解码&#xff1a; UrlDecode 是一个 JavaScript 函数&#xff0c;用于将经过 URL 编码的字符串转换为普通字符串。 URL 编码是将特殊字符转换为它们的百分比编码表示形式的过程。这些特殊字符包括空格、斜线、井号&#xff08;#&#xff09;等。UrlDecode 函数将这些…

【C++杂货铺】继承

目录 &#x1f308;前言&#x1f308; &#x1f4c1; 继承的概念和定义 &#x1f4c2; 概念 &#x1f4c2; 定义 &#x1f4c1; 基类和派生类对象赋值转换 &#x1f4c1; 继承中的作用域 &#x1f4c1; 派生类的默认成员函数 构造函数 析构函数 拷贝构造函数 赋值重载…