【生成模型之十四】Visual Autoregressive Modeling

论文:Visual Autoregressive Modeling: Scalable Image Generation via Next-Scale Prediction

code:GitHub - FoundationVision/VAR: [NeurIPS 2024 Best Paper][GPT beats diffusion🔥] [scaling laws in visual generation📈] Official impl. of "Visual Autoregressive Modeling: Scalable Image Generation via Next-Scale Prediction". An *ultra-simple, user-friendly yet state-of-the-art* codebase for autoregressive image generation!

一、背景

我们提出了视觉自回归建模(VAR),这是一种新一代范式,将图像的自回归学习重新定义为从粗到细的"next-scale prediction"或"next-resolution prediction",与标准的"next-token prediction"不同。这种简单直观的方法允许自回归(AR)Transformer快速学习视觉分布,并且可以很好地泛化。large AR模型强调scalability and generalizabilty

VQGAN and DALL-E这些模型利用视觉标记器将连续图像离散化为2D token的网格,然后将其展平为1D序列以进行AR学习(图2b),反映了顺序语言建模的过程(图2a)。

二、方法

image VAR:multi-scale token maps 是从粗到细(从低到高分辨率)自回归生成的,每个尺度内都有并行token生成。VAR需要多尺度VQVAE才能工作。

自回归建模需要定义数据的顺序。我们的工作重新考虑了如何"排序"图像:人类通常以层次化的方式感知或创建图像,首先限制全局结构,然后限制局部细节。这种多尺度、从粗到细的性质表明了图像的"顺序"。

VAR实现方式:我们的方法首先将图像编码为multi-scale token maps。然后,渐进过程从1×1的token映射开始,并在分辨率上逐渐扩展:在每一步,transformer都会根据所有先前的token映射预测下一个更高分辨率的token映射。我们将这种方法称为视觉自回归(VAR)建模。

关于原有的自回归模型弱点的讨论。tokenizer和flatten方法允许对图像进行下一个token自回归学习,但引入了几个问题:

1.Mathematical premise violation(违反数学前提);在量化自编码器(VQVAE)中,编码器通常会生成一个图像特征图f,其中包含所有i,j的相互依赖的特征向量f(i,j)。因此,在量化和flatten之后,令牌序列(x1,x2,...,xh×w)保持双向相关性。这与自回归模型的单向依赖假设相矛盾,该假设规定每个标记xt只应依赖于其前缀(x1,x2,...,xt-1)。

2.Inability to perform some zero-shot generalization;与问题1)类似,图像自回归建模的单向性限制了它们在需要双向推理的任务中的泛化能力。例如,给定图像的底部,它无法预测图像的顶部。

3.Structural degradation.

三、Implementation details

VAR tokenizer。如前所述,我们使用vanilla VQVAE架构[30]和具有K个额外卷积(0.03M额外参数)的多尺度量化方案。对于V=4096的所有标度,我们使用共享码本。根据基线[30],我们的tokenizer也在OpenImages[49]上进行了训练,复合损失(5)和空间下采样率为16×。

im为输入图像,E(·) a encoder, and Q(·) a quantizer. a learnable codebook Z ∈ RV ×C containing V vectors. where lookup(Z, v) means taking the v-th vector in codebook Z.

VAR transformer。我们主要关注VAR算法,因此我们保持了简单的模型架构设计。我们采用了类似于GPT-2和VQ-GAN[66,30]的具有自适应归一化(AdaLN)的标准decoder-only transformers 的架构,该架构在许多视觉生成模型中得到了广泛采用并被证明是有效的。对于类条件合成,我们使用类嵌入作为开始标记[s],以及AdaLN的条件。

相关推荐
Lilith的AI学习日记5 小时前
【AI面试秘籍】| 第25期:RAG的关键痛点及解决方案深度解析
人工智能·深度学习·机器学习·chatgpt·aigc·llama
小溪彼岸5 小时前
【Cursor实战】Cursor+Stagewise=前端可视化编程?
aigc·cursor
中杯可乐多加冰5 小时前
采用Bright Data+n8n+AI打造自动化新闻助手:每天5分钟实现内容日更
运维·人工智能·自动化·大模型·aigc·n8n
小溪彼岸7 小时前
【Cursor实战】提高前端开发效率的两个MCP,无需打开控制台也可轻松改bug
aigc·cursor
非鱼feiyu12 小时前
从入门到实践:构建你的第一个 MCP Server
llm·aigc·mcp
struggle202512 小时前
Vuer开源程序 是一个轻量级的可视化工具包,用于与动态 3D 和机器人数据进行交互。它支持 VR 和 AR,可以在移动设备上运行。
机器人·自动化·ar·交互·vr
xiaohezi15 小时前
RAG 系统文本切分:从固定长度到智能检索的六种方法解析
aigc
lqj_本人15 小时前
鸿蒙OS&UniApp开发跨平台AR扫描识别应用:HarmonyOS实践指南#三方框架 #Uniapp
uni-app·ar·harmonyos
墨风如雪16 小时前
重磅炸弹!字节跳动开源BAGEL:70亿参数,统一多模态理解与生成,AI“全能王”诞生记!
aigc
画中影16 小时前
AR/MR实时光照阴影开发教程
unity·ar·mr·实时光照阴影·光影变换·pico4 ultra