概述
这份技术报告介绍了 Janus-Pro,它是之前工作 Janus 的升级版本。Janus-Pro 主要通过三个方面的改进,即优化的训练策略、扩大的训练数据和更大的模型规模,在多模态理解和文本到图像的指令跟随能力上取得了显著进展,同时提高了文本到图像生成过程的稳定性。报告强调了该模型在统一多模态模型方面的突破性进展,并提供了公开的代码和模型。
核心要点
- 模型架构与改进:
- Janus-Pro 架构: Janus-Pro 沿用了 Janus 的核心设计,采用了解耦的视觉编码方法,分别用于多模态理解和图像生成。具体来说,多模态理解使用 SigLIP 编码器提取图像特征,而图像生成使用 VQ 分词器将图像转换为离散 ID,然后通过各自的适配器映射到 LLM 的输入空间。整个模型基于自回归框架。
- 关键改进: Janus-Pro 的主要改进体现在以下三个方面:
- 优化的训练策略:第一阶段(Stage I): 增加了在 ImageNet 数据集上的训练步数,以更好地建模像素依赖关系。
- 第二阶段(Stage II): 放弃了 ImageNet 数据,直接使用正常的文本到图像数据进行训练,提高了训练效率和整体性能。
- 第三阶段(Stage III): 调整了不同类型数据集的比例,适当减少了文本到图像数据的比例,以在保持视觉生成能力的同时提高多模态理解性能。
- 数据规模扩大:多模态理解: 增加了约 9000 万个样本,包括图像字幕、表格、图表和文档理解数据。
- 视觉生成: 引入了约 7200 万个高质量合成美学数据,将真实数据和合成数据的比例调整为 1:1,提高了生成图像的稳定性和美学质量。
- 模型规模扩大: 模型规模从 1.5B 参数扩展到 7B 参数,验证了视觉编码解耦方法的可扩展性,并在更大规模的 LLM 上观察到更快的收敛速度。
- 性能评估:
- 多模态理解:在 MMBench 基准测试中,Janus-Pro-7B 的得分达到 79.2,优于 Janus (69.4)、TokenFlow (68.9) 和 MetaMorph (75.2) 等最先进的统一多模态模型。
- 在其他多模态理解基准测试 (POPE, MME-Perception, GQA, MMMU) 的平均性能方面,Janus-Pro 也优于其他模型(图1a)。
- 报告强调,Janus-Pro 通过解耦视觉编码,减轻了多模态理解和生成任务之间的冲突,从而提高了性能。
- 即使与参数量更大的模型相比,Janus-Pro 在大多数基准测试中仍具有竞争力,例如在多数指标上超越了TokenFlow-XL (13B)。
- 文本到图像生成:在 GenEval 指令跟随排行榜上,Janus-Pro-7B 的得分为 0.80,优于 Janus (0.61)、DALL-E 3 (0.67) 和 Stable Diffusion 3 Medium (0.74) (图1b)。
- 在 DPG-Bench 上,Janus-Pro 也取得了 84.19 的高分,展示了其在处理密集指令方面的卓越能力。
- 定性结果(图2和图4)表明,Janus-Pro 在短提示下也能生成更稳定、细节更丰富、视觉质量更高的图像,并且能够生成简单的文本。
- 模型架构细节
- 视觉编码解耦: 采用了独立的视觉编码器来处理多模态理解和图像生成任务,从而缓解了任务冲突,提升了整体性能。
- 统一的自回归 Transformer: 所有的模态特征(图像和文本)都被统一输入到同一个自回归 Transformer 中进行处理。
- 适配器: 使用适配器将图像特征或离散 ID 映射到 LLM 的输入空间。
- 训练细节:
- 基础 LLM: 使用 DeepSeek-LLM (1.5B 和 7B) 作为基础语言模型,支持最大序列长度为 4096。
- 视觉编码器: 用于理解任务的视觉编码器是 SigLIP-Large-Patch16-384,图像生成的视觉编码器使用大小为16384的码本。
- 训练框架: 模型使用 HAI-LLM 进行训练和评估,这是一个基于 PyTorch 的轻量级高效分布式训练框架。
- 训练时间: 1.5B 模型在 16 个节点上训练约 9 天,7B 模型在 32 个节点上训练约 14 天。
- 数据预处理: 多模态理解数据将长边调整为 384,短边填充背景色;视觉生成数据将短边调整为 384,长边裁剪为 384。训练过程中使用序列打包来提高效率。
- 局限性:
- 多模态理解: 输入分辨率限制为 384 × 384,这会影响其在细粒度任务(如 OCR)中的性能。
- 文本到图像生成: 低分辨率以及视觉分词器引入的重建损失导致生成的图像在语义内容丰富的同时,仍缺乏精细的细节。
重要引述
- "为了解决这个问题,Janus [46] 提出了解耦视觉编码,这缓解了多模态理解和生成任务之间的冲突,在这两项任务中都取得了出色的性能。"
- "在本文中,我们介绍了 Janus-Pro,它是 Janus 的增强版本,在训练策略、数据和模型规模三个维度上进行了改进。"
- "我们的发现表明,即使 LLM 参数固定,模型也可以有效地建模像素依赖性,并根据类别名称生成合理的图像。"
- "实验证明,在合成数据上训练时,模型收敛速度更快,并且生成的文本到图像输出不仅更稳定,而且在美学质量方面也得到了显着提高。"
- "总的来说,Janus-Pro 优于以前最先进的统一多模态模型以及某些特定任务模型。"
- "我们观察到,当使用更大规模的 LLM 时,多模态理解和视觉生成的损失收敛速度都比小型模型显着提高。"
- "Janus-Pro-7B 在 GenEval 上的总体准确率达到 80%,优于所有其他统一或仅限生成的方法。"
总结
Janus-Pro 通过在训练策略、数据和模型规模上的改进,显著提高了多模态理解和文本到图像生成能力,展示了视觉编码解耦方法的可行性和有效性。该模型在多个基准测试中均取得了优异的性能,并在视觉质量和细节上有所提升。尽管仍存在分辨率和细节方面的局限性,但 Janus-Pro 作为统一多模态模型的代表,为未来研究指明了方向。
