新增: DeepSeek 全部 33 篇官方论文(原文 PDF 走 Git LFS + 中文精读笔记与索引)
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
# DeepSeek-VL:面向真实世界视觉语言理解的开源多模态大模型
|
||||
|
||||
> **原文标题**:DeepSeek-VL: Towards Real-World Vision-Language Understanding
|
||||
> **arXiv**:[2403.05525](https://arxiv.org/abs/2403.05525) | **发布**:8 Mar 2024(最后修订 11 Mar 2024, v2)
|
||||
> **作者/机构**:Haoyu Lu、Wen Liu、Bo Zhang(共同一作,Bo Zhang 为项目负责人)等 15 人,DeepSeek-AI(深度求索)
|
||||
> **原文 PDF**:[01-DeepSeek-VL-2403.05525.pdf](./01-DeepSeek-VL-2403.05525.pdf)
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
我们提出 DeepSeek-VL,一个面向真实世界视觉与语言理解应用的开源视觉语言(Vision-Language, VL)模型。我们的方法围绕三个关键维度展开:
|
||||
|
||||
- **数据构建**:力求数据多样、可扩展并广泛覆盖真实场景,包括网页截图、PDF、OCR、图表以及知识型内容(专家知识、教科书)。此外,我们从真实用户场景出发构建用例分类体系(use case taxonomy),并据此构建指令微调数据集,该数据集显著提升了模型在实际应用中的用户体验。
|
||||
- **模型架构**:考虑到效率与大多数真实场景的需求,DeepSeek-VL 采用混合视觉编码器(hybrid vision encoder),能在固定 token 预算内高效处理高分辨率图像(1024 × 1024),同时保持相对较低的计算开销,确保模型在各视觉任务中捕捉关键的语义与细节信息。
|
||||
- **训练策略**:我们认为优秀的视觉语言模型首先应具备强大语言能力。为确保预训练期间 LLM 能力不被破坏,我们研究了一种有效的 VL 预训练策略:从训练一开始就纳入语言模型训练,并谨慎管理视觉与语言模态间的竞争关系。我们以文本为起点,逐步调整比例,以促成两种模态的均衡融合。
|
||||
|
||||
DeepSeek-VL 系列(1.3B 与 7B 模型)在真实应用中展现出作为视觉语言聊天机器人的优越用户体验,在同等规模下于广泛视觉语言基准上取得最先进或具竞争力的性能,同时在语言类基准上保持稳健表现。我们已将两个模型公开,以促进基于该基础模型的创新。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **真实场景数据与用例分类体系**:针对开源模型多以学术数据集拼接微调、benchmark 分数好看但真实体验不佳的问题,把预训练数据划分为图文交错、图像描述、表格图表、Web 代码、场景文字 OCR、文档 OCR、纯文本七大类,并从网上收集 GPT-4V 与 Gemini 的真实测试用例,整理成覆盖识别、转换、分析、推理、评估、安全、多图的分类体系,据此构造含中文的自研 SFT 数据与评测集。
|
||||
2. **固定 token 预算下的混合视觉编码器**:单用 SigLIP 这类 CLIP 系编码器既有「CLIP 盲对」(CLIP-blind pairs)的语义编码歧义,又受限于 384 × 384 等低分辨率、难以应付密集 OCR 与视觉定位;故并联 SigLIP-L(384 × 384,语义)与 SAM-B(1024 × 1024,细节),把 1024 × 1024 图像压到 576 个 2048 维视觉 token。
|
||||
3. **保语言的联合 VL 预训练策略**:发现直接以多模态数据训练 LLM 会造成灾难性遗忘,遂引入大体量语言数据联合训练(语言:多模态约 7:3),并提出「模态预热」(modality warm-up)以使两模态均衡发展。
|
||||
4. **打通三阶段流水线并可扩展到 7B**:适配器预热 → 联合 VL 预训练 → 监督微调;针对 1.3B 生成式指标剧烈波动、无法监督训练的问题,改用多选题选项困惑度并在预训练中混入少量 SFT 数据,形成「小模型试错、结论迁移到大模型」的路径。
|
||||
5. **开源 1.3B 与 7B 双规模模型**:7B 在同规模开源模型中于 MMB 73.2、MMC 72.8、SEED 70.4、MathVista 36.1 领先,SeedBench 70.4 逼近 GPT-4V 的 71.6;1.3B 以不足一半参数(1.3B vs 2.7B)在 MMB 上超过同量级开源模型,语言基准亦基本不退化(MMLU 52.4 高于 DeepSeek-LLM-7B 的 49.4)。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 混合视觉编码器与视觉语言适配器
|
||||
|
||||
痛点是:CLIP 系(含 SigLIP)编码器面向语义级表示且存在编码歧义——视觉上明显不同的图像可能被编码得相似,即「CLIP 盲对」;其分辨率也偏低(224/336/384/512),难以支撑密集 OCR 与视觉定位这类细粒度低层任务。故模型并联两个编码器:**SigLIP-L** 以 384 × 384 输入提供语义特征,输出 $576 \times 1024$ 特征图;**SAM-B** 是以 ViTDet 为预训练主干的纯视觉自监督编码器,接收 1024 × 1024 输入得到 $64 \times 64 \times 256$ 特征图,适配器先插值到 $96 \times 96 \times 256$,再经两层 stride 为 2 的卷积得到 $24 \times 24 \times 1024$ 并 reshape 为 $576 \times 1024$,用卷积下采样把高分辨率分支对齐到低分辨率分支的长度。
|
||||
|
||||
两路特征沿嵌入维度拼接成 576 个 2048 维视觉 token,经 GeLU 激活后接入语言模型;取 576 个 token 是为兼顾表征丰富度与 token 经济性,使图文交错与多轮推理可行。适配器是**两层的混合 MLP(hybrid MLP)**:高、低分辨率特征各先过一个独立单层 MLP,拼接后再经一层 MLP 变换到 LLM 输入空间。
|
||||
|
||||
### 3.2 语言模型与并行训练基础设施
|
||||
|
||||
语言模型基于 DeepSeek LLM,微观结构沿用 LLaMA:Pre-Norm + RMSNorm,FFN 用 SwiGLU、中间层维度 $\frac{8}{3}d_{model}$,位置编码用旋转位置嵌入,与 DeepSeek-LLM 共用 tokenizer。为做语言与多模态联合预训练,论文不从零训练语言模型,而是**从 DeepSeek 预训练模型的中途 checkpoint 继续预训练**:1B 版本来自约 5000 亿文本 token 的 DeepSeek-LLM-1B,7B 版本来自约 2 万亿文本 token 的 DeepSeek-LLM-7B。
|
||||
|
||||
训练与评测使用 HAI-LLM 框架:把视觉编码器与文本嵌入视为单一模块作为第一层以复用流水线并行;该层不适合标准张量并行,但计算量远小于上层 Transformer 块,故在所有张量并行 rank 上重算其前向;又因各层耗时不均,重新划分各 rank 的层分配以改善均衡与吞吐。上层与 DeepSeek-LLM 一致,可照搬 Megatron 式 3D 并行与计算通信重叠。开销为:7B 在 64 节点 × 8 张 A100 上训练 5 天,1B 在 16 节点 7 天。
|
||||
|
||||
### 3.3 三阶段训练流水线
|
||||
|
||||
训练分三阶段:适配器预热、联合视觉语言预训练、监督微调(论文 Figure 3);全流程只做视觉理解,且只在语言部分计算下一 token 预测损失。
|
||||
|
||||
**阶段 1(适配器预热)**:目的是建立视觉与语言元素在嵌入空间中的概念连接。与 LLaVA、Instruct-BLIP 一致,冻结视觉编码器与 LLM,只训练适配器,数据为 ShareGPT4V 的 125 万图文对加 250 万文档 OCR 渲染对。论文还质疑「数据规模定律在此阶段是否成立」:因适配器容量远小于 LLM,实验显示扩大数据规模无收益甚至更差,故在阶段 2 解冻 LLM。
|
||||
|
||||
**阶段 2(联合 VL 预训练)**:冻结视觉编码器,优化语言模型与适配器。直接用纯多模态数据(多模态:语言 = 100%:0%)时,多模态指标缓慢上升而语言指标急剧下降;论文归因于多模态语料过于简单、与语言数据分布差异大,加上两模态存在竞争关系,使 LLM 灾难性遗忘。对策是混入大比例语言数据,实验(1B)给出三条结论——加入语言数据显著缓解语言能力下滑;且不明显损失多模态性能;各模态表现与其数据占比强相关,印证竞争关系。最终取语言:多模态约为 7:3。
|
||||
|
||||
**阶段 2 的规模化**:7B 直接迭代成本过高,故先在 1.3B 上试错再放大,并发现 1.3B 的相当一部分结论(如编码器设计)可通过 SFT 迁移到 7B。但 1.3B 生成式指标波动剧烈,根因是容量有限且数据中没有 SFT 数据——模型即使「知道」正确选项也难以准确生成。对策有两条:用多选题选项困惑度(Multi-choice PPL)监控进度,即把 prompt、图像与各候选答案一并输入,算各答案位置(A/B/C/D)的困惑度取最低者为预测;同时在数据中以极小比例引入 SFT 数据,获得基本指令跟随能力。
|
||||
|
||||
**阶段 3(监督微调)**:用 SFT 数据优化语言模型、适配器与混合视觉编码器(受显存限制 SAM-B 保持冻结),仅监督答案与特殊 token、掩蔽 system 与 user prompt;数据中混合纯文本对话数据以兼顾对话通用性,得到交互式 DeepSeek-VL-Chat。
|
||||
|
||||
**关键超参**:阶段 1 学习率 $1.0\times10^{-3}$(Cosine),阶段 2 为 1B 用 $3\times10^{-5}$、7B 用 $4.2\times10^{-5}$(Step),阶段 3 为 $2.0\times10^{-5}$(Cosine);优化器 AdamW($\beta_1=0.9,\beta_2=0.95$),权重衰减 0.0,梯度裁剪 1.0;训练步数 1B 为 15000/96000/10000、7B 为 15000/42000/10000;batch size 为 256/1024/256(1B)与 256/2304/256(7B);序列长度阶段 1 为 512、阶段 2 与 3 为 4096,仅阶段 2 启用序列打包,仅 7B 的阶段 2、3 启用流水线并行。
|
||||
|
||||
### 3.4 消融实验中的设计取舍
|
||||
|
||||
- **模态分组训练**:batch 级别混合两种模态会因反向传播等待最慢样本而大幅降低效率,纯语言数据被迫等待多模态样本。改为在每个全局步按模态分组采样(一个 batch 要么全是语言、要么全是多模态),性能不降而效率提升 20%。
|
||||
- **模态预热**:一开始就按固定比例混入多模态数据会让模型不稳定,故把语言比例初始设为 1 再逐步降到目标值(如 0.7)。该策略既防止训练初期语言能力大幅下滑,又让后期语言与多模态表现都更好。
|
||||
- **视觉编码器选择**:把阶段 2 步数减到 8000 后比较训练损失,加入纯视觉自监督编码器可显著降低损失,故采用 SigLIP + SAM。
|
||||
- **视觉特征融合与适配器结构**:沿序列维度拼接可能更好但序列变长;序列长度不变时,把特征沿图像宽、高堆叠以缩短序列(Token Pooling - W/H)在多数指标上不如沿嵌入维度合并。适配器上,独立 MLP 可更精确调整特征分布、训练更平滑,共享 MLP 利于特征融合;论文采用「先各自单层、再拼接后共享一层」的混合策略,平均分 55.9,优于 Shared MLP 的 55.2 与 Separate MLP 的 54.5。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
| 基准 / 任务 | 本模型 | 对比对象 | 说明 |
|
||||
|---|---|---|---|
|
||||
| MMMU(综合理解) | 7B: 36.6;1.3B: 32.2 | GPT-4V 56.8;Gemini Pro 48.9;LLaVA-Next 7B 35.8 | 明显落后专有模型 |
|
||||
| CMMMU(中文综合) | 7B: 37.9;1.3B: 27.4 | GPT-4V 42.5;Yi-VL 6B 35.8;CogVLM 7B 24.8 | 同规模开源中领先 |
|
||||
| MMBench (MMB) | 7B: 73.2;1.3B: 64.6 | LLaVA-Next 7B 67.4;Qwen-VL-Chat 7B 60.6;GPT-4V 75.0 | 同规模开源最优 |
|
||||
| MMBench-CN (MMC) | 7B: 72.8;1.3B: 61.3 | Qwen-VL-MAX 76.4;LLaVA-Next 7B 60.0 | 中文能力突出 |
|
||||
| SeedBench (SEED) | 7B: 70.4;1.3B: 66.7 | GPT-4V 71.6;LLaVA-Next 13B 71.9 | 逼近专有模型 |
|
||||
| OCRBench | 7B: 456;1.3B: 409 | GPT-4V 659;LLaVA-1.5 13B 331 | 远低于 GPT-4V,但高于 13B 开源 |
|
||||
| POPE(幻觉) | 7B: 88.1;1.3B: 87.6 | LLaVA-Next 13B 86.7;VILA 13B 84.2 | 开源对比中最高 |
|
||||
| MathVista | 7B: 36.1;1.3B: 31.1 | GPT-4V 47.8;LLaVA-Next 13B 35.3 | 开源第一但差距明显 |
|
||||
| MMVet | 7B: 41.5;1.3B: 34.8 | Qwen-VL-MAX 61.8;GPT-4V 49.9 | 落后专有模型 |
|
||||
| HellaSwag(语言) | 7B Chat: 68.4 | DeepSeek-LLM-7B Chat: 68.5 | 基本持平、无退化 |
|
||||
| MMLU(语言) | 7B Chat: 52.4 | DeepSeek-LLM-7B Chat: 49.4 | 多模态训练后反而更高 |
|
||||
| GSM8K(数学) | 7B Chat: 55.0 | DeepSeek-LLM-7B Chat: 63.0 | 数学能力有下降 |
|
||||
| MBPP(代码) | 7B Chat: 35.2 | DeepSeek-LLM-7B Chat: 35.2 | 完全持平 |
|
||||
| AGIEval(考试) | 7B Chat: 27.8 | DeepSeek-LLM-7B Chat: 19.3 | 明显提升 |
|
||||
| 三阶段消融(平均分) | 阶段 1+2+3: 62.4 | 仅阶段 1+3: 57.4;仅阶段 2+3: 61.7 | 联合预训练有效,适配器预热亦有价值(MMB 64.3 / MMC 61.3 / SEED 66.7 / POPE 87.6 / MMMU 32.2) |
|
||||
| 阶段 1 数据规模化 | 2K 步平均 57.5 | 8K: 55.1;20K: 55.5;80K: 55.6 | 扩数据无收益,证明适配器容量受限 |
|
||||
| 人评(100 题、7 大类) | DeepSeek-VL-7B | InternLM-XComposer2-VL、CogVLM、GPT-4V | GPT-4V 在多数维度最强,开源模型在逻辑推理上差距大;DeepSeek-VL-7B 整体更好,在识别、转换与常识推理上接近 GPT-4V |
|
||||
| GPT-4V 作为裁判(99 样本) | DeepSeek-VL | Fuyu-8B、CogVLM-17B、InternLM-XComposer2-VL、GPT-4V | 对比开源多模态模型时超过 60% 的样本被判更优,与专有模型相比相当 |
|
||||
|
||||
综合来看,DeepSeek-VL-7B 在多数同规模开源模型中领先,其中 MMB、MMC、SeedBench 等自然图像理解基准甚至逼近专有模型(SeedBench 70.4 vs GPT-4V 71.6),数学逻辑类基准则超过全部开源对比模型但仍明显落后 GPT-4V(MathVista 36.1 vs 47.8),论文归因于基座模型规模差异。1.3B 以接近一半的参数在 MMB 上超过同量级开源模型,MathVista 也接近 7B 开源模型。语言侧基本不退化,MMLU 与 AGIEval 甚至超过纯文本的 DeepSeek-LLM-7B,但 GSM8K 下降,说明两模态仍存在竞争关系。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:论文提出 1.3B 与(结论处写作 6.7B 参数的)7B 两个规模的多模态大语言模型系列,揭示主流「投影器式」预训练范式的局限,转而以联合视觉语言预训练为核心,通过预热数据比例与混合视觉编码器,在不损害 LLM 语言能力的前提下高效处理 1024 × 1024 图像,视觉基准表现优异且语言基准强健;模型已公开。
|
||||
- **局限性**:论文自述三处——1.3B 容量有限,阶段 2 生成式指标波动大、难以监督训练;7B 在 GSM8K 等数学任务下滑,论文归因于容量限制,称「更大的模型可能显著缓解该问题」;阶段 1 适配器容量受限,扩数据不带来收益。此外,阶段 3 因显存有限无法解冻 SAM-B。
|
||||
- **影响**:DeepSeek-VL 以「真实世界可用性」为设计标尺(网页截图、PDF、图表、OCR、知识型内容与用例分类体系驱动的 SFT 数据),提供了「预训练优先 + 保语言能力 + 固定 token 预算高分辨率」的可复制路线,并开源 1.3B/7B 权重。论文宣布将引入混合专家(Mixture of Experts, MoE)扩展到更大规模。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Vision-Language Model (VLM) | 视觉语言模型 |
|
||||
| Large Multimodal Model (LMM) | 大型多模态模型 |
|
||||
| Hybrid Vision Encoder | 混合视觉编码器 |
|
||||
| Vision-Language Adaptor / Projector | 视觉语言适配器/投影器 |
|
||||
| CLIP-blind pairs | CLIP 盲对 |
|
||||
| SigLIP | SigLIP(Sigmoid 损失训练的 CLIP 类视觉编码器) |
|
||||
| SAM (Segment Anything Model) | 分割一切模型 |
|
||||
| ViTDet | ViTDet 图像编码器 |
|
||||
| Visual Token | 视觉 token |
|
||||
| Interleaved Image-Text Data | 图文交错数据 |
|
||||
| Use Case Taxonomy | 用例分类体系 |
|
||||
| Supervised Fine-Tuning (SFT) | 监督微调 |
|
||||
| Modality Warmup | 模态预热 |
|
||||
| Modality Group Training | 模态分组训练 |
|
||||
| Catastrophic Forgetting | 灾难性遗忘 |
|
||||
| Multi-choice Perplexity (PPL) | 多选题困惑度评测 |
|
||||
| Visual Grounding | 视觉定位 |
|
||||
| Sequence Packing | 序列打包 |
|
||||
| Mixture of Experts (MoE) | 混合专家 |
|
||||
|
||||
(注:论文摘要与正文均以 1.3B / 7B 称呼该系列,仅第 5 章结论处写作「1.3B 和 6.7B 参数」;本文正文统一使用 7B。)
|
||||
Binary file not shown.
@@ -0,0 +1,140 @@
|
||||
# Janus:解耦视觉编码的统一多模态理解与生成
|
||||
|
||||
> **原文标题**:Janus: Decoupling Visual Encoding for Unified Multimodal Understanding and Generation
|
||||
> **arXiv**:[2410.13848](https://arxiv.org/abs/2410.13848) | **发布**:17 Oct 2024
|
||||
> **作者/机构**:Chengyue Wu、Xiaokang Chen 等,DeepSeek-AI(深度求索),联合香港大学、北京大学
|
||||
> **原文 PDF**:[02-Janus-2410.13848.pdf](./02-Janus-2410.13848.pdf)
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
本文提出 Janus,一个统一了多模态理解与生成的自回归框架。以往研究通常让同一个视觉编码器同时承担这两项任务,例如 Chameleon。然而,由于多模态理解与生成所需的信息粒度不同,这种做法会导致性能次优,在多模态理解上尤为突出。为解决这一问题,我们将视觉编码解耦为相互独立的通路,同时仍使用单一、统一的 Transformer 架构进行处理。这种解耦不仅缓解了视觉编码器在理解与生成两种角色之间的冲突,还提升了框架的灵活性。例如,多模态理解组件与生成组件都可以独立选择最适合自身的编码方法。实验表明,Janus 超越了以往的统一模型,并达到或超过了任务专用模型的性能。Janus 的简洁性、高灵活性与有效性,使其成为下一代统一多模态模型的有力候选。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **解耦视觉编码的统一框架**:把视觉编码拆成理解与生成两条独立通路,再由同一个自回归 Transformer 处理,以解决单一编码器兼顾两任务导致性能次优的问题;模型仅用交叉熵损失,无需特殊注意力掩码。
|
||||
2. **阐明冲突根源并给出证据**:理解需高层语义表征,生成需细粒度空间与纹理表征,共用同一表征空间必然折中;消融中仅做理解训练的 Exp-C 显著优于同等编码器的统一训练 Exp-B,证明共享编码器牺牲了理解能力。
|
||||
3. **1.3B 取得领先**:在 MMBench、SEED-Bench、POPE 上得 69.4、63.7、87.0,超过 7B 的 LLaVA-v1.5 与 Qwen-VL-Chat;MSCOCO-30K FID 8.53、GenEval 总体 61%,超过 DALL-E 2 与 SDXL。
|
||||
4. **统一训练几乎不损害单任务**:统一训练(Exp-D)与纯理解(Exp-E)、纯生成(Exp-F)性能相当;两侧编码器可各自升级,且易扩展到新模态。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 架构:两条视觉通路 + 一个统一 Transformer
|
||||
|
||||
三类输入分别独立编码,再交给同一个自回归 Transformer:文本用 LLM 内置分词器转成离散 ID;多模态理解用 SigLIP-Large-Patch16-384 提取高维语义特征,经理解适配器(两层 MLP)映射进 LLM 输入空间;视觉生成用 LlamaGen 的 VQ 分词器把图像转成离散 ID,由生成适配器把码本嵌入映射进同一空间(两路特征均先展平为一维)。文本预测复用内置预测头,图像预测用随机初始化的预测头,无需专门设计的注意力掩码。
|
||||
|
||||
解耦动因:理解需高层语义并做语义推理,生成需细粒度空间结构与纹理,两者共用同一表征空间必然冲突折中,这正是以往统一模型理解能力落后于专用模型的原因。
|
||||
|
||||
### 3.2 训练流程:三阶段
|
||||
|
||||
Stage I 冻结视觉编码器与 LLM,只训练两个适配器与图像预测头;Stage II 解冻 LLM 做统一预训练,混用纯文本、理解与生成数据,受 PixArt 启发先用 ImageNet-1k 学基础像素依赖、再用通用文生图数据提升开放域生成;Stage III 监督微调全部参数(生成编码器除外),只监督回答、掩掉 system 与 user 提示,且不按任务分别微调。
|
||||
|
||||
各阶段超参见 Table 1:
|
||||
|
||||
| 超参 | Stage I | Stage II | Stage III |
|
||||
|---|---|---|---|
|
||||
| 学习率 | $1.0\times 10^{-3}$ | $1\times 10^{-4}$ | $2.0\times 10^{-5}$ |
|
||||
| LR 调度 | Cosine | Constant | Constant |
|
||||
| 权重衰减 | 0.0 | 0.0 | 0.1 |
|
||||
| 梯度裁剪 | 1.0 | 1.0 | 1.0 |
|
||||
| 优化器 | AdamW ($\beta_1=0.9,\beta_2=0.95$) | 同左 | 同左 |
|
||||
| Warm-up 步数 | 300 | 5,000 | 0 |
|
||||
| 训练步数 | 10,000 | 180,000 | 24,000 |
|
||||
| 批大小 | 256 | 512 | 256 |
|
||||
| 数据比例(理解:文本:生成) | $1:0:1$ | $2:3:5$ | $7:3:10$ |
|
||||
|
||||
### 3.3 训练目标
|
||||
|
||||
交叉熵损失:
|
||||
|
||||
$$\mathcal{L}=-\sum_{i=1}\log P_{\theta}(x_{i}|x_{<i})$$
|
||||
|
||||
其中 $P(\cdot\mid\cdot)$ 为权重 $\theta$ 建模的条件概率。文本与多模态理解在文本序列上算损失,视觉生成只在图像序列上算损失,且不给不同任务设不同损失权重。
|
||||
|
||||
### 3.4 推理
|
||||
|
||||
采用下一 token 预测:文本与多模态理解顺序采样,图像生成使用无分类器引导(Classifier-Free Guidance, CFG)——训练时以 10% 概率把文本条件替换为 pad token 以获得无条件生成能力,推理时
|
||||
|
||||
$$l_{g}=l_{u}+s(l_{c}-l_{u})$$
|
||||
|
||||
$l_c$、$l_u$ 为有条件与无条件 logit,$s$ 为引导尺度,评测默认取 5。
|
||||
|
||||
### 3.5 可能的扩展
|
||||
|
||||
理解侧可换用更强的视觉编码器(如 EVA-CLIP、InternViT)而不必顾虑其生成能力,并用动态高分辨率支持任意分辨率;生成侧可用更细粒度编码器(如 MoVQGan)、生成专用损失(如 diffusion loss)或混合自回归与并行注意力以减少误差累积;点云、触觉、脑电等新模态可各配独立编码器。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
基础设置:LLM 为 DeepSeek-LLM(1.3B,最大序列长度 4096);理解编码器为 SigLIP-Large-Patch16-384;生成编码器码本 16,384、下采样 16 倍;图像统一 384×384;训练用 16 节点 × 8 张 A100(40GB),共 7 天。
|
||||
|
||||
**多模态理解(Table 2)**
|
||||
|
||||
| 模型 | LLM 参数 | POPE↑ | MME-P↑ | MMB↑ | SEED↑ | VQAv2↑ | GQA↑ | MMMU↑ | MM-Vet↑ |
|
||||
|---|---|---|---|---|---|---|---|---|---|
|
||||
| Janus(本文) | 1.3B | 87.0 | 1338.0 | 69.4 | 63.7 | 77.3 | 59.1 | 30.5 | 34.3 |
|
||||
| Show-o(统一) | 1.3B | 73.8 | 948.4 | - | - | 59.3 | 48.7 | 25.1 | - |
|
||||
| Chameleon(统一) | 7B | - | - | - | - | - | - | 22.4 | 8.3 |
|
||||
| LLaVA-v1.5(仅理解) | 7B | 85.9 | 1510.7 | 64.3 | 58.6 | 78.5 | 62.0 | 35.4 | 31.1 |
|
||||
| Qwen-VL-Chat(仅理解) | 7B | - | 1487.5 | 60.6 | 58.2 | 78.2 | 57.5 | - | - |
|
||||
| MobileVLM-V2(仅理解) | 2.7B | 84.7 | 1440.5 | 63.2 | - | - | 61.1 | - | - |
|
||||
| VILA-U(统一) | 7B | 85.8 | 1401.8 | - | 59.0 | 79.4 | 60.8 | - | 33.5 |
|
||||
|
||||
**视觉生成(Table 3:GenEval;Table 4:FID)**
|
||||
|
||||
| 模型 | 参数 | Single Obj. | Two Obj. | Counting | Colors | Position | Color Attri. | Overall↑ |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| Janus(本文) | 1.3B | 0.97 | 0.68 | 0.30 | 0.84 | 0.46 | 0.42 | 0.61 |
|
||||
| Show-o(统一) | 1.3B | 0.95 | 0.52 | 0.49 | 0.82 | 0.11 | 0.28 | 0.53 |
|
||||
| SDXL(仅生成) | 2.6B | 0.98 | 0.74 | 0.39 | 0.85 | 0.15 | 0.23 | 0.55 |
|
||||
| DALL-E 2(仅生成) | 6.5B | 0.94 | 0.66 | 0.49 | 0.77 | 0.10 | 0.19 | 0.52 |
|
||||
| Chameleon(统一) | 34B | - | - | - | - | - | - | 0.39 |
|
||||
|
||||
| 模型 | 参数 | COCO-30K FID↓ | MJHQ-30K FID↓ |
|
||||
|---|---|---|---|
|
||||
| Janus(本文) | 1.3B | 8.53 | 10.10 |
|
||||
| Show-o(统一) | 1.3B | 9.24 | 15.18 |
|
||||
| LWM(统一) | 7B | 12.68 | 17.77 |
|
||||
| VILA-U(统一,384) | 7B | - | 7.69 |
|
||||
| SDv1.5(仅生成) | 0.9B | 9.62 | - |
|
||||
| PixArt-α(仅生成) | 0.6B | 7.32 | - |
|
||||
| DALL-E 2(仅生成) | 6.5B | 10.39 | - |
|
||||
|
||||
**消融实验(Table 5)**
|
||||
|
||||
| Exp | 视觉编码器 | 训练任务 | POPE↑ | MMB↑ | SEED↑ | MMMU↑ | COCO-FID↓ |
|
||||
|---|---|---|---|---|---|---|---|
|
||||
| A | VQ Tokenizer | 理解 + 生成 | 60.1 | 35.0 | 34.9 | 24.7 | 8.72 |
|
||||
| B | 语义 Tokenizer | 理解 + 生成 | 82.4 | 52.7 | 54.9 | 26.6 | 7.11 |
|
||||
| C | 语义 Tokenizer | 仅理解 | 83.9 | 62.1 | 60.8 | 27.5 | - |
|
||||
| D | SigLIP + VQ(本文) | 理解 + 生成 | 87.0 | 69.4 | 63.7 | 30.5 | 8.53 |
|
||||
| E | SigLIP | 仅理解 | 85.9 | 70.6 | 64.8 | 28.8 | - |
|
||||
| F | VQ Tokenizer | 仅生成 | - | - | - | - | 8.92 |
|
||||
|
||||
同等规模下 Janus 全面领先:相比此前最好的统一模型 Show-o,MME 由 949 升至 1338(+41%),GQA 由 48.7 升至 59.1(+30%);对比大得多的专用模型仍具竞争力,在 POPE、MMBench、SEED Bench、MM-Vet 上超过 LLaVA-v1.5(7B),仅 MME-P(1338.0 vs 1510.7)、MMMU(30.5 vs 35.4)、VQAv2 与 GQA 略低。生成侧 GenEval 总体 61% 优于 Show-o(53%)、SDXL(55%)与 DALL-E 2(52%),Position(0.46)、Color Attri.(0.42)优势最大,但 Counting 仅 0.30(对手 0.49);COCO-30K FID 8.53 优于 Show-o、LWM、SDv1.5 与 DALL-E 2,却逊于 PixArt-α(7.32)与 RAPHAEL(6.61)。
|
||||
|
||||
消融说明三点:单一 VQ 分词器兼顾两任务(Exp-A)生成尚可但理解远逊;换用语义分词器(Exp-B)理解改善却仍不及 Exp-D,其生成反超 Exp-D,作者推测因语义 ID 更连贯且其编码器参数量显著更大;Exp-C 只做理解训练而理解显著优于 Exp-B,证明单一编码器确在两者间折中并牺牲理解。统一训练(Exp-D)与纯理解、纯生成相当,说明生成能力几乎不损害理解。定性上 Janus 在梗图理解中能读准文字与情绪,明显优于 Chameleon 与 Show-o,文生图也更贴合提示词;附录显示其具备涌现的多语言文生图能力。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:Janus 简洁、统一且可扩展,核心是解耦理解与生成的视觉编码,以缓解两者对编码器的不同需求;实验验证其有效性与领先性能。
|
||||
- **局限性**:论文未设独立的局限性章节,作者未集中自述。从正文可归纳:主实验仅用普通 VQ 分词器(语义分词器只用于消融)、图像固定 384×384、语言模型仅 1.3B;Counting(0.30)弱于部分对比模型;Exp-B 生成优于 Exp-D,说明生成侧编码器仍有空间。
|
||||
- **影响**:首次明确统一多模态框架中视觉编码应当解耦,给出可复制范式——两侧各用最优编码器、共享同一个自回归 Transformer;其涌现的多语言文生图能力与多模态扩展路径指向通用基座模型。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Unified Multimodal Understanding and Generation | 统一多模态理解与生成 |
|
||||
| Decoupling Visual Encoding | 解耦视觉编码 |
|
||||
| Autoregressive Framework (AR) | 自回归框架 |
|
||||
| Vision Encoder | 视觉编码器 |
|
||||
| Understanding Adaptor / Generation Adaptor | 理解适配器 / 生成适配器 |
|
||||
| VQ Tokenizer | 向量量化分词器 |
|
||||
| Codebook / Codebook Embedding | 码本 / 码本嵌入 |
|
||||
| Semantic Tokenizer | 语义分词器 |
|
||||
| Classifier-Free Guidance (CFG) | 无分类器引导 |
|
||||
| Cross-Entropy Loss | 交叉熵损失 |
|
||||
| Supervised Fine-tuning (SFT) | 监督微调 |
|
||||
| Fréchet Inception Distance (FID) | 弗雷歇初始距离 |
|
||||
| Compositional Capability | 组合能力 |
|
||||
| Dynamic High-Resolution | 动态高分辨率 |
|
||||
| Emergent Capability | 涌现能力 |
|
||||
Binary file not shown.
@@ -0,0 +1,115 @@
|
||||
# DeepSeek-VL2:面向高级多模态理解的混合专家视觉语言模型
|
||||
|
||||
> **原文标题**:DeepSeek-VL2: Mixture-of-Experts Vision-Language Models for Advanced Multimodal Understanding
|
||||
> **arXiv**:[2412.10302](https://arxiv.org/abs/2412.10302) | **发布**:13 Dec 2024
|
||||
> **作者/机构**:Zhiyu Wu、Xiaokang Chen 等 27 人,通讯作者 Chong Ruan — DeepSeek-AI(深度求索)
|
||||
> **原文 PDF**:[03-DeepSeek-VL2-2412.10302.pdf](./03-DeepSeek-VL2-2412.10302.pdf)
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
我们提出了 DeepSeek-VL2,一个先进的大型混合专家(Mixture-of-Experts, MoE)视觉语言模型系列,它通过两项关键的重大升级,显著改进了其前代模型 DeepSeek-VL。在视觉部分,我们引入了一种动态分块(dynamic tiling)视觉编码策略,专为处理具有不同长宽比的高分辨率图像而设计。在语言部分,我们采用了带有多头潜在注意力(Multi-head Latent Attention, MLA)机制的 DeepSeekMoE 模型,该机制将键值(Key-Value, KV)缓存压缩为潜在向量,从而实现高效推理与高吞吐。在一个经过改进的视觉语言数据集上训练后,DeepSeek-VL2 在多种任务上展现出卓越的能力,包括但不限于视觉问答、光学字符识别、文档/表格/图表理解以及视觉定位。我们的模型系列由三个变体组成:DeepSeek-VL2-Tiny、DeepSeek-VL2-Small 与 DeepSeek-VL2,其激活参数量分别为 1.0B、2.8B 和 4.5B。与现有的开源稠密模型和基于 MoE 的模型相比,DeepSeek-VL2 在激活参数量相当或更少的情况下,取得了有竞争力或最先进(state-of-the-art)的性能。代码与预训练模型已在 https://github.com/deepseek-ai/DeepSeek-VL2 公开发布。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **动态分块视觉编码**:用单个 SigLIP-SO400M-384 取代前代 $384/1024$ 双分辨率双编码器,按长宽比切块并附加全局缩略图,摆脱固定 $1024\times1024$ 限制,提升超高清与极端长宽比场景的细粒度理解。
|
||||
2. **高效率 MoE 语言模型**:DeepSeekMoE 稀疏架构 + MLA(KV 缓存压缩为潜在向量)降低算力与显存、提升吞吐;总参数 3B/16B/27B,语言激活参数仅 0.57B/2.4B/4.1B。
|
||||
3. **数据升级带来新能力**:预训练约 800B 图文 token(VL:纯文本约 70%:30%),对图注、VQA、OCR、表格图表与推理数据重生成与清洗,新增视觉定位与 GUI 感知。
|
||||
4. **以少胜多**:激活 4.5B 的模型取得 DocVQA 93.3、ChartQA 86.0、InfoVQA 78.1、TextVQA 84.2、OCRBench 811,多项超过 GPT-4o,定位基准领先同规模模型。
|
||||
5. **部署门槛低**:三个模型可分别单卡部署在 10GB/40GB/80GB 显存 GPU 上。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 整体架构
|
||||
|
||||
沿用前代的 LLaVA 式仅解码器架构,由视觉编码器、视觉语言适配器与 MoE 语言模型组成;相对 DeepSeek-VL 仅两处改动——动态分块策略应对高分辨率输入,带 MLA 的 DeepSeekMoE 提升效率。
|
||||
|
||||
### 3.2 动态分块策略(Dynamic Tiling)
|
||||
|
||||
前代把视觉特征固定在 $384\times384$ 与 $1024\times1024$ 两档,难以处理更大尺寸与极端长宽比图像。DeepSeek-VL2 定义候选分辨率集合
|
||||
|
||||
$$C_{R}=\{(m\cdot 384,\ n\cdot 384)\mid m,n\in\mathbb{N},\ 1\leq m,n,\ mn\leq 9\}$$
|
||||
|
||||
其中 $m:n$ 为目标长宽比:对 $(H,W)$ 图像先缩放长边、再保持比例填充另一维,选择**填充面积最小**的候选;随后划为 $m_i\times n_i$ 个 $384\times384$ 局部块加 1 个全局缩略图块,由单个 SigLIP-SO400M-384 编码全部 $(1+m_i\times n_i)$ 个块,每块得 $27\times27=729$ 个 1152 维嵌入。图像多于 2 张时关闭该策略以控制上下文长度。
|
||||
|
||||
### 3.3 视觉语言适配器
|
||||
|
||||
用 $2\times2$ 像素重排把每块 token 压到 $14\times14=196$ 个,并用特殊 token 标记布局:缩略图块每行末补 14 个 `<tile_newline>`(共 210 个),局部块按 $(m_i\cdot14,\ n_i\cdot14)$ 网格排列、最后一列后追加 $m_i\cdot14$ 个 `<tile_newline>`,两者间插一个 `<view_separator>`;序列长度为
|
||||
|
||||
$$210+1+m_i\cdot14\times(n_i\cdot14+1)$$
|
||||
|
||||
最后经两层 MLP 投影进语言模型嵌入空间。
|
||||
|
||||
### 3.4 DeepSeekMoE 语言模型
|
||||
|
||||
MLA 压缩 KV 缓存以提升吞吐,MoE 稀疏计算只激活部分专家,训练时给每个专家加全局偏置项以低成本改善负载均衡。配置见下表:仅最大模型用 Sigmoid 路由并启用专家修正偏置,两个小模型仍是 Softmax 路由。
|
||||
|
||||
| 配置项 | VL2-Tiny | VL2-Small | VL2 |
|
||||
|---|---|---|---|
|
||||
| 词表大小 | 129,280 | 102,400 | 129,280 |
|
||||
| 嵌入维度 | 1,280 | 2,048 | 2,560 |
|
||||
| 注意力头数 | 10 | 16 | 32 |
|
||||
| 层数 | 12 | 27 | 30 |
|
||||
| 注意力类型 | 多头注意力 | MLA(rank=512) | MLA(rank=512) |
|
||||
| 路由专家数 / 共享专家数 | 64 / 2 | 64 / 2 | 72 / 2 |
|
||||
| 专家选择 Top-K | 6 | 6 | 6 |
|
||||
| 路由函数 | Softmax | Softmax | Sigmoid |
|
||||
| 专家修正偏置 | × | × | ✓ |
|
||||
|
||||
### 3.5 数据构建(对齐 / 预训练 / SFT)
|
||||
|
||||
对齐阶段仅用 ShareGPT4V(约 1.2M 图注与对话样本)训练 MLP 连接器。预训练按约 70% VL + 30% 纯文本(取自基础 LLM 语料)配比,VL 数据涵盖交错图文(含中文补充)、图像描述(公开数据质量参差,故结合 OCR 提示重新生成并按写作质量过滤)、OCR(公开数据与自建中英文档数据集)、视觉问答(文档、表格图表、网页转代码与视觉提示问答)、视觉定位(回答形如 `<|ref|>物体<|/ref|><|det|>[[x1,y1,x2,y2],…]<|/det|>`,坐标归一化到 0–999,并含负样本)与由 `<|grounding|>` 触发的带定位对话。SFT 针对公开 VQA「回答过短、OCR 质量差、内容幻觉」的问题重生成回答,并为 Tiny 变体中文夹带英文补充自建中文 QA;推理数据补详细过程且答案置于末尾,另有教科书问答、代码与纯文本指令数据。
|
||||
|
||||
### 3.6 训练流程与基础设施
|
||||
|
||||
三段式:冻结语言模型、只训视觉编码器与适配器 MLP 的**对齐**阶段;解冻全部参数、用约 800B 图文 token 的**预训练**阶段;只在答案与特殊 token 上算损失、掩蔽用户提示并混入 DeepSeek-V2 纯文本对话的 **SFT** 阶段——三阶段都只对文本 token 计算下一 token 预测损失。视觉编码器学习率乘数 0.1,权重衰减 0.1,梯度裁剪 1.0,优化器 AdamW($\beta_1=0.9,\beta_2=0.95$),调度为余弦、分段步进与常数,序列长度 4096。基于 HAI-LLM 采用流水线、张量与专家并行;因视觉编码器居于流水线首段且与 LLM 层特性差异大,对其做细粒度层切分并在数据并行 rank 间做负载均衡,另为纯文本与含图批次准备两套流水线策略。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
评测涵盖 OCR 与文档类、通用与推理类基准及 RefCOCO 定位基准(InfoVQA 评测时候选分辨率放宽到 $mn\leq18$)。
|
||||
|
||||
| 基准 / 任务 | 本模型 | 对比对象 | 说明 |
|
||||
|---|---|---|---|
|
||||
| DocVQA (test) | VL2 93.3 / Small 92.3 / Tiny 88.9 | GPT-4o 92.8;Claude 3.5 Sonnet 95.2;InternVL2-8B 91.6;Qwen2-VL-7B 94.5 | 激活 4.5B 超过 GPT-4o 与 InternVL2-8B |
|
||||
| ChartQA (test) | VL2 86.0 / Small 84.5 / Tiny 81.0 | GPT-4o 85.7;Claude 3.5 Sonnet 90.8;InternVL2-8B 83.3;Qwen2-VL-7B 83.0 | 超过 GPT-4o,低于 Claude 3.5 Sonnet |
|
||||
| InfoVQA (test) | VL2 78.1 / Small 75.8 / Tiny 66.1 | GPT-4o 79.2;Gemini-1.5-Pro 80.1;InternVL2-8B 74.8;Qwen2-VL-7B 76.5 | 开源模型中最优,仍低于闭源最强 |
|
||||
| TextVQA (val) | VL2 84.2 / Small 83.4 / Tiny 80.7 | GPT-4o 77.4;Qwen2-VL-7B 84.3;InternVL2-8B 77.4 | 明显超过 GPT-4o |
|
||||
| OCRBench (test) | VL2 811 / Small 834 / Tiny 809 | GPT-4o 736;Gemini-1.5-Pro 754;Claude 3.5 Sonnet 788;Qwen2-VL-7B 845;MiniCPM-V2.6 852(CoT) | Small 以 2.8B 激活超过多数 7–8B 模型 |
|
||||
| MMStar (test) | VL2 61.3 / Small 57.0 / Tiny 45.9 | InternVL2-8B 61.5;Qwen2-VL-7B 60.7;GPT-4o 63.9 | 与 8B 级开源模型持平 |
|
||||
| AI2D | VL2 81.4 / Small 80.0 / Tiny 71.6 | InternVL2-8B 83.8;Qwen2-VL-7B 83.0;GPT-4o 94.2 | 低于同规模最强开源模型 |
|
||||
| MMMU (val) | VL2 51.1 / Small 48.0 / Tiny 40.7 | InternVL2-8B 51.8;Qwen2-VL-7B 54.1;GPT-4o 69.1;DeepSeek-VL 7B 36.6 | 相比前代大幅提升 |
|
||||
| MME (sum) | VL2 2,253 / Small 2,123 / Tiny 1,915 | GPT-4o 2,329;Qwen2-VL-7B 2,327;MiniCPM-V2.6 2,348(CoT) | 同规模组中最高 |
|
||||
| MMBench / V1.1 | VL2 83.1(en)、79.6(cn)、79.2(V1.1) | Qwen2-VL-7B 83.0 / 80.5;GPT-4o 83.4 / 82.1 / 82.2 | 与 7–8B 模型相当 |
|
||||
| MMT-Bench | VL2 63.6 / Small 62.9 / Tiny 53.2 | Qwen2-VL-7B 63.7;InternVL2-8B 60.0 | 基本追平 7B 稠密模型 |
|
||||
| RealWorldQA | VL2 68.4 / Small 65.4 / Tiny 64.2 | Qwen2-VL-7B 70.1;InternVL2-8B 64.4;GPT-4o 75.4 | 小幅落后 Qwen2-VL-7B |
|
||||
| MathVista (testmini) | VL2 62.8 / Small 60.7 / Tiny 53.6 | Qwen2-VL-7B 58.2;InternVL2-8B 58.3;GPT-4o 63.8 | 超过所有列出的开源模型 |
|
||||
| RefCOCO (val/testA/testB) | VL2 95.1 / 96.7 / 92.7;Small 93.9 / 95.3 / 91.3 | Qwen2-VL-7B 91.7 / 93.6 / 87.3;Ferret-v2-7B 92.8 / 94.7 / 88.7;Florence-2-L 93.4 / 95.3 / 92.0 | 全面领先同规模 VLM |
|
||||
| RefCOCO+ (val/testA/testB) | VL2 91.2 / 94.9 / 87.4 | Qwen2-VL-7B 85.8 / 90.5 / 79.5;ONE-PEACE 88.8 / 92.2 / 83.2 | 领先幅度显著 |
|
||||
| RefCOCOg (val/test) | VL2 92.8 / 92.9 | Qwen2-VL-7B 87.3 / 87.8;Florence-2-L 91.2 / 91.7 | 领先幅度显著 |
|
||||
|
||||
受益于 MoE 架构,DeepSeek-VL2 以更少激活参数取得相当或更好的性能。OCR 与文档/表格/图表理解是最强项:激活 4.5B 的模型在 DocVQA、ChartQA、TextVQA 上超过 GPT-4o,激活 2.8B 的 Small 在 OCRBench 上(834)高于 Claude 3.5 Sonnet(788)。视觉定位全面领先:RefCOCO 系列各分项均超过所列 VLM 与专用定位模型,仅 Florence-2-L 在 RefCOCO testA(95.3)略高。推理类基准与开源最强模型互有胜负:AI2D(81.4)低于 InternVL2-8B(83.8),RealWorldQA(68.4)略低于 Qwen2-VL-7B(70.1),与 GPT-4o 在 MMMU(51.1 vs 69.1)上差距明显。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:DeepSeek-VL2 是 MoE 视觉语言模型的增强版,总参数 3B/16B/27B、激活参数 1.0B/2.8B/4.5B,可分别单卡部署于 10GB/40GB/80GB 显存 GPU;核心为动态分块视觉编码策略,代码与模型全部开源。
|
||||
- **局限性**:作者自述三点——上下文窗口每次对话仅支持少量图像;面对模糊图像或未见物体偶发出错;视觉感知出色但**推理能力仍需加强**。定性研究还提到创意讲故事需要更多元体裁与情节,与安全性要求存在张力。
|
||||
- **影响**:以「稀疏激活 + MLA 压缩 KV 缓存 + 动态分块编码」的组合,DeepSeek-VL2 证明激活参数远小于同性能稠密模型时即可达到或超越 SOTA,把强多模态能力的部署门槛降到单张 GPU,并为具身智能、GUI 智能体等方向提供视觉定位基础。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Mixture-of-Experts (MoE) | 混合专家 |
|
||||
| Vision-Language Model (VLM) | 视觉语言模型 |
|
||||
| Dynamic Tiling Strategy | 动态分块策略 |
|
||||
| Vision Encoder | 视觉编码器 |
|
||||
| Vision-Language Adaptor | 视觉语言适配器 |
|
||||
| Multi-head Latent Attention (MLA) | 多头潜在注意力 |
|
||||
| Key-Value (KV) Cache | 键值缓存 |
|
||||
| Activated Parameters | 激活参数 |
|
||||
| Pixel Shuffle | 像素重排 |
|
||||
| Visual Grounding | 视觉定位 |
|
||||
| Grounded Conversation | 带定位的对话 |
|
||||
| In-context Visual Grounding | 上下文视觉定位 |
|
||||
| Optical Character Recognition (OCR) | 光学字符识别 |
|
||||
| Supervised Fine-Tuning (SFT) | 监督微调 |
|
||||
| Expert Parallelism / Pipeline Parallelism | 专家并行 / 流水线并行 |
|
||||
Binary file not shown.
@@ -0,0 +1,102 @@
|
||||
# Janus-Pro:以数据与模型规模扩展实现统一的多模态理解与生成
|
||||
|
||||
> **原文标题**:Janus-Pro: Unified Multimodal Understanding and Generation with Data and Model Scaling
|
||||
> **arXiv**:[2501.17811](https://arxiv.org/abs/2501.17811) | **发布**:29 Jan 2025
|
||||
> **作者/机构**:Xiaokang Chen, Zhiyu Wu, Xingchao Liu, Zizheng Pan, Wen Liu, Zhenda Xie, Xingkai Yu, Chong Ruan(DeepSeek-AI,深度求索)
|
||||
> **原文 PDF**:[04-Janus-Pro-2501.17811.pdf](./04-Janus-Pro-2501.17811.pdf)
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
在本工作中,我们提出 Janus-Pro,它是此前工作 Janus 的进阶版本。具体而言,Janus-Pro 引入了(1)优化的训练策略、(2)扩展的训练数据,以及(3)向更大模型规模的扩展。借助这些改进,Janus-Pro 在多模态理解与文本到图像的指令跟随能力两方面均取得了显著进展,同时也提升了文本到图像生成的稳定性。我们希望这项工作能够启发该领域的进一步探索。代码与模型均已公开。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **优化训练策略,消除算力浪费**:把 Janus 三阶段训练中的重排——延长 Stage I、在 Stage II 直接使用常规文生图数据而丢弃 ImageNet 数据、并把 Stage III 的多模态/纯文本/文生图数据配比从 7:3:10 改为 5:1:4;原策略把 Stage II 中 66.67% 的文生图训练步数花在仅用类别名做提示的 ImageNet 上,该设计被实验证明次优且算力效率低下。
|
||||
2. **理解侧数据扩展约 9000 万样本**:Stage II 预训练参照 DeepSeek-VL2 增加图像描述(如 YFCC)以及表格、图表、文档理解(如 Docmatix)数据;Stage III 微调补充 MEME 理解、中文对话与增强对话体验的数据集,显著拓宽了任务覆盖与对话体验。
|
||||
3. **生成侧引入约 7200 万合成美学数据**:发现旧版所用真实数据质量低、噪声大,是文生图不稳定的根源;Janus-Pro 在统一预训练阶段将真实与合成数据比例调至 1:1,模型收敛更快、输出更稳定且美感显著提升,并获得了生成简单文字的能力。
|
||||
4. **验证视觉编码解耦的可扩展性**:从 1.5B LLM 扩展到 7B,发布 1B 与 7B 两个规模;更大模型在理解与生成的损失收敛速度上均明显加快,证明该架构具备良好可扩展性。
|
||||
5. **双重任务同时刷新 SOTA**:Janus-Pro-7B 在 MMBench 上取得 79.2(Janus 69.4、TokenFlow 68.9、MetaMorph 75.2),在 GenEval 上取得 0.80(Janus 0.61、DALL-E 3 0.67、Stable Diffusion 3 Medium 0.74),在不依赖外部扩散模型的前提下同时超越统一模型与部分任务专用模型。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 架构:为理解与生成解耦视觉编码
|
||||
|
||||
Janus-Pro 的架构与 Janus 完全一致,核心设计原则是**为多模态理解与视觉生成解耦视觉编码(decouple visual encoding)**。痛点在引言中被明确指出:多数统一模型让理解与生成共用同一个视觉编码器,而这两类任务所需的表征并不相同,结果往往牺牲多模态理解性能。
|
||||
|
||||
具体流程是:用彼此独立的编码方式把原始输入转成特征,再交给同一个自回归 Transformer 处理。
|
||||
|
||||
- **理解分支**:用 SigLIP 编码器提取图像的高维语义特征,把 $2\times 2$ 的网格特征展平为 $1\times 1$ 的序列,再通过 understanding adaptor 映射到 LLM 的输入空间。
|
||||
- **生成分支**:用 VQ tokenizer 把图像转成离散 ID,ID 序列展平为 $1\times 1$ 后,通过 generation adaptor 把每个 ID 对应的码本嵌入映射到 LLM 输入空间。
|
||||
- 两条特征序列拼接成统一的多模态特征序列送入 LLM;除 LLM 自带的预测头外,视觉生成任务额外使用一个随机初始化的预测头做图像预测。整个模型遵循自回归框架。
|
||||
|
||||
### 3.2 优化的训练策略(三处改动)
|
||||
|
||||
Janus 的三阶段流程为:Stage I 只训练 adaptor 与图像头;Stage II 统一预训练,除理解编码器与生成编码器外全部参数更新;Stage III 监督微调,在 Stage II 基础上进一步解锁理解编码器参数。论文指出这套流程存在问题并作了两处修改:
|
||||
|
||||
- **Stage I 训练更久(Longer Training in Stage I)**:增加 Stage I 步数,让模型在 ImageNet 上得到充分训练。作者发现,即使 LLM 参数冻结,模型也能有效建模像素依赖、按类别名生成合理图像——正因如此,原本占用 Stage II 大量步数的 ImageNet 训练可以前移。
|
||||
- **Stage II 聚焦训练(Focused Training in Stage II)**:在 Stage II 丢弃 ImageNet 数据,直接使用常规文生图数据训练模型依据稠密描述生成图像,从而更高效地利用文生图数据,同时提升训练效率与最终性能。
|
||||
|
||||
第三处改动是 Stage III 的数据配比调整:多模态数据、纯文本数据、文生图数据由 7:3:10 改为 5:1:4。略微降低文生图数据占比后,视觉生成能力得以保持,而多模态理解性能得到提升。
|
||||
|
||||
### 3.3 数据扩展
|
||||
|
||||
- **多模态理解**:Stage II 预训练参照 DeepSeek-VL2 增加约 9000 万样本,涵盖图像描述数据集(如 YFCC)以及表格、图表、文档理解数据(如 Docmatix);Stage III 监督微调也引入 DeepSeek-VL2 的额外数据集,如 MEME 理解、中文对话数据以及旨在增强对话体验的数据集。
|
||||
- **视觉生成**:旧版 Janus 使用的真实世界数据质量不足、噪声显著,常导致文生图不稳定、观感较差。Janus-Pro 引入约 7200 万合成美学数据样本,使统一预训练阶段真实与合成数据比例达到 1:1;这些合成数据的提示词是公开可得的(如 [43])。实验表明模型在合成数据上收敛更快,文生图输出更稳定、美感明显提升。
|
||||
|
||||
### 3.4 模型扩展与训练细节
|
||||
|
||||
Janus-Pro 的 1B 与 7B 两个规模共享同一套超参结构(词表 100K、上下文窗口 4096),差异在嵌入维度(2048 vs 4096)、注意力头数(16 vs 32)与层数(24 vs 30)。三阶段学习率均为恒定型调度,分别为 $1.0\times10^{-3}$、$1.0\times10^{-4}$、$4.0\times10^{-5}$,权重衰减 0.0、梯度裁剪 1.0,优化器为 AdamW($\beta_1=0.9,\beta_2=0.95$)。训练步数为 20K/360K/80K(7B 的 Stage III 为 40K),批大小 256/512/128,warm-up 600/5000/0 步;三阶段数据配比依次为 1:0:3、2:3:5、5:1:4。
|
||||
|
||||
实现上,语言模型采用最大序列长度 4096 的 DeepSeek-LLM(1.5B 与 7B);理解侧视觉编码器为 SigLIP-Large-Patch16-384;生成编码器码本大小 16384、图像下采样 16 倍;两个 adaptor 均为两层 MLP。Stage II 采用早停策略,在 270K 步停止。所有图像分辨率统一为 $384\times384$:理解数据将长边缩放、短边用背景色(RGB 127,127,127)填充至 384;生成数据将短边缩放至 384、长边裁剪至 384。训练使用序列打包(sequence packing)提升效率,并在单步内按指定比例混合所有数据类型。整个训练过程基于 HAI-LLM 分布式框架,1.5B/7B 模型分别在 16/32 个节点(每节点 8 张 Nvidia A100 40GB)上耗时约 9/14 天。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
### 4.1 多模态理解(Table 3,↑ 越高越好)
|
||||
|
||||
| 基准 / 任务 | 本模型 | 对比对象 | 说明 |
|
||||
|---|---|---|---|
|
||||
| POPE ↑ | 87.4(7B)/86.2(1B) | Janus 87.0;TokenFlow-XL 86.8;ILLUME 88.5 | 与更大规模统一模型持平,仅略低于 ILLUME |
|
||||
| MME-Perception ↑ | 1567.1(7B)/1444.0(1B) | Janus 1338.0;TokenFlow-XL 1545.9;LLaVA-v1.5 1510.7 | 超越 13B 的 TokenFlow-XL,1B 版本也远超同量级 Show-o-512(1097.2) |
|
||||
| MMBench ↑ | 79.2(7B)/75.5(1B) | Janus 69.4;MetaMorph 75.2;TokenFlow-XL 68.9 | 统一模型中最高,1B 版本亦超过 8B 的 MetaMorph |
|
||||
| SEED ↑ | 72.1(7B)/68.3(1B) | ILLUME 72.9;MetaMorph 71.8;Janus 63.7 | 仅次于 ILLUME(7B),高于 TokenFlow-XL 的 68.7 |
|
||||
| GQA ↑ | 62.0(7B)/59.3(1B) | TokenFlow-XL 62.7;LLaVA-v1.5 62.0;Janus 59.1 | 唯一未超过 TokenFlow-XL 的理解基准 |
|
||||
| MMMU ↑ | 41.0(7B)/36.3(1B) | TokenFlow-XL 38.7;ILLUME 38.2;Janus 30.5 | 统一模型中最高 |
|
||||
| MM-Vet ↑ | 50.0(7B)/39.8(1B) | TokenFlow-XL 40.7;Emu3-Chat 37.2;ILLUME 37.0 | 领先幅度最大的一项,较 Janus 34.3 提升逾 15 分 |
|
||||
|
||||
### 4.2 文本到图像生成
|
||||
|
||||
| 基准 / 任务 | 本模型 | 对比对象 | 说明 |
|
||||
|---|---|---|---|
|
||||
| GenEval Overall ↑ | 0.80(7B)/0.73(1B) | SD3-Medium 0.74;DALL-E 3 0.67;Transfusion 0.63;Janus 0.61 | 超越所有统一模型与仅生成模型 |
|
||||
| GenEval 子项(7B) | Single 0.99/Two 0.89/Counting 0.59/Colors 0.90/Position 0.79/Color Attri. 0.66 | Janus 对应为 0.97/0.68/0.30/0.84/0.46/0.42 | 组合能力全面提升,Position 与颜色属性提升最显著 |
|
||||
| DPG-Bench Overall ↑ | 84.19(7B)/82.63(1B) | SD3-Medium 84.08;DALL-E 3 83.50;Emu3-Gen 80.60;Janus 79.68 | 稠密提示词语义对齐能力为全部方法中最高 |
|
||||
|
||||
Janus-Pro 在两个任务上同时取得领先:理解侧在 MMBench(79.2)、MMMU(41.0)、MM-Vet(50.0)上刷新统一模型纪录,7B 版本除 GQA 外在所有理解基准上都胜过 13B 的 TokenFlow-XL;生成侧 GenEval 0.80 与 DPG-Bench 84.19 均为最高分。论文把这一结果归因于视觉编码解耦缓解了理解与生成之间的冲突。相对薄弱之处在于 GQA 仍小幅落后 TokenFlow-XL(62.0 对 62.7)、SEED 略低于 ILLUME(72.1 对 72.9),且理解侧的绝对水平仍受 $384\times384$ 输入分辨率限制。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:本文从训练策略、数据与模型规模三方面改进了 Janus。这些改进使多模态理解与文本到图像指令跟随能力都获得显著提升,其中 7B 规模是首次把「视觉编码解耦」这一设计验证到更大模型上,并观察到理解与生成的损失收敛速度都明显加快,说明该路线具备良好的可扩展性。
|
||||
- **局限性**(作者自述):多模态理解方面,输入分辨率被限制在 $384\times384$,这影响了 OCR 等细粒度任务的表现;文本到图像生成方面,低分辨率叠加视觉 tokenizer 带来的重建损失,使生成的图像虽然语义丰富却仍缺乏精细细节,例如占图像空间很小的人脸区域可能细节不足。论文认为提高图像分辨率可以缓解这些问题。此外,作者也承认 Janus-Pro 相对前作仍有不足之处,需要用更大的模型与数据继续验证。
|
||||
- **影响**:论文把统一多模态模型的竞争维度从「架构巧妙」推进到「训练策略、数据配比与规模」的工程可复制层面——解耦视觉编码 + 三阶段训练 + 合成数据补齐,构成了一个相对简洁且已被 1B/7B 两个规模验证的方案。代码与模型公开,为后续统一理解与生成的研究提供了可复现的基线,同时也指出了分辨率与 tokenizer 重建损失是下一阶段的关键瓶颈。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Unified Multimodal Understanding and Generation | 统一多模态理解与生成 |
|
||||
| Decoupled Visual Encoding | 解耦视觉编码 |
|
||||
| Understanding Encoder / Generation Encoder | 理解编码器/生成编码器 |
|
||||
| Understanding Adaptor / Generation Adaptor | 理解适配器/生成适配器 |
|
||||
| VQ Tokenizer | 向量量化分词器 |
|
||||
| Codebook Embedding | 码本嵌入 |
|
||||
| Autoregressive Transformer | 自回归 Transformer |
|
||||
| Text-to-Image Instruction Following | 文本到图像的指令跟随 |
|
||||
| Unified Pretraining | 统一预训练 |
|
||||
| Supervised Fine-tuning (SFT) | 监督微调 |
|
||||
| Data Ratio | 数据配比 |
|
||||
| Synthetic Aesthetic Data | 合成美学数据 |
|
||||
| Sequence Packing | 序列打包 |
|
||||
| Early Stopping | 早停 |
|
||||
| Dense Prompt | 稠密提示词 |
|
||||
| Reconstruction Loss | 重建损失 |
|
||||
| Compositional Capability | 组合能力 |
|
||||
Binary file not shown.
@@ -0,0 +1,137 @@
|
||||
# DeepSeek-OCR:上下文的光学压缩
|
||||
|
||||
> **原文标题**:DeepSeek-OCR: Contexts Optical Compression
|
||||
> **arXiv**:[2510.18234](https://arxiv.org/abs/2510.18234) | **发布**:2025-10-21
|
||||
> **作者/机构**:Haoran Wei、Yaofeng Sun、Yukun Li(DeepSeek-AI,深度求索)
|
||||
> **原文 PDF**:[05-DeepSeek-OCR-2510.18234.pdf](./05-DeepSeek-OCR-2510.18234.pdf)
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
我们提出 DeepSeek-OCR,作为对「通过光学二维映射(optical 2D mapping)压缩长上下文」这一可行性的初步研究。DeepSeek-OCR 由两个组件构成:DeepEncoder,以及作为解码器的 DeepSeek3B-MoE-A570M。具体而言,DeepEncoder 充当核心引擎,其设计目标是在高分辨率输入下保持低激活(activation),同时实现高压缩比,从而确保视觉 token 数量既最优又可控。实验表明,当文本 token 数量不超过视觉 token 数量的 10 倍(即压缩比 < 10×)时,模型可以达到 97% 的解码(OCR)精度。即使在 20× 的压缩比下,OCR 精度仍保持在约 60%。这对历史长上下文压缩以及 LLM 中的记忆遗忘机制等研究领域展现出相当大的前景。除此之外,DeepSeek-OCR 还表现出很高的实用价值。在 OmniDocBench 上,它仅使用 100 个视觉 token 就超过了 GOT-OCR2.0(每页 256 token),并在使用不到 800 个视觉 token 的情况下超过了 MinerU2.0(平均每页 6000+ token)。在生产环境中,DeepSeek-OCR 可以以每天 20 万页以上的规模为 LLM/VLM 生成训练数据(单张 A100-40G)。代码与模型权重公开于 http://github.com/deepseek-ai/DeepSeek-OCR 。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **视觉-文本 token 压缩比的量化边界**:首次回答「解码 N 个文本 token 至少需要多少视觉 token」,在 Fox 上给出 9–10× 压缩时解码精度 96%+、10–12× 约 90%、20× 约 60%(图 1(a))。
|
||||
2. **提出 DeepEncoder 架构**:用 16× 卷积压缩器串联窗口注意力与全局注意力组件,让窗口注意力承担海量视觉 token、压缩器在进入稠密全局注意力前先削减 token 数,兼顾高分辨率、低激活与极少视觉 token。
|
||||
3. **构建 DeepSeek-OCR**:DeepEncoder + DeepSeek3B-MoE(激活 570M),在 OmniDocBench 的端到端模型中性能最优且视觉 token 最少(图 1(b)),并具备图表、化学式、几何图形与自然图像的解析能力。
|
||||
4. **生产级数据引擎**:单张 A100-40G 每天可生成 20 万页以上数据;20 个节点(每节点 8×A100-40G)每天可生产 3300 万页。
|
||||
5. **长上下文新视角**:论证视觉模态可作文本信息的低成本压缩媒介(多模态系统本就需视觉编码器,故无额外开销),并设想「历史文本渲染成图→逐步缩放更老的图」的多级压缩以模拟生物记忆的遗忘曲线。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 总体架构
|
||||
|
||||
DeepSeek-OCR 采用统一的端到端 VLM 架构:编码器(DeepEncoder)负责提取图像特征、将视觉表示 token 化并压缩;解码器依据图像 token 与提示词生成结果。DeepEncoder 约 380M 参数,由 80M 的 SAM-base 与 300M 的 CLIP-large 串联构成;解码器为 3B 的 DeepSeekMoE,激活参数 570M。因任务是对光学压缩的初步可行性验证,作者刻意把编码器做轻、把压缩比推到极限。
|
||||
|
||||
### 3.2 DeepEncoder:为什么需要新编码器
|
||||
|
||||
作者先列出理想编码器必备的五个特征:能处理高分辨率、高分辨率下激活低、视觉 token 少、支持多分辨率输入、参数量适中。第 2.1 节表明现有开源编码器无法同时满足:Vary 的双塔结构需双重图像预处理、难以流水线并行;InternVL2.0 的切块方案降低激活,却因原生分辨率偏低使大图被过度切碎、视觉 token 暴增;Qwen2-VL 的自适应分辨率虽灵活,却因大图激活显存过大可能 OOM。故需自研编码器。
|
||||
|
||||
**架构设计(图 3)**:DeepEncoder 由「以窗口注意力为主的感知组件」与「稠密全局注意力的知识组件」构成,为继承预训练收益分别采用 SAM-base(patch size 16)与 CLIP-large;关键改动是**去掉 CLIP 的第一个 patch embedding 层**,因其输入不再是图像,而是上一段流程输出的 token。两组件之间借鉴 Vary,用 **2 层卷积做 16× 下采样**(kernel 3、stride 2、padding 1,通道 256→1024)。以 1024×1024 输入为例:
|
||||
|
||||
$$\frac{1024}{16}\times\frac{1024}{16}=4096\ \text{patch tokens},\qquad \frac{4096}{16}=256\ \text{tokens after compression}$$
|
||||
|
||||
前半段由窗口注意力主导且仅 80M,激活可接受;4096 个 token 在进入全局注意力前先压成 256 个,整体激活显存因之可控。这就是「先感知、后压缩、再全局建模」的分工:窗口注意力以低成本换细节,压缩器把成本峰值挡在稠密全局注意力之外。
|
||||
|
||||
### 3.3 多分辨率支持
|
||||
|
||||
要回答「1000 个光学字符需要多少视觉 token」,模型必须支持可变视觉 token 数,故 DeepEncoder 需支持多分辨率:方式是**位置编码的动态插值**,并让多种分辨率模式同时训练(表 1)。
|
||||
|
||||
| 模式 | 原生分辨率 | 视觉 token 数 | 处理方式 |
|
||||
|---|---|---|---|
|
||||
| Tiny | 512×512 | 64 | resize |
|
||||
| Small | 640×640 | 100 | resize |
|
||||
| Base | 1024×1024 | 256 | padding |
|
||||
| Large | 1280×1280 | 400 | padding |
|
||||
| Gundam(动态) | n×640×640 + 1024×1024 | n×100+256 | resize + padding |
|
||||
| Gundam-M(动态) | n×1024×1024 + 1280×1280 | n×256+400 | resize + padding |
|
||||
|
||||
Tiny/Small 分辨率小,直接按原形状缩放以免浪费 token;Base/Large 为保持长宽比采用填充,填充后有效视觉 token 少于实际数量:
|
||||
|
||||
$$N_{valid}=\left\lceil N_{actual}\times\left[1-\frac{\max(w,h)-\min(w,h)}{\max(w,h)}\right]\right\rceil \tag{1}$$
|
||||
|
||||
动态分辨率由两种原生分辨率组合,切块沿用 InternVL2.0。Gundam 由 n 个 640×640 局部视图(tile)加一个 1024×1024 全局视图构成,动机是应用需求(尤其报纸这类超高分辨率输入)——切块相当于「二级窗口注意力」,可进一步压低激活;因原生分辨率较大,图像不会被过度切碎(tile 数 2–9)。宽高均小于 640 时 $n=0$,Gundam 退化为 Base。Gundam-M 则由已训练模型继续训练 6M 采样数据得到,主要为负载均衡(其分辨率过大,混合训练会拖慢速度)。
|
||||
|
||||
### 3.4 MoE 解码器
|
||||
|
||||
解码器采用 DeepSeekMoE(DeepSeek-3B-MoE):推理时从 64 个路由专家中激活 6 个,另加 2 个共享专家,激活参数约 570M。作者认为它既有 3B 的表达能力、又享有 500M 小模型的推理效率,尤其适合以领域为中心的 VLM 研究。解码即从压缩潜变量重建文本表示:
|
||||
|
||||
$$f_{\text{dec}}:\mathbb{R}^{n\times d_{\text{latent}}}\rightarrow\mathbb{R}^{N\times d_{\text{text}}},\qquad \hat{\mathbf{X}}=f_{\text{dec}}(\mathbf{Z})\quad\text{where }n\le N \tag{2}$$
|
||||
|
||||
其中 $\mathbf{Z}$ 为 DeepEncoder 输出的压缩潜(视觉)token,$\hat{\mathbf{X}}$ 为重建文本表示。作者指出这是紧致语言模型可通过 OCR 式训练学会的非线性映射,并推测 LLM 经专门预训练优化能更自然地集成该能力。
|
||||
|
||||
### 3.5 数据引擎与训练流程
|
||||
|
||||
数据分四类,配比为 **OCR 70%、通用视觉 20%、纯文本 10%**。
|
||||
|
||||
- **OCR 1.0 数据**:收集 3000 万页 PDF、覆盖约 100 种语言(中英约 2500 万、其它 500 万)。粗标注用 `fitz` 直接抽取,用于教模型识别光学文本(尤其小语种);精标注中英各 200 万页,用 PP-DocLayout 等布局模型与 MinerU、GOT-OCR2.0 构建检测-识别交错数据,以不同提示词与粗标注区分;小语种先用小块数据训练一个 GOT-OCR2.0 再标注布局处理后的小块,以模型飞轮产出 60 万样本。另收集 300 万 Word 数据(提升公式与 HTML 表格能力)与 LAION/Wukong 来源、PaddleOCR 标注的中英场景 OCR 各 1000 万。
|
||||
- **OCR 2.0 数据**:图表参照 OneChart 渲染 1000 万张图,解析目标定为**图像到 HTML 表格的转换**(比字典格式省 token);化学式以 PubChem 的 SMILES 经 RDKit 渲染成 500 万图文对;平面几何沿 Slow Perception 加平移不变增广,共 100 万条。
|
||||
- **通用视觉数据**:参照 DeepSeek-VL2 生成 caption、detection、grounding 数据,仅占 20%,只为保留通用视觉接口。
|
||||
- **纯文本数据**:占 10%,统一为 8192 token 长度。
|
||||
|
||||
**训练分两阶段**。阶段一独立训练 DeepEncoder:仿 Vary 以紧致语言模型做下一 token 预测,数据为全部 OCR 1.0/2.0 加 LAION 采样的 1 亿通用数据,训练 2 epoch、batch size 1280、AdamW + 余弦退火、学习率 5e-5。阶段二在 HAI-LLM 平台训练 DeepSeek-OCR:4 段流水线并行——SAM 与压缩器作为「视觉分词器」置于 PP0 并冻结,CLIP 视为输入嵌入层置于 PP1 且可训练,12 层 MoE 每 6 层置于 PP2/PP3;20 节点(每节点 8×A100-40G)、DP 40、全局 batch 640、AdamW + step 调度器、初始学习率 3e-5;纯文本 90B token/天,多模态 70B token/天。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
### 4.1 视觉-文本压缩研究(Fox 基准)
|
||||
|
||||
取 Fox 英文文档部分,用 DeepSeek-OCR 的分词器(词表约 129k)对 ground truth 分词,挑选 600–1300 文本 token 的文档共 100 页,仅测 Tiny(64 token)与 Small(100 token)模式,提示词为无布局的 `"<image>\nFree OCR."`。
|
||||
|
||||
| 文本 token 区间 | 视觉 token=64 精度 | 压缩比 | 视觉 token=100 精度 | 压缩比 | 页数 |
|
||||
|---|---|---|---|---|---|
|
||||
| 600–700 | 96.5% | 10.5× | 98.5% | 6.7× | 7 |
|
||||
| 700–800 | 93.8% | 11.8× | 97.3% | 7.5× | 28 |
|
||||
| 800–900 | 83.8% | 13.2× | 96.8% | 8.5× | 28 |
|
||||
| 900–1000 | 85.9% | 15.1× | 96.8% | 9.7× | 14 |
|
||||
| 1000–1100 | 79.3% | 16.5× | 91.5% | 10.6× | 11 |
|
||||
| 1100–1200 | 76.4% | 17.7× | 89.8% | 11.3× | 8 |
|
||||
| 1200–1300 | 59.1% | 19.7× | 87.1% | 12.6× | 4 |
|
||||
|
||||
10× 压缩比以内解码精度可达约 97%,作者认为未来有望通过文生图实现接近 10× 的无损上下文压缩。超过 10× 后性能下降,原因有二:长文档布局更复杂;长文本在 512×512 或 640×640 下变模糊——前者可把文本渲染到单一布局页面解决,后者被认为将演化为「遗忘机制」的特性。压缩近 20× 时精度仍接近 60%;且输出格式无法与 Fox 完全对齐,实际性能应略高。
|
||||
|
||||
### 4.2 OCR 实际性能(OmniDocBench)
|
||||
|
||||
表内指标均为编辑距离(越小越好),括号中为按公式 (1) 计算的有效视觉 token 数。
|
||||
|
||||
| 基准 / 任务 | 本模型 | 对比对象 | 说明 |
|
||||
|---|---|---|---|
|
||||
| OmniDocBench overall 编辑距离(英文 / 中文) | Small,100 token:0.221 / 0.284 | GOT-OCR2.0,256 token:0.287 / 0.411 | 仅用 100 token 即超过 GOT-OCR2.0 |
|
||||
| 同上 | Large,400(285) token:0.138 / 0.208 | MinerU2.0,6790 token:0.133 / 0.238;dots.ocr†200dpi,5545 token:0.125 / 0.16;Gemini2.5-Pro:0.148 / 0.212 | 400 token 时达到与该基准 SOTA 相当的水平(英文 0.138 接近 MinerU2.0 的 0.133,中文 0.208 优于其 0.238) |
|
||||
| 同上 | Gundam,795 token:0.127 / 0.181 | MinerU2.0,6790 token:0.133 / 0.238 | 用不到 800 个视觉 token 超过需要近 7000 token 的 MinerU2.0 |
|
||||
| 同上 | Gundam-M†200dpi,1853 token:0.123 / 0.157 | dots.ocr†200dpi,5545 token:0.125 / 0.16 | 本文最佳配置 |
|
||||
| 同上(弱配置对照) | Tiny,64 token:0.386 / 0.361;Base,256(182) token:0.137 / 0.24 | Dolphin:0.356 / 0.44;MinerU-2.1.1:0.162 / 0.244 | Tiny 模式接近传统流水线模型 Dolphin |
|
||||
|
||||
按文档类别的编辑距离(表 4)显示压缩边界有强烈的类别依赖:幻灯片只需 64 个视觉 token(Tiny 0.116、Small 0.111、Base 0.08);Book/Report 类仅需 100 个(Small 分别为 0.085 / 0.079);报纸则差异悬殊——Tiny 0.94、Small 0.744、Base 0.645、Large 0.353,必须用 Gundam(0.122)乃至 Gundam-M(0.099)。这与 4.1 节一致:这些文档的文本 token 多在 1000 以内、压缩比不超 10×;报纸则有 4000–5000 文本 token,远超其它模式的 10× 能力。
|
||||
|
||||
### 4.3 定性能力
|
||||
|
||||
- **深度解析(deep parsing)**:模型兼具布局与 OCR 2.0 能力,可通过二次模型调用解析文档内的图表、几何图形、化学式乃至自然图像,且只需统一提示词(图表转结构化结果、化学式转 SMILES)。
|
||||
- **多语言识别**:可处理近 100 种语言,与中英文一样同时支持带/不带布局两种输出,论文以阿拉伯语、僧伽罗语为例。
|
||||
- **通用视觉理解**:保留图像描述、目标检测、grounding 与语言能力;但因未包含 SFT 阶段,模型不是聊天机器人,部分能力需补全式提示词激活。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:论文初步验证了上下文光学压缩的可行性——模型能从少量视觉 token 解码出超过其 10 倍数量的文本 token;DeepSeek-OCR 也可支撑大规模预训练数据生产。作者强调仅靠 OCR 尚不足以完全验证真正的上下文光学压缩,未来将做数字-光学交错预训练与大海捞针测试。
|
||||
- **局限性**:OCR 只是该范式的概念验证;压缩比超过 10× 后性能明显下降;报纸类需 Gundam/Gundam-M 才能获得可接受的编辑距离;模型未做 SFT、不是对话模型,部分能力需补全提示激活;几何解析因线段依赖错综复杂「仍有很长的路要走」;作者承认这属早期工作。Fox 评测中输出格式与 ground truth 不一致,也会低估实际性能。
|
||||
- **影响**:工作给出视觉 token 分配的经验性指南,并提出两条路径——对多轮对话中第 k 轮之后的历史做光学处理以取得约 10× 压缩效率;对更早上下文逐步缩小渲染图以进一步省 token,模拟与「视觉随距离退化」相平行的记忆衰减(近端高保真、远端自然模糊),指向理论上有无限上下文能力、兼顾信息保留与算力约束的架构。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Contexts Optical Compression | 上下文光学压缩 |
|
||||
| Optical 2D Mapping | 光学二维映射 |
|
||||
| Vision Token | 视觉 token |
|
||||
| Compression Ratio | 压缩比 |
|
||||
| DeepEncoder | DeepEncoder(深度编码器) |
|
||||
| Window Attention | 窗口注意力 |
|
||||
| Global Attention(Dense) | (稠密)全局注意力 |
|
||||
| Token Compressor | token 压缩器 |
|
||||
| Native / Dynamic Resolution | 原生分辨率 / 动态分辨率 |
|
||||
| Tiling | 切块(局部视图) |
|
||||
| MoE Decoder / Activated Parameters | MoE 解码器 / 激活参数 |
|
||||
| Deep Parsing | 深度解析 |
|
||||
| OCR 1.0 / OCR 2.0 | OCR 1.0 任务 / OCR 2.0 任务 |
|
||||
| Edit Distance | 编辑距离 |
|
||||
| Forgetting Mechanism | 遗忘机制 |
|
||||
| Needle-in-a-Haystack | 大海捞针测试 |
|
||||
Binary file not shown.
@@ -0,0 +1,138 @@
|
||||
# DeepSeek-OCR 2:视觉因果流
|
||||
|
||||
> **原文标题**:DeepSeek-OCR 2: Visual Causal Flow
|
||||
> **arXiv**:[2601.20552](https://arxiv.org/abs/2601.20552) | **发布**:28 Jan 2026
|
||||
> **作者/机构**:Haoran Wei、Yaofeng Sun、Yukun Li(DeepSeek-AI(深度求索))
|
||||
> **原文 PDF**:[06-DeepSeek-OCR-2-2601.20552.pdf](./06-DeepSeek-OCR-2-2601.20552.pdf)
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
我们提出 DeepSeek-OCR 2,用以研究一种新型编码器——DeepEncoder V2——的可行性,该编码器能够依据图像语义对视觉词元(visual token)进行动态重排序。传统视觉语言模型(Vision-Language Model, VLM)在把视觉词元送入大语言模型(LLM)时,无一例外地采用刚性的光栅扫描顺序(raster-scan order,即左上到右下)并配合固定位置编码。然而,这与人类视觉感知相矛盾:人类视觉遵循灵活但在语义上连贯的扫描模式,该模式由图像内在的逻辑结构驱动。尤其对于布局复杂的图像,人类视觉表现出带有因果信息的顺序化处理。受这一认知机制启发,DeepEncoder V2 被设计为赋予编码器因果推理能力,使其能在基于 LLM 的内容解读之前智能地对视觉词元重新排序。本工作探索了一种新范式:二维图像理解能否通过两个级联的一维因果推理结构有效实现,从而提供一种有望实现真正二维推理的新架构路径。代码与模型权重已在 http://github.com/deepseek-ai/DeepSeek-OCR-2 公开发布。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **用 LLM 架构替换 CLIP**:把 DeepEncoder 的 CLIP 换成紧凑 LLM 架构,使编码器在压缩视觉知识的同时获得对视觉序列的因果建模能力。
|
||||
2. **因果流查询与定制掩码**:查询以**后缀**追加在视觉词元之后,视觉词元保持双向注意力以保留全局感受野,查询用因果注意力、仅可见全部视觉词元与更早查询,从而渐进式重排序视觉信息。
|
||||
3. **等基数设计**:查询与视觉词元数相等(视觉侧以填充、边框等冗余补偿),不改变词元总数即为「再注视」提供容量。
|
||||
4. **两级级联因果推理**:只把编码器输出序列的后半部分(因果查询输出)送入 LLM 解码器,编码器负责阅读逻辑推理、解码器负责视觉任务推理。
|
||||
5. **同压缩率下大幅提升**:词元上限约束在 256–1120,在 OmniDocBench v1.5 上比 DeepSeek-OCR 提升 3.73%(87.36 → 91.09),阅读顺序编辑距离由 0.085 降至 0.057。
|
||||
6. **验证「语言模型架构即多模态编码器」**:只需为各模态配置各自的可学习查询,即可在同一参数空间压缩文本、抽取语音特征、重组视觉内容。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 整体架构与设计动机
|
||||
|
||||
DeepSeek-OCR 2 沿用 DeepSeek-OCR 的「编码器 + 解码器」架构,关键差异是把 DeepEncoder 升级为 DeepEncoder V2。痛点在于:朴素编码器虽以全注意力获得类似中央凹与周边视觉的全图感受野,但把二维图像块压平为一维序列时,文本导向的位置编码(如 RoPE)强加了刚性顺序偏置,与光学文本、表单、表格的非线性布局相矛盾。人类视觉虽与视觉编码器相似(注视点相当于视觉词元),但注视点顺序由语义因果驱动——追踪螺旋线时每个后续注视点因果依赖前一个,故视觉词元应依据语义而非空间坐标被选择性处理。
|
||||
|
||||
### 3.2 视觉分词器(Vision tokenizer)
|
||||
|
||||
第一部分是视觉分词器,沿用 DeepEncoder 的 80M 参数 SAM-base 加两层卷积,末层输出维度由 1024 降为 896 以对齐后续流水线。该压缩式分词器并非必需,可换成简单图块嵌入(patch embedding);保留它是因为它借助窗口注意力以极小参数量实现 16× 词元压缩,大幅降低后续全局注意力的计算与显存。
|
||||
|
||||
### 3.3 语言模型即视觉编码器(Language model as vision encoder)
|
||||
|
||||
在 DeepEncoder 中,视觉分词器之后是 CLIP ViT;DeepEncoder V2 将其重设计为具有双流注意力机制的 LLM 式架构:视觉词元用双向注意力以保留 CLIP 的全局建模能力,新增的因果流查询用因果注意力并以**后缀**追加在视觉词元之后,每个查询可关注全部视觉词元及其之前的查询。实现采用 Qwen2-0.5B(500M 参数,与 CLIP ViT 的 300M 量级相当)。作者强调「仅解码器 + 视觉词元前缀拼接」至关重要:改用 mBART 式编码器-解码器结构、以交叉注意力接入的实验**无法收敛**,推测原因是视觉词元被隔离在独立编码器中交互不足,而前缀设计让视觉词元在全部层中保持活跃。由此形成两级级联因果推理:编码器通过查询重排序视觉词元,解码器再对有序序列自回归推理;因果有序的查询既适应视觉语义,又契合 LLM 的单向注意力模式,有望弥合二维空间结构与一维因果语言建模的鸿沟。
|
||||
|
||||
### 3.4 因果流查询与多裁剪策略(Causal flow query)
|
||||
|
||||
因果查询词元数等于视觉词元数,即 $\frac{W\times H}{16^{2}\times 16}$($W$、$H$ 为输入图像宽高)。为避免为不同分辨率维护多套查询集,作者采用多裁剪(multi-crop)策略:全局视图 $1024\times1024$ 对应 256 个查询嵌入 $\text{query}_{\text{global}}$;局部裁剪 $768\times768$,裁剪数 $k$ 取 0–6(两维都小于 768 时不裁剪),所有局部视图共享同一套 144 个查询嵌入 $\text{query}_{\text{local}}$。送入 LLM 的重排序视觉词元总数为 $k\times 144+256$,范围 $[256,1120]$;上限 1120 低于 DeepSeek-OCR 的 1156(Gundam 模式),与 Gemini-3-Pro 的最大视觉词元预算持平。
|
||||
|
||||
### 3.5 注意力掩码(Attention mask)
|
||||
|
||||
掩码由两个区域沿序列维度拼接:左侧对原始视觉词元施加双向注意力(类似 ViT),任意词元互相可见;右侧对因果流词元施加因果注意力(三角掩码,与仅解码器 LLM 一致),每个词元只关注之前的词元。形式为
|
||||
|
||||
$$M=\begin{bmatrix}\mathbf{1}_{m\times m}&\mathbf{0}_{m\times n}\\ \mathbf{1}_{n\times m}&\text{LowerTri}(n)\end{bmatrix},\quad\text{其中 }n=m$$
|
||||
|
||||
其中 $n$ 为因果查询词元数,$m$ 为朴素视觉词元数,$\text{LowerTri}$ 为下三角矩阵。
|
||||
|
||||
### 3.6 DeepSeek-MoE 解码器与整体前向
|
||||
|
||||
解码器不做升级,沿用 DeepSeek-OCR 的 3B 参数 MoE 结构(约 500M 激活参数)。核心前向过程为
|
||||
|
||||
$$\mathbf{O}=\mathcal{D}\left(\pi_{Q}\left(\mathcal{T}^{L}\left(\mathcal{E}(\mathbf{I})\oplus\mathbf{Q}_{0};\mathbf{M}\right)\right)\right)$$
|
||||
|
||||
其中 $\mathcal{E}$ 为视觉分词器(图像→$m$ 个视觉词元),$\mathbf{Q}_{0}$ 为可学习因果查询嵌入,$\oplus$ 为序列拼接,$\mathcal{T}^{L}$ 是带掩码注意力的 $L$ 层 Transformer,$\mathbf{M}$ 为式 (1) 的块状因果掩码,$\pi_{Q}$ 抽取最后 $n$ 个词元,$\mathcal{D}$ 为语言解码器,$\mathbf{O}$ 为词表上的输出 logits。
|
||||
|
||||
### 3.7 数据引擎与三阶段训练流水线
|
||||
|
||||
**数据引擎**:来源与 DeepSeek-OCR 相同(OCR 1.0、OCR 2.0 与通用视觉数据),OCR 数据占混合的 80%。两处改动:对 OCR 1.0 按内容类型(文本、公式、表格)以 3:1:1 更均衡采样;布局检测标签精修,合并语义相近类别(如统一「figure caption」与「figure title」)。差异极小,故 DeepSeek-OCR 是有效基线。
|
||||
|
||||
**三阶段训练**:编码器预训练(获得抽取、压缩与重排序能力)→查询增强(强化重排序与视觉知识压缩)→解码器专门化(冻结编码器只优化解码器,相同 FLOPs 下提高数据吞吐)。
|
||||
|
||||
- 阶段一:遵循 DeepSeek-OCR 与 Vary,以语言建模目标把编码器与轻量解码器耦合,经下一词元预测联合优化;$768\times768$ 与 $1024\times1024$ 两个 dataloader;视觉分词器由 DeepEncoder、LLM 式编码器由 Qwen2-0.5B-base 初始化,之后只保留编码器参数。AdamW,余弦衰减 $1\text{e-}4 \to 1\text{e-}6$,160 张 A100(20 节点 × 8 卡)、batch size 640、40k 迭代(8K 打包,约 100M 图文对)。
|
||||
- 阶段二:与 DeepSeek-3B-A500M 组合为最终流水线;冻结视觉分词器(SAM-conv),联合优化 LLM 编码器与解码器以增强查询表示,并把两种分辨率统一为多裁剪输入。4 段流水线并行:PP0 视觉分词器、PP1 LLM 式编码器、PP2–3 DeepSeek-LLM(每段 6 层);160 张 40GB GPU 配 40 个数据并行副本,全局 batch 1280,学习率 5e-5 → 1e-6,15k 迭代。
|
||||
- 阶段三:冻结全部 DeepEncoder V2 参数,只更新 DeepSeek-LLM;相同全局 batch 下训练速度提升一倍以上,并帮助 LLM 理解重排序后的视觉词元;学习率 1e-6 → 5e-8,20k 迭代。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
**表 1:OmniDocBench v1.5 文档阅读综合评测**(V-token max 与编辑距离越低越好,其余越高越好)
|
||||
|
||||
| 模型 | V-token max↓ | Overall↑ | Text Edit↓ | Formula CDM↑ | Table TEDs↑ | Table TEDSs↑ | R-order Edit↓ |
|
||||
|---|---|---|---|---|---|---|---|
|
||||
| Marker-1.8.2 | - | 71.30 | 0.206 | 76.66 | 57.88 | 71.17 | 0.250 |
|
||||
| Dolphin-1.5 | - | 83.21 | 0.092 | 80.78 | 78.06 | 84.10 | 0.080 |
|
||||
| MonkeyOCR-pro-3B | - | 88.85 | 0.075 | 87.25 | 86.78 | 90.63 | 0.128 |
|
||||
| MinerU2.5 | - | 90.67 | 0.047 | 88.46 | 88.22 | 92.38 | 0.044 |
|
||||
| PaddleOCR-VL | - | 92.86 | 0.035 | 91.22 | 90.89 | 94.76 | 0.043 |
|
||||
| GPT-4o | - | 75.02 | 0.217 | 79.70 | 67.07 | 76.09 | 0.148 |
|
||||
| InternVL3.5-241B | >7000 | 82.67 | 0.142 | 87.23 | 75.00 | 81.28 | 0.125 |
|
||||
| Qwen2.5-VL-72B | >6000 | 87.02 | 0.094 | 88.27 | 82.15 | 86.22 | 0.102 |
|
||||
| Gemini-2.5 Pro | - | 88.03 | 0.075 | 85.82 | 85.71 | 90.29 | 0.097 |
|
||||
| Qwen3-VL-235B | >6000 | 89.15 | 0.069 | 88.14 | 86.21 | 90.55 | 0.068 |
|
||||
| DeepSeek-OCR (9-crops) | 1156 | 87.36 | 0.073 | 84.14 | 85.25 | 89.01 | 0.085 |
|
||||
| **DeepSeek-OCR 2** | **1120** | **91.09** | **0.048** | **90.31** | **87.75** | **92.06** | **0.057** |
|
||||
| 相对基线变化 | ↓36 | ↑3.73 | ↓0.025 | ↑6.17 | ↑2.5 | ↑3.05 | ↓0.028 |
|
||||
|
||||
**表 2:OmniDocBench v1.5 不同文档元素类别的编辑距离**(越低越好)
|
||||
|
||||
| 模型 | V-token max↓ | Text Edit↓ | Formula Edit↓ | Table Edit↓ | R-order Edit↓ | Overall Edit↓ |
|
||||
|---|---|---|---|---|---|---|
|
||||
| Gemini-3 pro | 1120 | - | - | - | - | 0.115 |
|
||||
| Seed-1.8 | 5120 | - | - | - | - | 0.106 |
|
||||
| DeepSeek-OCR | 1156 | 0.073 | 0.236 | 0.123 | 0.085 | 0.129 |
|
||||
| **DeepSeek-OCR 2** | **1120** | **0.048** | **0.198** | **0.096** | **0.057** | **0.100** |
|
||||
|
||||
**表 3:9 类文档细粒度对比(编辑距离,越低越好)**
|
||||
|
||||
| 模型 / 指标 | PPT | Academic Paper | Book | Colorful Textbook | Exam Paper | Magazine | Newspaper | Note | Research Report |
|
||||
|---|---|---|---|---|---|---|---|---|---|
|
||||
| DS-OCR Text | 0.052 | 0.028 | 0.022 | 0.130 | 0.074 | 0.049 | 0.131 | 0.145 | 0.015 |
|
||||
| DS-OCR R-order | 0.052 | 0.021 | 0.040 | 0.125 | 0.083 | 0.101 | 0.217 | 0.089 | 0.016 |
|
||||
| DS-OCR 2 Text | 0.031 | 0.013 | 0.033 | 0.053 | 0.047 | 0.026 | 0.139 | 0.068 | 0.008 |
|
||||
| DS-OCR 2 R-order | 0.025 | 0.013 | 0.027 | 0.066 | 0.048 | 0.100 | 0.176 | 0.035 | 0.011 |
|
||||
|
||||
**表 4:生产环境性能对比(重复率,越低越好)**
|
||||
|
||||
| 模型 | 线上用户日志(图像) | 预训练数据(PDF) |
|
||||
|---|---|---|
|
||||
| DeepSeek-OCR | 6.25% | 3.69% |
|
||||
| DeepSeek-OCR 2 | 4.17%(↓2.08%) | 2.88%(↓0.81%) |
|
||||
|
||||
评测以 OmniDocBench v1.5 为主基准,覆盖中英文 9 大类共 1,355 个文档页面。DeepSeek-OCR 2 以最小的视觉词元上限(1120)取得 91.09% 总体成绩,比 DeepSeek-OCR 提升 3.73%;阅读顺序编辑距离由 0.085 降至 0.057,表明 DeepEncoder V2 能依据图像信息有效选择并排列视觉词元。与 Gemini-3 Pro 在相近预算(1120)下相比,其总体编辑距离更低(0.100 对 0.115)。9 类文档中文本识别多数优于基线(彩色教科书 0.130 → 0.053、笔记 0.145 → 0.068),报纸是明显短板(0.131 → 0.139,仍高于 0.13),而阅读顺序在全部类别一致领先。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:DeepSeek-OCR 2 在保持高视觉词元压缩率的同时取得实质提升,驱动力是新提出的 DeepEncoder V2——通过双向与因果注意力的融合隐式蒸馏出对视觉世界的因果理解,使编码器具备因果推理能力。
|
||||
- **局限性**:论文自述仍有可观提升空间:报纸类偏弱(文本编辑距离 >0.13),一是词元上限较低影响文本极密集报纸的识别(可通过增加局部裁剪数缓解),二是报纸训练数据仅 250k 样本,不足以训练 DeepEncoder V2 处理该类文档。此外,真正的二维推理仍是漫长旅程:多次重审与多跳重排序可能需要远多于原始视觉词元序列的因果流词元;解码器侧未做升级。
|
||||
- **影响**:编码器与解码器构成两级级联的一维因果推理器,把二维理解分解为两个互补/正交的一维子任务,为真正的二维推理提供新路径;该结构还有望演化为统一的全模态编码器——共享 $W_k$、$W_v$ 投影、注意力与 FFN,仅靠模态专属查询嵌入即可在同一参数空间压缩文本、抽取语音特征、重组视觉内容。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Visual Causal Flow | 视觉因果流 |
|
||||
| Vision tokenizer | 视觉分词器 |
|
||||
| Visual token | 视觉词元 |
|
||||
| Causal flow query / token | 因果流查询 / 因果流词元 |
|
||||
| Learnable query | 可学习查询 |
|
||||
| Attention mask | 注意力掩码 |
|
||||
| Bidirectional attention | 双向注意力 |
|
||||
| Causal attention (LowerTri) | 因果注意力(下三角掩码) |
|
||||
| Prefix-concatenation | 前缀拼接 |
|
||||
| Multi-crop strategy | 多裁剪策略 |
|
||||
| Re-fixation | 再注视 |
|
||||
| Raster-scan order | 光栅扫描顺序 |
|
||||
| Reading order (R-order) | 阅读顺序 |
|
||||
| Edit Distance (ED) | 编辑距离 |
|
||||
| Repetition rate | 重复率 |
|
||||
| Mixture-of-Experts (MoE) | 专家混合 |
|
||||
| Omni-modal encoder | 全模态编码器 |
|
||||
Binary file not shown.
@@ -0,0 +1,131 @@
|
||||
# JanusFlow:以整流流调和自回归,统一多模态理解与生成
|
||||
|
||||
> **原文标题**:JanusFlow: Harmonizing Autoregression and Rectified Flow for Unified Multimodal Understanding and Generation
|
||||
> **arXiv**:[2411.07975](https://arxiv.org/abs/2411.07975) | **发布**:12 Nov 2024(最后修订 24 Mar 2025)
|
||||
> **作者/机构**:Yiyang Ma、Xingchao Liu、Xiaokang Chen、Wen Liu、Chengyue Wu 等;DeepSeek-AI(深度求索),并联合北京大学、香港大学、清华大学
|
||||
> **原文 PDF**:[07-JanusFlow-2411.07975.pdf](./07-JanusFlow-2411.07975.pdf)
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
我们提出 JanusFlow,一个强大的框架,它在单一模型中统一了图像理解与图像生成。JanusFlow 引入了一种极简的架构,将自回归语言模型与整流流(rectified flow)——生成建模领域的最先进方法——集成在一起。我们的关键发现是:整流流可以直接在大型语言模型框架内训练,无需任何复杂的架构改动。为了进一步提升统一模型的性能,我们采用了两项关键策略:(i)解耦理解编码器与生成编码器;(ii)在统一训练过程中对齐二者的表示。大量实验表明,JanusFlow 在各自领域内达到了与专用模型相当甚至更优的性能,同时在标准基准上显著优于现有的统一方法。这项工作朝着更高效、更通用的视觉-语言模型迈出了一步。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **极简的「LLM + 整流流」架构**:仅用轻量生成编解码器把 SDXL-VAE 隐空间接入 LLM,LLM 本身即速度场网络;由此证明整流流无需架构改造即可在 LLM 内训练,也避免了「LLM 只出条件、扩散模型画图」的能力割裂。
|
||||
2. **解耦理解与生成编码器**:理解侧用预训练 SigLIP-Large-Patch/16,生成侧用随机初始化的 ConvNeXt 编解码器以消除任务干扰;改用共享编码器后,POPE 由 84.73 降至 78.13、VQAv2 由 69.20 降至 53.94。
|
||||
3. **表示对齐正则化(REPA)**:把理解编码器对真实图像的特征与 LLM 中间层特征做余弦相似度对齐,同时提升图像质量与语义一致性(FID 19.84→17.61,CLIP 24.94→26.40)。
|
||||
4. **三阶段训练与数据配比**:先适配新模块,再统一预训练(前期偏理解、后期加重生成),最后 SFT 并解冻 SigLIP。
|
||||
5. **1.3B 规模上的强结果**:GenEval 0.63、DPG-Bench 80.09%、MJHQ FID-30k 9.51 超过 SDXL、DALL-E 2;MMBench 74.9、SEED 70.5、GQA 60.3 超过 LLaVA-v1.5。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 背景
|
||||
|
||||
**多模态 LLM**:对离散 token 序列 $x=(x_1,\cdots,x_\ell)$ 按最大似然自回归建模
|
||||
|
||||
$$\log P_{\theta_{LLM}}(x)=\sum_{i=0}^{\ell-1}\log P_{\theta_{LLM}}(x_{i+1}\mid x_1,\dots,x_i)$$
|
||||
|
||||
处理视觉输入时外接视觉编码器与投影层,把图像特征映射进词嵌入空间(如 LLaVA 用 CLIP 编码器)。
|
||||
|
||||
**整流流**:对来自未知分布 $\pi_1$ 的连续数据点,学习定义在 $t\in[0,1]$ 上的常微分方程 $\frac{{\rm d}z_t}{{\rm d}t}=v_{\theta_{NN}}(z_t,t),\ z_0\sim\pi_0$($\pi_0$ 为标准高斯噪声),训练时让速度场拟合两分布采样点间的线性路径方向:
|
||||
|
||||
$$\min_\theta \mathbb{E}_{t\sim P(t),z_0\sim\pi_0,x\sim\pi_1}\left[\left\|v_{\theta_{NN}}(z_t,t)-(x-z_0)\right\|^2\right],\quad z_t=tx+(1-t)z_0$$
|
||||
|
||||
容量足够且目标最优时,速度场把基分布输运到 $\pi_1$;相比扩散,它概念更简洁、采样更快、经验性能更好。
|
||||
|
||||
### 3.2 统一框架:同一 LLM 内的两条路径
|
||||
|
||||
**理解路径**:图像经编码器 $f_{enc}$ 得特征图,展平后由线性层投为嵌入序列,与文本 token 嵌入拼接后送入 LLM 做下一 token 预测;图像前后加 `|BOI|`/`|EOI|` 以便定位。
|
||||
|
||||
**生成路径**:以文本为条件在 SDXL-VAE 隐空间生成:噪声 $z_0$ 经生成编码器 $g_{enc}$ 变为嵌入序列并拼接时间嵌入 $t$,LLM 输出的速度经生成解码器 $g_{dec}$ 还原为隐空间速度,用标准欧拉求解器迭代
|
||||
|
||||
$$z_{t+{\rm d}t}=z_t+v(z_t,t)\,{\rm d}t$$
|
||||
|
||||
把输入中的 $z_0$ 换成 $z_{{\rm d}t}$ 迭代至 $z_1$,再由 VAE 解码出图像;质量由无分类器引导(CFG)提升:$v(z_t,t)=w\,v(z_t,t\mid x^{con})+(1-w)\,v(z_t,t\mid\varnothing)$。与采用各种注意力掩码策略的前作不同,作者发现**因果注意力已经足够**,替代掩码在初步实验中并无收益。
|
||||
|
||||
### 3.3 解耦视觉编码器
|
||||
|
||||
此前统一工作让两任务共用编码器(Transfusion 共享 U-Net/线性编码器,Show-o 用 MAGVIT-v2 离散 token),但共享设计已被证明次优。JanusFlow 因此解耦:理解侧 $f_{enc}$ 用预训练 SigLIP-Large-Patch/16 取语义特征;生成侧 $g_{enc}$(2×2 patchify + 两个 ConvNeXt 块 + 线性层)与 $g_{dec}$(两个 ConvNeXt 块 + pixel-shuffle 上采样 + 线性层)从零初始化,其间加长跳跃连接,新增模块共约 70M 参数。
|
||||
|
||||
### 3.4 三阶段训练
|
||||
|
||||
1. **阶段一·适配新模块**:只训线性层与生成编解码器,使其与预训练 LLM、SigLIP 对齐,为新模块做初始化。
|
||||
2. **阶段二·统一预训练**:除视觉编码器外全网训练,混合理解、生成与纯文本数据;先给理解更高比例,再提高生成占比以满足扩散式模型的收敛需求。
|
||||
3. **阶段三·SFT**:用对话、任务型问答与高质量文生图样本做指令微调,并解冻 SigLIP。
|
||||
|
||||
超参数:学习率 $1.0\times10^{-4}$/$1\times10^{-4}$/$2.0\times10^{-5}$,常数调度与 AdamW($\beta_1=0.9,\beta_2=0.95$),梯度裁剪 1.0;步数 10,000/390,000/26,000,批大小 512/512/256;数据配比(理解:生成:纯文本)50:50:0、14:80:6、21:70:9,阶段二前 10,000 步先用 30:50:20。
|
||||
|
||||
### 3.5 训练目标
|
||||
|
||||
数据统一写成 $x=(x^{con},x^{res})$(条件与响应)。理解任务只用响应 token 算自回归损失:
|
||||
|
||||
$$\mathcal{L}_{AR}(\theta)=-\mathbb{E}_{x\sim\mathcal{D}_{und}}\left[\sum_{i=\ell_{con}}^{\ell-1}\log P_\theta(x_{i+1}\mid x_1,\dots,x_i)\right]$$
|
||||
|
||||
生成任务用整流流损失,时间分布沿用 Stable Diffusion 3 的 logit-normal,并随机丢弃 10% 文本提示以支持 CFG:
|
||||
|
||||
$$\mathcal{L}_{RF}(\theta)=\mathbb{E}_{x\sim\mathcal{D}_{gen},t\sim P(t),z_0\sim\mathcal{N}(0,I)}\left[\left\|v_\theta(z_t,t\mid x^{con})-(x^{res}-z_0)\right\|^2\right],\quad z_t=tx^{res}+(1-t)z_0$$
|
||||
|
||||
**表示对齐正则项**把理解编码器对真实图像的特征与 LLM 中间表示对齐:
|
||||
|
||||
$$\mathcal{L}_{REPA}(\theta,\varphi)=-\mathbb{E}_{x\sim\mathcal{D}_{gen}}\left[\mathrm{sim}\left(\mathrm{stop\_grad}(f_{enc}(x^{res})),\;h_\varphi(q_\theta(z_t))\right)\right]$$
|
||||
|
||||
其中 $q_\theta(z_t)$ 取 LLM 第 6 个 block 之后、输入为带噪 $z_t$ 时的特征,$h_\varphi$ 为三层 MLP,相似度取逐元素余弦相似度均值,梯度不回传理解编码器;作者令 $H_{gen}=H_{im}$、$W_{gen}=W_{im}$ 以便与特征图对齐。其动机是让 LLM 面对噪声输入时的内部特征空间贴近语义特征空间,使推理时从新噪声也能生成语义正确的图像。汇总:理解用 $\mathcal{L}_{AR}$,生成用 $\mathcal{L}_{RF}+\mathcal{L}_{REPA}$,贯穿各训练阶段。
|
||||
|
||||
### 3.6 实现与数据
|
||||
|
||||
骨干为增强版 DeepSeek-LLM(1.3B、24 层、序列长 4096),理解与生成均为 384 分辨率;训练时把多条序列打包到 4096。理解数据缩放长边后补边成正方形以保留信息,生成数据缩放短边后随机方形裁剪以规避补边伪影;对齐正则用 EMA(0.99)保稳定。基于 HAI-LLM 与 PyTorch,用 NVIDIA A100 训练,每个模型约需 1,600 A100 GPU 天。数据见附录 B:理解侧用 DetailedCaption、SAM、arXivQA、DenseFusion-1M、MMSci、PixelProse、重标注 LAION-Aesthetics 与 Open Images V4、ShareGPT4V、WikiHow、WIT 等;生成侧用重标注 LAION-Aesthetics、DALL-E 3 1M、SAM、Open Images V4、Megalith-10M、YFCC-15M、PixelProse、JourneyDB 及 200 万自有数据(25% 为单句描述)。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
| 基准 / 任务 | JanusFlow(1.3B) | 对比对象 | 说明 |
|
||||
|---|---|---|---|
|
||||
| GenEval 总体 ↑ | 0.63 | SDXL 0.55、Janus 0.61、Show-o 0.53、Transfusion 0.63、DALL-E 3 0.67 | 超过 DALL-E 2(0.52)与既往统一模型;Pos. 0.53、Color Attri. 0.42 突出 |
|
||||
| DPG-Bench 总体 ↑ | 80.09 | PixArt-Σ 80.54、Emu3-Gen 80.60、SDXL 74.65 | 表中唯一统一模型;Global 87.03、Other 88.10 领先 |
|
||||
| MJHQ FID-30k ↓ | 9.51 | Janus 10.10、Show-o 15.18、VILA-U 384 7.69 | 1.3B 规模内最佳,优于自回归式的 Janus |
|
||||
| MMBench dev ↑ | 74.9 | Janus 69.4、LLaVA-v1.5 64.3、Qwen-VL-Chat 60.6 | 同规模及更大规模理解专用模型中领先 |
|
||||
| SEED ↑ | 70.5 | Janus 63.7、Emu3-Chat 68.2 | 同上 |
|
||||
| GQA ↑ | 60.3 | Janus 59.1、LLaVA-v1.5 62.0 | 略低于 7B 的 LLaVA-v1.5 |
|
||||
| POPE ↑ | 88.0 | Janus 87.0、MobileVLM-V2 84.7 | 最高 |
|
||||
| VQAv2 test ↑ | 79.8 | Janus 77.3、LLaVA-v1.5 78.5 | 超过 7B 的 LLaVA-v1.5 |
|
||||
| MME-P ↑ | 1333.1 | Janus 1338.0、LLaVA-v1.5 1510.7 | 略低于 Janus 与 7B 模型 |
|
||||
| MMMU ↑ / MM-Vet ↑ | 29.3 / 30.9 | Janus 30.5 / 34.3、Qwen2-VL 54.1 / 62.0 | 均未超 Janus,复杂推理与开放对话是短板 |
|
||||
| ChartQA ↑ / TextVQA ↑ | 64.6 / 55.5 | Qwen-VL-Chat 66.3 / 61.5、Emu3-Chat 68.6 / 64.7 | 图表与文字识别落后于更大模型 |
|
||||
|
||||
消融实验(256×256、统一预训练 50,000 步;FID 为 MJHQ FID-10k,CFG $w=7.5$、30 步;† 表示冻结):
|
||||
|
||||
| Exp. | 设置 | POPE ↑ | VQAv2 ↑ | GQA ↑ | FID ↓ | CLIP ↑ |
|
||||
|---|---|---|---|---|---|---|
|
||||
| A | 无 REPA,SigLIP 理解 + VAE†+ConvNeXt 生成 | 82.40 | 69.62 | 54.43 | 19.84 | 24.94 |
|
||||
| B | 有 REPA,两任务共享 VAE†+ConvNeXt | 78.13 | 53.94 | 44.04 | 18.05 | 26.38 |
|
||||
| C | 有 REPA,独立 VAE+ConvNeXt 理解 + VAE†+ConvNeXt 生成 | 75.30 | 55.41 | 44.44 | 17.53 | 26.32 |
|
||||
| D | 仅理解(SigLIP) | 85.03 | 69.10 | 54.23 | — | — |
|
||||
| E | 仅生成(VAE†+ConvNeXt) | — | — | — | 16.69 | 26.89 |
|
||||
| F | **最终配置**:有 REPA,SigLIP + VAE†+ConvNeXt | 84.73 | 69.20 | 54.83 | 17.61 | 26.40 |
|
||||
|
||||
生成侧几乎全面领先:GenEval 0.63 与 7.3B 的 Transfusion 持平并超过 SDXL,MJHQ FID-30k 9.51 为 1.3B 规模最优;理解侧 MMBench、SEED、GQA、POPE、VQAv2 均为同规模最优,并超过若干 7B 级专用模型。差距集中在复杂推理与开放对话(MMMU、MM-Vet)及高分辨率细节任务(MME-P、ChartQA、TextVQA)。消融显示 REPA 同时提升 FID 与 CLIP,共享编码器明显变差,而最终配置与任务专用模型(Exp. D/E)差距很小。附录补充:256 分辨率模型理解指标略低,但 GenEval(0.70 对 0.63)与 DPG-Bench(81.23 对 80.09)反而更好,作者归因于低分辨率下语义操控更精确。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:JanusFlow 在统一框架内调和了自回归与整流流,用于多模态理解与生成,性能与任务专用模型相当;作者认为两种异构架构的成功整合为统一模型研究开辟了新可能。
|
||||
- **局限性**:论文未明确说明(正文与结论均无专门的局限讨论)。可观察到:复杂推理基准(MMMU 29.3、MM-Vet 30.9)未超过前代 Janus;训练成本约 1,600 A100 GPU 天;256 与 384 分辨率在理解与指令遵循之间存在权衡。
|
||||
- **影响**:给出「整流流可在 LLM 框架内直接训练、无需架构改动」的结论,把实现门槛降到「轻量编解码器 + LLM」,解耦编码器与表示对齐成为可复用的设计配方。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Rectified Flow | 整流流 |
|
||||
| Autoregressive (AR) | 自回归 |
|
||||
| Unified Multimodal Understanding and Generation | 统一多模态理解与生成 |
|
||||
| Multimodal Large Language Model (MLLM) | 多模态大语言模型 |
|
||||
| Decoupled Encoders | 解耦编码器 |
|
||||
| Representation Alignment Regularization (REPA) | 表示对齐正则化 |
|
||||
| Classifier-Free Guidance (CFG) | 无分类器引导 |
|
||||
| Velocity Field / Velocity Vector | 速度场 / 速度向量 |
|
||||
| Latent Space | 隐空间 |
|
||||
| VAE (Variational Autoencoder) | 变分自编码器 |
|
||||
| Long Skip Connection | 长跳跃连接 |
|
||||
| Causal Attention | 因果注意力 |
|
||||
| Exponential Moving Average (EMA) | 指数滑动平均 |
|
||||
| Supervised Fine-Tuning (SFT) | 有监督微调 |
|
||||
| Fréchet Inception Distance (FID) | 弗雷歇初始距离 |
|
||||
Binary file not shown.
@@ -0,0 +1,114 @@
|
||||
# DreamCraft3D:基于自举扩散先验的层次化 3D 生成
|
||||
|
||||
> **原文标题**:DreamCraft3D: Hierarchical 3D Generation with Bootstrapped Diffusion Prior
|
||||
> **arXiv**:[2310.16818](https://arxiv.org/abs/2310.16818) | **发布**:25 Oct 2023(最后修订 26 Oct 2023)
|
||||
> **作者/机构**:Jingxiang Sun、Bo Zhang(通讯作者)、Ruizhi Shao、Lizhen Wang、Wen Liu、Zhenda Xie、Yebin Liu(清华大学、DeepSeek AI(深度求索)、独立研究者)
|
||||
> **原文 PDF**:[08-DreamCraft3D-2310.16818.pdf](./08-DreamCraft3D-2310.16818.pdf)
|
||||
|
||||
> **说明**:本文作者主要来自清华大学,论文脚注明确标注「Work partially done during the internship at DeepSeek AI」,作者单位中列入 DeepSeek AI(Wen Liu、Zhenda Xie)。DeepSeek 的参与度有限,属实习期间的早期合作成果,与 DeepSeek 主线大模型研究无直接关系;论文代码托管于 `deepseek-ai/DreamCraft3D`。
|
||||
|
||||
## 一、摘要(全文翻译)
|
||||
|
||||
我们提出 DreamCraft3D,一种层次化的 3D 内容生成方法,能够产生高保真且连贯一致的 3D 物体。我们通过利用一张 2D 参考图像来引导「几何雕塑」(geometry sculpting)与「纹理增强」(texture boosting)两个阶段,从而解决该问题。本工作的核心关注点是解决已有方法所遭遇的一致性(consistency)问题。为了雕塑出渲染结果彼此连贯的几何形状,我们通过一个视角相关的扩散模型(view-dependent diffusion model)执行分数蒸馏采样(Score Distillation Sampling, SDS)。这一 3D 先验连同若干训练策略,优先保障几何一致性,但在纹理保真度上有所妥协。我们进一步提出自举分数蒸馏(Bootstrapped Score Distillation, BSD),专门用于提升纹理质量。我们在该场景的增强渲染图像上训练一个个性化扩散模型 DreamBooth,使其获得关于正在被优化的场景的 3D 知识。由这一 3D 感知扩散先验所做的分数蒸馏,为场景提供视角一致的引导。值得注意的是,通过对扩散先验与 3D 场景表征进行交替优化,我们实现了互相促进的改进:优化后的 3D 场景有助于训练场景专属的扩散模型,而后者又为 3D 优化提供越来越视角一致的引导。于是优化过程形成自举(bootstrapped),并带来显著的纹理提升。凭借贯穿层次化生成过程的量身定制 3D 先验,DreamCraft3D 生成的 3D 物体既连贯一致,又具备照片级真实的渲染效果,推进了 3D 内容生成的最先进水平。代码发布于 https://github.com/deepseek-ai/DreamCraft3D 。
|
||||
|
||||
## 二、核心贡献
|
||||
|
||||
1. **层次化流水线**:把「文本→3D」拆为「文本→2D 参考图→几何雕塑→纹理增强」,各阶段用专门技术,在高复杂度资产上兼顾全局 3D 一致性与照片级纹理。
|
||||
2. **视角条件 3D 先验与混合 SDS**:用 Zero-1-to-3 提供 3D 感知的分数引导,并与 2D 扩散先验的 SDS 相加($\mu=2$),在抑制 Janus 问题与保持通用图像升维质量之间取得平衡。
|
||||
3. **几何一致性训练策略**:渐进扩大训练视角、扩散时间步退火、由 NeuS 隐式表面过渡到 DMTet 带纹理网格的由粗到细优化。
|
||||
4. **自举分数蒸馏(BSD)**:在带噪增强的多视角渲染上微调 DreamBooth 得到场景专属 3D 先验,并与 3D 网格交替优化,使扩散先验与 3D 表征互相促进。
|
||||
5. **结构感知隐变量正则化**:用 ControlNet 引导的 inpainting 补全参考视角不可见区域,并以隐变量范数约束温和注入,减少不一致。
|
||||
6. **大幅领先并开源**:300 样本基准上四项指标全面领先 Make-it-3D 与 Magic123,用户研究中平均 92% 偏好本方法;代码公开。
|
||||
|
||||
## 三、方法与技术要点
|
||||
|
||||
### 3.1 总体流水线与设计动机
|
||||
|
||||
灵感来自人工美术流程:先画 2D 草稿,再塑粗模、雕细节、最后上色。方法据此把「文本→3D」拆为三级:先用文本到图像模型生成 2D 参考图,再提升到 3D,依次经过几何雕塑与纹理增强。拆阶段是因为:几何阶段优先多视角一致性与全局结构、容忍纹理损失;纹理阶段固定几何、只专注连贯真实的纹理。关键差别在于 SDS 与 VSD 都从**固定的** 2D 分布蒸馏,只保证单视角「看起来合理」而非全局 3D 一致,故普遍受困于雅努斯问题(Janus issue,各视角单独看合理、整体语义与风格互相矛盾)。
|
||||
|
||||
### 3.2 几何雕塑阶段:参考视角监督损失
|
||||
|
||||
目标是在参考视角匹配参考图 $\hat{\bm{x}}$,同时其他视角依然合理,故对随机视角施加 SDS 损失:
|
||||
|
||||
$$\nabla_\theta \mathcal{L}_{\text{SDS}}(\phi, g(\theta)) = \mathbb{E}_{t,\bm{\epsilon}}\Big[\omega(t)\big(\bm{\epsilon}_\phi(\bm{x}_t;y,t)-\bm{\epsilon}\big)\frac{\partial \bm{x}}{\partial \theta}\Big]$$
|
||||
|
||||
即渲染图加噪后预测噪声与所加噪声的逐像素差,$\omega(t)$ 为权重函数。为利用参考图,在参考视角 $\hat{c}$ 上施加仅计前景的光度损失 $\mathcal{L}_{\text{rgb}}=\lVert\hat{\bm{m}}\odot(\hat{\bm{x}}-g(\theta;\hat{c}))\rVert_2$ 与掩码损失 $\mathcal{L}_{\text{mask}}=\lVert\hat{\bm{m}}-g_m(\theta;\hat{c})\rVert_2$(后者鼓励场景稀疏),并由参考图推断深度与法向先验强制一致:
|
||||
|
||||
$$\mathcal{L}_{\text{depth}}=-\frac{\text{conv}(\bm{d},\hat{\bm{d}})}{\sigma(\bm{d})\sigma(\hat{\bm{d}})},\qquad \mathcal{L}_{\text{normal}}=-\frac{\bm{n}\cdot\hat{\bm{n}}}{\lVert\bm{n}\rVert_2\cdot\lVert\hat{\bm{n}}\rVert_2}$$
|
||||
|
||||
其中 $\hat{\bm{d}}$、$\hat{\bm{n}}$ 由现成单视图估计器给出;深度损失取**负皮尔逊相关**形式以规避深度尺度不匹配。但仅此仍难保证背面语义一致,故需额外手段。
|
||||
|
||||
### 3.3 3D 感知扩散先验与混合 SDS 损失
|
||||
|
||||
仅靠逐视角监督的 3D 优化欠约束,因此引入在大规模 3D 资产上训练的视角条件扩散模型 Zero-1-to-3:给定参考图与相对位姿 $c$ 即可「幻想」对应视角图像,编码更丰富的 3D 知识:
|
||||
|
||||
$$\nabla_\theta \mathcal{L}_{\text{3D-SDS}}(\phi, g(\theta)) = \mathbb{E}_{t,\bm{\epsilon}}\Big[\omega(t)\big(\bm{\epsilon}_\phi(\bm{x}_t;\hat{\bm{x}},c,y,t)-\bm{\epsilon}\big)\frac{\partial \bm{x}}{\partial \theta}\Big]$$
|
||||
|
||||
它能缓解 Janus 类缺陷,但该模型基于类别有限、渲染质量偏低的数据微调,生成能力受损,单独使用会拖坏通用图像升维质量。故采用**混合 SDS 损失**,同时纳入 2D 与 3D 先验:
|
||||
|
||||
$$\nabla_\theta \mathcal{L}_{\text{hybrid}}(\phi, g(\theta)) = \nabla_\theta \mathcal{L}_{\text{SDS}}(\phi, g(\theta)) + \mu \nabla_\theta \mathcal{L}_{\text{3D-SDS}}(\phi, g(\theta))$$
|
||||
|
||||
取 $\mu=2$ 强调 3D 先验权重;$\mathcal{L}_{\text{SDS}}$ 使用 DeepFloyd IF base 模型($64\times64$ 像素空间,更擅长捕捉粗粒度几何)。
|
||||
|
||||
### 3.4 渐进视角训练、时间步退火与由粗到细
|
||||
|
||||
**渐进视角训练**:直接求解 360° 自由视角会因单张参考图的固有歧义产生几何伪影,故逐步扩大训练视角,把已稳固的几何传播到 360°。**扩散时间步退火**:优化初期从 $[0.7,0.85]$ 采样较大的 $t$ 以建立全局结构,数百次迭代内线性退火到 $[0.2,0.5]$ 再精修细节。**细节结构增强**:先用 NeuS 式隐式表面与体渲染建立粗结构,再用可变形四面体网格(DMTet)初始化带纹理网格以获得高分辨率细节;该表示解耦几何与纹理学习,使此后可以只精修纹理。
|
||||
|
||||
### 3.5 自举分数蒸馏(BSD)
|
||||
|
||||
几何阶段纹理模糊有三因:2D 先验分辨率粗($64\times64$)、3D 感知模型锐度有限、大无分类器引导(CFG)带来过平滑与过饱和。纹理阶段改用变分分数蒸馏(VSD)并切换到 Stable Diffusion 获取高分辨率梯度,固定四面体网格只优化纹理,且刻意**不**用 Zero-1-to-3(会损害纹理质量):
|
||||
|
||||
$$\mathcal{L}_{\text{VSD}}=D_{\text{KL}}\big(q^\mu(\bm{x}_0|y)\,\|\,p(\bm{x}_0|y)\big),\qquad \nabla_\theta \mathcal{L}_{\text{VSD}} = \mathbb{E}_{t,\bm{\epsilon}}\Big[\omega(t)\big(\bm{\epsilon}_\phi(\bm{x}_t;y,t)-\bm{\epsilon}_{\text{lora}}(\bm{x}_t;y,t,c)\big)\frac{\partial \bm{x}}{\partial \theta}\Big]$$
|
||||
|
||||
但仅用 VSD,不一致的纹理可能回归。作者观察到上一阶段的多视角渲染虽偏模糊却具备良好 3D 一致性,于是用 DreamBooth 在这些渲染 $\{\bm{x}\}$ 上微调,让模型对「场景环绕视角」形成概念——提示词含唯一标识符与类别名(如 "A [V] astronaut"),每视角相机参数作为附加条件。关键技巧是用**带噪增强**渲染 $\bm{x_r}=r_{t'}(\bm{x})$:按时间步 $t'$ 注入高斯噪声 $\bm{x}_{t'}=\alpha_{t'}\bm{x}_0+\sigma_{t'}\bm{\epsilon}$ 再由模型恢复,$t'$ 越大暴露的高频细节越多、但保真度越低。据此对 3D 场景与扩散先验做**交替优化**:初期渲染模糊就用较大的 $t'$ 增强纹理(代价是引入一些 3D 不一致);纹理变精细后减小噪声,DreamBooth 便从更一致的渲染学习。3D 梯度由如下 BSD 损失给出:
|
||||
|
||||
$$\nabla_\theta \mathcal{L}_{\text{BSD}}(\phi, g(\theta)) = \mathbb{E}_{t,\bm{\epsilon},c}\Big[\omega(t)\big(\bm{\epsilon}_{\text{DreamBooth}}(\bm{x}_t;y,t,r_{t'}(\bm{x}),c)-\bm{\epsilon}_{\text{lora}}(\bm{x}_t;y,t,\bm{x},c)\big)\frac{\partial \bm{x}}{\partial \theta}\Big]$$
|
||||
|
||||
与从固定 2D 模型蒸馏的先前工作不同,BSD 学习一个**不断演化**的模型,靠正在被雕刻的 3D 模型反馈而越来越 3D 一致;交替两轮即可得到细节丰富且一致的纹理。
|
||||
|
||||
### 3.6 结构感知隐变量正则化与实现细节
|
||||
|
||||
**结构感知隐变量正则化**:为在保留 BSD 画质的同时减少不一致,另用 ControlNet 引导的 inpainting 扩散模型正则化纹理——先算出任意视角渲染图在参考视角下的可见部分(生成中的不变量),由 inpainting 补全其余区域并经 ControlNet 注入几何法向;补全图不直接作为渲染图损失,而以隐变量范数约束温和引入:$\mathcal{L}_{\text{reg}}(\phi,g(\theta))=\Sigma(\lVert E(x)\rVert_2-\lVert E(x_{\text{reg}})\rVert_2)^2$。
|
||||
|
||||
**实现细节**:几何阶段用 NeuS 与带纹理网格、Instant NGP(分辨率 64→384),纹理网格用 DMTet(网格 128、渲染 512);按 Magic3D 定期做密度剪枝,并**冻结材质增广**(不利于收敛)。粗 NeuS 阶段一半 GPU 采样随机相机距离与视场角、另一半固定默认内参(Zero-1-to-3 需固定内参)。时间退火:几何阶段 $t$ 由 $\mathcal{U}(0.7,0.85)$ 退火到 $\mathcal{U}(0.2,0.50)$ 后保持,多视角数据集生成由 $t=0.5$ 退火到 $t=0.1$。
|
||||
|
||||
## 四、主要实验结果
|
||||
|
||||
| 基准 / 任务 | 本模型 | 对比对象 | 说明 |
|
||||
|---|---|---|---|
|
||||
| CLIP ↑(语义一致性) | 0.896 | Make-it-3D 0.872;Magic123 0.843 | 300 个生成样本 |
|
||||
| Contextual Distance ↓ | 1.579 | Make-it-3D 1.609;Magic123 1.628 | 像素级一致性 |
|
||||
| PSNR ↑(参考视角保真) | 31.801 | Magic123 22.838;Make-it-3D 18.937 | 参考视角 |
|
||||
| LPIPS ↓(参考视角保真) | 0.005 | Magic123 0.053;Make-it-3D 0.054 | 参考视角 |
|
||||
| 用户研究偏好率 | 平均 92% 的用户偏好本方法 | DreamFusion、Magic3D、ProlificDreamer、Make-it-3D、Magic123 | 15 组提示/图像,32 名参与者,共 480 份回答 |
|
||||
| 消融:去掉 3D 先验 | 出现多面 Janus 问题、几何不规则 | 完整模型 | 说明视角感知 3D 先验对全局一致形状的关键作用 |
|
||||
| 消融:纹理优化损失 | BSD 在真实感与一致性之间取得平衡 | SDS(过平滑、过饱和);VSD(真实但一致性明显差) | 1 轮 BSD 提升一致性,2 轮 BSD 进一步增加细节 |
|
||||
|
||||
定量上四指标全面领先两个图像到 3D 基线,参考视角保真度提升最悬殊:PSNR 从 22.838 升到 31.801,LPIPS 从 0.053 降到 0.005。定性上所有文本到 3D 方法都有一致性问题:ProlificDreamer 纹理真实却难形成合理 3D 物体;Make-it-3D 正面好但几何欠佳;Magic123 借 Zero-1-to-3 改善几何正则,但两者纹理与细节都过度平滑。附录补充多样性实验与失败案例(大象鼻子几何学错)。
|
||||
|
||||
## 五、结论、局限与影响
|
||||
|
||||
- **结论**:几何雕塑阶段产生合理连贯的 3D 几何,自举分数蒸馏——从优化中的 3D 感知扩散先验蒸馏、并适配被优化实例的多视角渲染——显著提升纹理质量与一致性;方法生成高保真、细节丰富且多视角一致的 3D 资产,作者视之为朝向「3D 内容创作民主化」的重要一步。
|
||||
- **局限性**(作者自述,附录 A.3):因深度歧义与深度先验不准确,偶尔会把正面视角的几何细节错误混入纹理(附录图 9 大象鼻子为失败案例);且未显式分离材质与光照,留待未来探索。
|
||||
- **影响**:把扩散先验从静态蒸馏目标改造为随优化演化的自举先验,为 2D 先验驱动的 3D 生成提供了可复用思路;其分阶段范式与开源实现对该方向后续工作有直接参考价值。
|
||||
|
||||
## 六、关键术语对照表
|
||||
|
||||
| English | 中文 |
|
||||
|---|---|
|
||||
| Hierarchical 3D generation | 层次化 3D 生成 |
|
||||
| Score Distillation Sampling (SDS) | 分数蒸馏采样 |
|
||||
| Bootstrapped Score Distillation (BSD) | 自举分数蒸馏 |
|
||||
| Variational Score Distillation (VSD) | 变分分数蒸馏 |
|
||||
| View-dependent diffusion model | 视角相关扩散模型 |
|
||||
| 3D-aware diffusion prior | 3D 感知扩散先验 |
|
||||
| Classifier-Free Guidance (CFG) | 无分类器引导 |
|
||||
| Janus problem | 雅努斯(多面)问题 |
|
||||
| Geometry sculpting | 几何雕塑 |
|
||||
| Texture boosting | 纹理增强 |
|
||||
| DreamBooth | 个性化扩散模型微调(DreamBooth) |
|
||||
| DMTet (Deformable Tetrahedral Grid) | 可变形四面体网格 |
|
||||
| NeuS | 神经隐式表面表示 |
|
||||
| Timestep annealing | 时间步退火 |
|
||||
| Photometric loss | 光度损失 |
|
||||
| ControlNet-guided inpainting | ControlNet 引导的图像修复 |
|
||||
Binary file not shown.
Reference in New Issue
Block a user