总结

Janus通过解耦视觉编码来解决理解和生成任务对视觉编码器不同需求之间的冲突,从而提升模型在这两个领域的表现;采用一个自回归框架,没有用到diffusion来做图像生成,是完全的自回归文本预测和图像生成任务;

目标

Janus的主要目标是统一多模态理解和生成任务,并提高这两者的性能。它通过解耦视觉编码来解决理解和生成任务对视觉编码器不同需求之间的冲突,从而提升模型在这两个领域的表现

不同的视觉编码器的必要性

方法

Janus采用了一个自回归框架,将视觉编码分为两个独立的路径:一个用于多模态理解,另一个用于多模态生成。这两个路径由同一个变换器(transformer)架构统一处理。
image

训练

训练数据

Janus的训练分为三个阶段,使用的数据集包括:
第一阶段:使用ShareGPT4V数据集进行多模态理解训练,以及ImageNet-1k数据集进行视觉生成训练。
第二阶段:使用包括文本数据、图像-文本数据、图像描述数据和视觉生成数据的多模态语料库进行统一预训练。
第三阶段:使用指令调整数据进行监督微调,以增强模型的指令跟随和对话能力。

训练过程

第一阶段:训练适配器和图像头

第二阶段:统一预训练

第三阶段:监督微调(Supervised Fine-tuning)

下游任务表现

Janus在多个多模态理解和生成基准测试中表现出色: