英伟达PixelUMM开源:像素空间统一图像视频理解与生成,不靠VAE和ViT
统一多模态模型(Unified Multimodal Models, UMMs)通常为理解和生成分别使用不同的视觉表示:用 ViT 提取理解所需的语义特征,用 VAE 提供生成所需的潜变量。这样一来,同一张图像要以两种 token 进入上下文,视觉上下文随之变长;这种双流接口也不同于视觉-语言模型(VLM)常用的单一视
统一多模态模型(UMMs)以往在理解和生成两条路上各用一套视觉表示:理解靠 ViT 抽语义特征,生成靠 VAE 提供潜变量。同一张图因此要以两种 token 进上下文,视觉上下文被拉长;这套双流接口又和视觉-语言模型(VLM)惯用的单一视觉流对不上,成熟的 VLM 预训练流程很难直接搬过来用。
像素空间建模是另一条思路。JiT 等工作已经证明,图像生成可以绕开 VAE,直接在像素上做。可要把这个范式挪到视频上并不轻松:视频生成一般用 3D VAE,视频理解一般拿图像编码器逐帧处理,两者对时间维度的表示方式不一样。理解与生成共用的视频接口该怎么设计,目前仍是一个开放问题。
英伟达与滑铁卢大学给出的方案是 PixelUMM——一个无编码器模型,直接在像素空间里统一图像与视频的理解和生成。
论文标题:PixelUMM: Encoder-Free Unified Image and Video Understanding and Generation
项目主页:https://nv-tlabs.github.io/PixelUMM
论文:https://arxiv.org/abs/2609.38597
开源代码:https://github.com/nv-tlabs/PixelUMM
开源模型:https://huggingface.co/nvidia/PixelUMM
论文作者:魏聪(Cong Wei)、Xuanchi Ren、Bryan Chu、Weiming Ren、Huan Ling、Jiahui Huang、Laura Leal-Taixé、Sanja Fidler、Wenhu Chen、Zian Wang、Jay Zhangjie Wu
作者单位:NVIDIA、
PixelUMM 把图像切成空间 patch,把视频切成时空 tubelet,理解和生成共用这一种表示,原始像素只经过一层线性投影就接入共享的多模态主干网络。主干是 Mixture-of-Transformers 架构:理解与生成各有独立参数,注意力则是同一个。模型以自回归方式预测文本,同时把 JiT 式的干净像素预测推广到视频,用像素空间的 flow matching 生成图像和视频。
从实验结果看,PixelUMM 在图像与视频的理解、生成任务上都拿到了有竞争力的表现。论文还对解码器设计、时空 patch 大小等关键选择做了系统性的实证研究,可供后续的像素空间统一多模态模型参考。
1. Pixel Space 视频生成效果
下面这些视频全部由开源的 PixelUMM 模型生成:分辨率 832×464,96 帧(4 秒,24 fps)。像素由模型直接给出,中间不经过任何 VAE 解码器。
PixelUMM 的图像生成与理解与视频理解:
2. 模型架构
PixelUMM 属于原生统一多模态模型,直接在像素空间运作,预训练视觉编码器不用,基于 VAE 的潜空间 tokenizer 也不用。它走的是 Mixture-of-Transformers(MoT)架构:理解专家管文本预测和视觉理解,生成专家管图像和视频生成。
原生像素接口。图像被划成互不重叠的 p×p patch,视频被划成 τ×p×p 的 tubelet。换句话说,图像做的是 2D patchify,视频则在时间、高度、宽度三个维度上联合做 3D patchify。
PixelUMM 取 p=16、τ=4:一个图像 patch 展平后是 16×16×3 = 768 个数值,一个视频 tubelet 是 4×16×16×3 = 3072 个数值,两者都只过一层简单线性层,就映射到 Transformer 的隐藏维度。
理解和生成各有一套独立线性层(img_und_linear_proj / img_gen_linear_proj,video_und_linear_proj / video_gen_linear_proj):干净图像和视频走理解投影输入,加噪的生成目标走生成投影输入。
输出端每种模态配一个简单线性头,实现方式是 RMSNorm 加一层方向相反的线性投影,分别输出 16×16×3 的图像 patch 或 4×16×16×3 的视频 tubelet,再由 unpatchify 还原成像素。输出投影在多模态训练之前做了零初始化。所以 PixelUMM 既没有视觉编码器(VE),也没有 VAE,也没有离散视觉 tokenizer:像素和主干网络之间只有单层线性投影,加上确定性的 patchify / unpatchify 操作。
无显式时间步条件。PixelUMM 拿掉了显式时间步嵌入,也拿掉了以时间步为条件的 AdaLN。去噪网络只接收加噪像素,没有单独的时间步输入,噪声强度由模型自己从像素里推断。
Mixture-of-Transformers 主干。PixelUMM 用 Qwen3 的 decoder-only Transformer 初始化,在理解专家和生成专家之间做 token 级硬路由。每个 block 都有各自路由的归一化层、QKV / 输出投影和 FFN,所有 token 则共享同一个多模态自注意力。文本和干净的视觉 token 走理解路由,加噪的视觉 token 走生成路由。
统一的多模态序列。四类核心任务都序列化成 ChatML 对话格式,视觉输入和生成目标占据对话中的原始像素 token 区间:理解任务用干净视觉输入,生成任务用加噪目标。上:图像理解(I2T)与视频理解(V2T);下:文生图(T2I)与文生视频(T2V)。视频理解中的
注意力机制采用广义因果设计:文本部分走因果注意力,而每个图像块或视频块内部则是双向注意力,后出现的块能够看到此前所有块的信息。到了生成阶段,加噪目标既能看见 prompt,也能看见整个目标块,但前面的上下文看不到这个目标。与 BAGEL 的做法不一样,这条序列里只放文本 token 和原始像素 token,VAE 特征和 ViT 特征都不出现。
训练目标上,文本部分照搬 BAGEL 的做法,交叉熵损失只算在 LLM 回复上。像素部分则沿用 JiT 的思路:模型直接预测干净像素(x-prediction),损失却在速度空间(v-loss)里算。文本、图像、视频三项损失加权求和构成总损失,各训练阶段的权重不同。
论文用 8 组对照实验(F1–F8)梳理出像素空间统一建模的设计经验,这部分即“像素空间统一模型的经验发现”。
先说 F1,即图像 patch 大小。序列长度预算相同的情况下,32×32 patch 每步能处理的图像是 16×16 的 4 倍,可图像生成损失始终是 16×16 patch 更低。压缩得越狠,图像生成越难学。
16×16 与 32×32 patch 的图像生成训练损失对比显示,两种 patch 大小在训练 6K、10K、15K 步时的生成结果被放在一起比较。
F2 转向视频 patch 大小。p32/t4、p32/t2、p16/t4、p32/t1 四种 tubelet 配置中,时空压缩越强,视频生成损失越高。最终模型选了 p16/t4,与 Wan2.2 等常见视频 VAE 的压缩比例一致。
四种 tubelet 配置的视频生成训练损失,以及相同 prompt 下的生成帧,构成了这组对比。
F3 关注 patch 伪影。线性输出头下,天空、墙面这类平滑区域可能出现轻微的 patch 网格,CFG 越高越明显。论文比较了三种卷积输出头:Wan 式“上采样 + 卷积”的边界最干净,代价是训练损失更高、画面更模糊;PixelShuffle 在训练损失和伪影抑制之间平衡得最好。不过开源模型用的仍是线性输出头。
线性输出头在平滑区域留下的网格伪影、三种卷积输出头的结构、各输出头的训练损失、空间 patch 边界与时间 tubelet 边界的伪影强度,以及同一 prompt 下各输出头的逐帧放大对比,都在这一组里给出。
F4 对比像素空间与 VAE 空间。两者梯度范数相近,训练动态也相似,像素空间训练偶尔冒出损失尖峰。两种损失在不同空间里度量,数值差距说明不了像素空间学得更快。
F5 看模型规模:8B 模型达到相同损失所需的训练步数,大约是 1.7B 模型的 1/3。
1.7B 和 8B 模型各自的 MSE、CE 损失可见图。F6 展示的是计算规模。
把 GPU 从 8 张扩到 128 张以后,文本 CE 的收敛步数少了约 9 倍,像素 MSE 的收敛步数则只降了约 1.3 倍。
图里是 8 卡和 128 卡两种训练条件下 MSE、CE 损失的变化。
F7 考察的是多模态上下文条件。PixelUMM 的做法是把干净的图像、视频条件直接送进理解专家,图生视频和视频编辑由此实现;BAGEL 则要动用 ViT 和 VAE 两套编码器分别处理条件,PixelUMM 没走这条路。另外,引入这类条件生成任务之后,PixelUMM 的理解能力并没有出现系统性下滑。
条件是图像和视频,它们进入理解专家,目标视频交给生成专家产出。图上对比的正是 PixelUMM 与 BAGEL 在视觉条件处理方式上的差别。
图中还给出多任务微调前后的理解指标,以及图生视频、视频编辑的示例。
F8 讲的是视频理解接口。PixelUMM 的视频输入有两种。
一种是 dense_mode,按 4 FPS 采样,每 4 帧合成一个 tubelet;另一种是 sparse_mode,按 1 FPS 采样,逐帧单独输入。两种方式每帧的分辨率预算一样,都是 448²。
对比下来,帧率更高的 dense_mode 并没有带来一致的好处:MVBench 只涨了 0.07 分,Video-MME 和 LongVideoBench 反倒分别掉了 0.22 分和 0.68 分,LVBench 没变。换句话说,4 FPS 的 tubelet 输入和 1 FPS 的逐帧输入,表现差不多。两种视频理解接口的对比见下图。
4. Benchmark
论文给出了开源 PixelUMM 模型(Joint Stage 2 训练后的 checkpoint)在图像理解、视频理解、图像生成、视频生成四个方向上的结果,整体表现与基线持平。不过各模型训练数据并不相同,所以这些数字既说明不了哪种架构更优,也说明不了哪个模型收敛更快。各表里,深绿代表最佳结果,浅绿代表次佳。
图像理解方面,PixelUMM 按官方 LMMS-Eval 协议评测。计数任务上,PixelM 在 CountBench(94.30)和 PixMo-Count(73.03)拿到表内最好成绩。
视频理解方面,在表中的统一模型里,PixelUMM 于 MVBench(70.53)、Video-MME(57.33)、LongVideoBench(59.61)、LVBench(40.41)四项基准上均为最佳。评测时它用的是 sparse_mode,最多采 96 帧,Video-MME 不加字幕;其余模型的分数引自各自原论文。
图像生成方面,PixelUMM 在 GenEval 上得 0.77,改用 BAGEL 的长 prompt 改写后升到 0.83;DPG-Bench 总分 85.74,和其他统一模型不相上下。
视频生成方面,PixelUMM 在 VBench 上总分 83.24(Quality Score 84.10,Semantic Score 79.80),与其它统一模型接近;Imaging Quality(67.63)、Temporal Style(25.84)、Overall Consistency(27.90)三项在统一模型里排第一。
5. 总结
单层线性投影把图像 patch 和视频 tubelet 直接接进共享的多模态 Transformer——PixelUMM 就这么绕开了 ViT 和 VAE,把图像、视频的理解与生成统一起来,性能也追上了先进基线。实验还显示,时空压缩越弱,生成损失通常越低;卷积输出头则能压住 patch 伪影。
后续研究可以往更深层次走,把理解与生成结合得更紧的MoE架构值得一试,patch可以做得更大,tubelet也能拉得更长。
作者介绍
论文第一作者是魏聪,滑铁卢大学博士三年级学生,师从陈文虎教授,这项工作是他在NVIDIA实习期间完成的。个人主页:https://congwei1230.github.io