DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈 原创

发布于 2025-2-10 08:42
浏览
0收藏

deepseek开源的多模态大模型-Janus再次升级,也来简单看下Janus的架构设计。核心创新点:传统的多模态模型通常使用单一视觉编码器来处理多模态理解和生成任务,这会导致任务之间的冲突,因为这两种任务对视觉信息的需求粒度不同。Janus 通过将视觉编码解耦为独立的路径,分别处理多模态理解和生成任务,使两个任务得到统一,并取得了比较好的性能。

  • 多模态理解:使用 SigLIP 编码器提取图像的高级语义信息,适合理解任务。
  • 视觉生成:使用 VQ Tokenizer 或 LlamaGen Tokenizer 提取图像的细节信息,适合生成任务。

DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈-AI.x社区

方法架构

DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈-AI.x社区

文本理解路径直接通过 LLM 的分词器处理。 多模态理解路径通过 SigLIP 编码器和理解适配器处理。 视觉生成路径通过 VQ Tokenizer 和生成适配器处理。 所有路径的特征序列最终被拼接并输入到统一的 Transformer 中进行处理

Janus 的架构设计:

  • 文本理解:使用语言模型(LLM)自带的分词器将文本转换为离散 ID,并获取对应的特征表示。
  • 多模态理解:使用 SigLIP 编码器从图像中提取高维语义特征,然后通过理解适配器(Und. Adaptor)将这些特征映射到 LLM 的输入空间。
  • 视觉生成:使用 VQ Tokenizer 将图像转换为离散 ID,然后通过生成适配器(Gen. Adaptor)将这些 ID 映射到 LLM 的输入空间。

将上述特征序列拼接后输入到统一的自回归 Transformer 中进行处理

训练过程

DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈-AI.x社区

训练过程

  • 第一阶段:训练适配器和图像头
    在嵌入空间内创建视觉和语言元素之间的概念联系,使 LLM(语言模型)能够理解图像中显示的实体(让LLM学会将SigLIP特征与实体名词关联),并具备初步的视觉生成能力。方法冻结视觉编码器和 LLM,只更新理解适配器、生成适配器和图像头中的可训练参数。这一阶段主要关注于让模型学会如何将视觉信息和语言信息进行初步的融合和理解。
  • 第二阶段:统一预训练
    通过多模态语料库的训练,让 Janus 能够同时学习多模态理解和生成任务。方法解冻 LLM,训练除了encoder的所有部分,并利用多种类型的训练数据,包括纯文本数据、多模态理解数据和视觉生成数据。受 Pixart 的启发,首先使用 ImageNet-1k 数据集进行简单的视觉生成训练,帮助模型掌握基本的像素依赖性。 随后,使用通用的文本到图像数据增强模型的开放域视觉生成能力。 这一阶段的训练数据包括纯文本数据、多模态理解数据(如 WikiHow 和 WIT 数据集)和视觉生成数据(如 ImageNet-1k 和其他图像-标题对数据)。
  • 第三阶段:监督微调
    通过指令调整数据对预训练模型进行微调,增强其指令跟随和对话能力。方法: 微调除生成编码器(继续冻结生成编码器)之外的所有参数。 专注于监督答案,同时屏蔽系统和用户提示。 使用混合数据进行微调,包括纯文本对话数据、多模态理解数据和视觉生成数据,确保模型在各种场景下的多功能性。

Janus-Pro

Janus-Pro的网络结构和Janus基本一致,主要的改进点是在训练策略、数据、模型大小上。

DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈-AI.x社区

训练改进

三个阶段训练过程改进:

  • 第一阶段:增加了在ImageNet数据集上的训练步数,即使在固定LLM参数的情况下,模型也能有效建模像素依赖关系,并基于类别名称生成合理图像。
  • 第二阶段:去掉了ImageNet数据,直接使用正常的文本到图像数据进行训练,使模型能够根据密集描述生成图像。这种重新设计的方法提高了训练效率和整体性能。
  • 第三阶段:在监督微调过程中,调整了不同类型数据的比例,将多模态数据、纯文本数据和文本到图像数据的比例从7:3:10调整为5:1:4。这种调整在保持视觉生成能力的同时,提高了多模态理解性能。
数据扩展

Janus-Pro在多模态理解和视觉生成方面扩展了训练数据:

1、多模态理解

  • 在第二阶段预训练数据中,参考DeepSeekVL2,增加了约9000万样本,包括图像字幕数据集(如YFCC)以及表格、图表和文档理解数据(如Docmatix)。
  • 在第三阶段监督微调数据中,加入了DeepSeek-VL2中的额外数据集,如MEME理解、中文对话数据和增强对话体验的数据集。

2、视觉生成

观察到Janus中使用的现实世界数据质量较低且噪声较大,导致文本到图像生成不稳定。Janus-Pro加入了约7200万合成美学数据样本,使现实数据与合成数据的比例达到1:1。这些合成数据的提示是公开可用的,实验表明,模型在合成数据上训练时收敛更快,生成的文本到图像输出不仅更稳定,而且美学质量显著提高。

模型扩展

Janus-Pro将模型规模从1.5B扩展到7B,验证了解耦视觉编码方法的可扩展性。使用更大的LLM时,多模态理解和视觉生成的损失收敛速度显著提高。进一步证明了解耦视觉编码方法的可扩展性。

实验

DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈-AI.x社区

DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈-AI.x社区

DeepSeek多模态大模型Janus、Janus-Pro模型架构及优化方法浅谈-AI.x社区

参考文献

  • janus:Janus:DecouplingVisualEncoding for Unified Multimodal Understanding and Generation,https://arxiv.org/pdf/2410.13848
  • janus_pro:https://github.com/deepseek-ai/Janus/blob/main/janus_pro_tech_report.pdf


本文转载自公众号大模型自然语言处理  作者:余俊晖

原文链接:​​https://mp.weixin.qq.com/s/nuYh0xqN5JUWVgPuA7g6uQ​

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
收藏
回复
举报
回复
相关推荐