← 返回 2026-01-29

DeepSeek-OCR 2:视觉因果流 DeepSeek-OCR 2: Visual Causal Flow

Haoran Wei, Yaofeng Sun, Yukun Li 📅 2026-01-28 👍 73 2026-07-13 08:35
OCR 因果推理 文档解析 注意力机制 视觉语言模型

用LLM式编码器实现视觉token的因果重排序,突破文档OCR的语义理解瓶颈

前置知识

Vision-Language Model (VLM)

视觉语言模型是一类能够同时处理图像和文本的深度学习架构,典型结构为[视觉编码器-投影器-语言模型]三段式。视觉编码器(如 CLIP ViT)将图像提取为视觉 token 序列,投影器将视觉特征映射到语言模型的嵌入空间,语言模型则基于视觉和文本 token 进行自回归生成。VLM 已成为文档 OCR、图像描述、视觉问答等任务的主流范式。其核心思想是利用预训练语言模型的强大文本理解能力,通过视觉-语言对齐来理解图像内容。

本文的核心创新正是对 VLM 的编码器组件进行根本性改造,理解 VLM 的基本架构是理解本文技术贡献的前提。

Causal Attention vs. Bidirectional Attention

双向注意力(Bidirectional Attention)允许序列中每个 token 关注所有其他 token,计算公式为 $A = ext{softmax}(QK^T/\sqrt{d})V$,视觉编码器(如 ViT)通常采用这种机制来获取全局感受野。因果注意力(Causal Attention)则限制每个 token 只能关注其之前的 token,通过下三角掩码矩阵 $M$ 实现 $A = ext{softmax}((QK^T/\sqrt{d}) \odot M)V$,语言模型解码器采用此机制实现自回归生成。两种注意力机制的选择直接影响模型的信息流动方式和推理能力。

本文的核心创新在于在同一编码器中混合使用两种注意力机制:视觉 token 用双向注意力,因果流查询用因果注意力,理解这一设计是读懂论文的关键。

Learnable Queries / Object Queries

可学习查询是一组在训练过程中学习的嵌入向量,最初由 DETR 在目标检测中引入(100 个 object queries),后被 BLIP-2 的 Q-former 沿用(32 个 token queries)用于视觉 token 压缩。这些查询通过注意力机制与输入特征交互,可以理解为一组'问题',训练后学会从输入中提取特定信息。在 DETR 中,查询学习物体的先验(形状、位置);在 BLIP-2 中,查询学习将数百个视觉 token 压缩为 32 个语义表示。

本文提出的 causal flow tokens 本质上就是一种特殊的可学习查询,但创新性地将其与因果注意力结合,赋予其语义重排序能力。

Raster-scan Order

光栅扫描顺序是将 2D 图像 patch 按从左到右、从上到下的固定顺序展平为 1D 序列的方法,这是当前视觉编码器处理图像的标准方式。例如,一张 16x16 patch 组成的图像会被展平为 256 个 token 的序列,顺序固定为 (0,0), (0,1), ..., (0,15), (1,0), ..., (15,15)。然而,这种固定顺序忽略了图像的语义结构——例如文档中的多栏布局、表格的行列结构、公式的上下标关系等都需要非线性的阅读顺序。

本文的核心动机正是光栅扫描顺序与人类视觉感知的矛盾,DeepEncoder V2 通过因果流机制打破了这一限制。

Mixture-of-Experts (MoE)

混合专家架构是一种条件计算技术,模型包含多个'专家'子网络(通常是 FFN 层),每次前向传播只激活其中一部分专家。具体而言,一个门控网络根据输入 token 的特征选择 top-k 个专家进行计算,其余专家不参与。DeepSeek-3B 的 MoE 结构约有 3B 总参数但仅 570M 活跃参数,在保持模型容量的同时显著降低计算成本。

本文的解码器采用 DeepSeek-3B MoE 架构,理解 MoE 有助于理解模型的整体参数量和计算效率设计。

研究动机

当前视觉语言模型在处理图像时,普遍采用固定的光栅扫描顺序(从左到右、从上到下)将 2D 图像 patch 展平为 1D 序列后输入语言模型。这种做法在简单场景下尚可接受,但在处理复杂布局文档时暴露出严重问题:人类视觉系统在阅读文档时,眼动轨迹遵循语义逻辑——例如阅读双栏论文时会先读左栏再读右栏,阅读表格时按行列结构扫描,追踪公式时按数学结构顺序注视。这些阅读顺序是因果驱动的,每个注视点的顺序取决于语义理解而非空间坐标。光栅扫描顺序完全忽略了这种语义因果关系,导致模型在处理报纸(多栏布局)、学术论文(图表穿插)、表格(行列结构)等复杂文档时,阅读顺序准确率显著下降。从 Table 3 的数据可见,DeepSeek-OCR 在报纸类文档的阅读顺序编辑距离高达 0.217,在彩色教材上达到 0.125,这些场景的阅读逻辑远比单栏文本复杂。

本文的目标是本文的目标是设计一种全新的视觉编码器架构——DeepEncoder V2,使其具备因果推理能力,能够根据图像语义内容动态调整视觉 token 的处理顺序,而不是被固定的光栅扫描顺序束缚。具体而言,作者希望实现:(1)在保持 DeepSeek-OCR 的高压缩比(视觉 token 数量在 256-1120 之间)的同时,显著提升文档解析性能;(2)通过因果流机制改善阅读顺序的准确性,使模型能够像人类一样根据语义逻辑组织视觉信息;(3)为统一的多模态编码器探索一条新路径,验证 LLM 架构作为视觉编码器的可行性。

与已有工作不同的是,本文的独特切入角度在于对人类视觉认知机制的深度借鉴。作者观察到,人类视觉系统的眼动模式并非简单的空间扫描,而是受语义驱动的因果序列——追踪螺旋线时,每个注视点都因果地依赖于前一个注视点。这一认知洞察启发了一个全新的架构思路:能否用两个级联的 1D 因果推理结构来实现真正的 2D 理解?具体而言,编码器通过可学习查询对视觉 token 进行因果重排序(第一层因果推理),解码器再对重排序后的序列进行自回归推理(第二层因果推理)。这种[分解-重组]的思路与现有方法有本质区别:DETR 和 BLIP-2 的可学习查询都使用双向注意力,不具备因果重排能力;而本文创新性地将因果注意力引入视觉编码器,使每个查询 token 能够基于所有视觉 token 和前序查询进行渐进式语义重组。

核心方法

DeepSeek-OCR 2 的整体架构继承自 DeepSeek-OCR,由编码器和解码器两部分组成,但核心创新在于将编码器从 DeepEncoder 升级为 DeepEncoder V2。直觉上,该方法的核心思想可以用一个类比来理解:传统视觉编码器像是一个只会按固定路线巡逻的机器人,而 DeepEncoder V2 则像一个有经验的阅读者,会根据内容的语义结构灵活调整视线轨迹。技术路线上,整个系统由三个组件串联:(1)视觉分词器(Vision Tokenizer):基于 80M 参数的 SAM-base 加两个卷积层,将图像压缩为视觉 token,实现 16 倍的 token 压缩;(2)DeepEncoder V2:用 500M 参数的 Qwen2-0.5B 替代原有的 CLIP ViT,通过定制化的注意力掩码实现双向注意力(视觉 token)和因果注意力(因果流查询)的混合,对视觉 token 进行语义重排序;(3)DeepSeek-MoE 解码器:3B 参数的 MoE 结构(约 570M 活跃参数),基于重排序后的视觉 token 和文本提示进行自回归生成。这种设计形成了两层级联的因果推理:编码器负责视觉信息的因果重排序,解码器负责基于重排序序列的任务推理。

本文最核心的创新在于[因果流查询](Causal Flow Query)机制及其对应的注意力掩码设计。与已有方法的本质区别体现在三个层面:第一,架构选择上的颠覆——用 LLM 架构(Qwen2-0.5B)替代 CLIP ViT 作为视觉编码器的核心组件,这打破了[视觉任务必须用 ViT]的思维定式,使得视觉编码器能够天然继承 LLM 社区的基础设施优化(MoE、高效注意力等)。第二,注意力机制的创新混合——在同一个 Transformer 中,视觉 token 使用双向注意力(保留 CLIP 的全局建模能力),因果流查询使用因果注意力(获得语义重排序能力),两者通过分块注意力掩码 $\mathbf{M}$ 实现,其中视觉区域为全 1 矩阵 $\mathbf{1}_{m \times m}$,查询区域为下三角矩阵 $\text{LowerTri}(n)$。第三,因果流查询的设计——查询 token 作为视觉 token 的后缀拼接,每个查询可以关注所有视觉 token 和前序查询,通过训练学会根据图像语义动态调整信息获取顺序。实验表明,这种方法使阅读顺序编辑距离从 0.085 降至 0.057,证明了因果重排序的有效性。

方法步骤详情

DeepSeek-OCR 2 的完整处理流程可以分为以下步骤:(1)图像输入与 patch 分割:输入图像 $\mathbf{I} \in \mathbb{R}^{H \times W \times 3}$,通过 SAM-base 网络和两个卷积层组成的视觉分词器 $E$ 进行 16 倍压缩,生成 $m$ 个视觉 token $\mathbf{V} \in \mathbb{R}^{m \times d}$,其中 $d=896$;(2)序列拼接:将可学习的因果流查询嵌入 $\mathbf{Q}_0 \in \mathbb{R}^{n \times d}$ 作为后缀与视觉 token 拼接,形成序列 $[\mathbf{V}; \mathbf{Q}_0]$,其中查询数量 $n$ 等于视觉 token 数量 $m$;(3)因果流编码:将拼接后的序列输入 $L$ 层 Transformer $\mathcal{T}_L$,使用定制化的注意力掩码 $\mathbf{M} \in \{0, 1\}^{2n \times 2n}$,视觉 token 区域为双向注意力,查询区域为因果注意力;(4)查询提取:通过投影算子 $\pi_Q$ 提取编码器输出的后 $n$ 个 token(即因果流查询的输出),丢弃原始视觉 token;(5)解码生成:将重排序后的视觉 token 输入 DeepSeek-3B MoE 解码器 $D$,与文本提示一起进行自回归生成,输出 logits $\mathbf{O} \in \mathbb{R}^{n \times |\mathcal{V}|}$。整个前向传播可表示为 $\mathbf{O} = D(\pi_Q(\mathcal{T}_L(E(\mathbf{I}) \oplus \mathbf{Q}_0; \mathbf{M})))$。

技术新颖性

DeepEncoder V2 的技术新颖性体现在多个维度。首先,在视觉编码器设计范式上的突破:此前的视觉编码器(CLIP、DINOv2、SigLIP 等)无一例外采用纯 ViT 架构,而本文首次将 LLM 架构用作视觉编码器的核心组件,并通过实验证明 mBART 风格的编码器-解码器结构无法收敛,只有 decoder-only 的前缀拼接设计才能有效工作——这一发现本身就具有重要方法论价值。其次,在注意力掩码设计上的创新:通过分块矩阵 $\mathbf{M} = \begin{bmatrix} \mathbf{1}_{m \times m} & \mathbf{0}_{m \times n} \\ \mathbf{1}_{n \times m} & \text{LowerTri}(n) \end{bmatrix}$ 实现了两种注意力的优雅共存,其中 $n=m$ 的等基数设计为重排序提供了充足的容量。第三,在训练策略上的精心设计:三阶段训练(编码器预训练 40k 迭代,查询增强 15k 迭代,解码器特化 20k 迭代)逐步解锁能力,特别是第二阶段冻结视觉分词器、联合优化 LLM 编码器和解码器的策略,有效强化了因果重排序能力。最后,该架构为统一多模态编码器开辟了新路径:只需为不同模态配置特定的可学习查询,就能在同一参数空间中处理图像、音频、文本等多种模态。

CLIP vs. LM as Vision Encoder
Figure 1: CLIP vs. LM as Vision Encoder
Parallelized Queries in DETR and BLIP2
Figure 2: Parallelized Queries in DETR and BLIP2
DeepSeek-OCR 2 Architecture
Figure 3: DeepSeek-OCR 2 Architecture
Token Count Calculation in DeepEncoder V2
Figure 4: Token Count Calculation in DeepEncoder V2
Attention Mask Architecture of DeepEncoder V2
Figure 5: Attention Mask Architecture of DeepEncoder V2

实验结果

DeepSeek-OCR 2 在 OmniDocBench v1.5 基准测试上取得了 91.09% 的总体成绩,相比 DeepSeek-OCR 基线(87.36%)提升了 3.73 个百分点,这一提升是在使用更少视觉 token 的情况下实现的(1120 vs. 1156)。具体到各维度:文本编辑距离从 0.073 降至 0.048(降低 34%),公式 CDM 从 84.14 提升至 90.31(提升 6.17 个百分点),表格 TEDs 从 85.25 提升至 87.75(提升 2.5 个百分点),表格 TEDSs 从 89.01 提升至 92.06(提升 3.05 个百分点)。最引人注目的是阅读顺序编辑距离从 0.085 降至 0.057(降低 33%),这是因果流机制有效性的直接证据。在与更大模型的对比中,DeepSeek-OCR 2(1120 token)的表现超越了 Qwen3-VL-235B(89.15%,>6000 token)、Gemini-2.5 Pro(88.03%)、dots.ocr(88.41%,>6000 token)等参数量远大于自身的模型。在生产环境测试中,DeepSeek-OCR 2 将在线用户日志图像的重复率从 6.25% 降至 4.17%(降低 2.08 个百分点),PDF 数据生产的重复率从 3.69% 降至 2.88%(降低 0.81 个百分点),验证了其在实际应用中的可靠性。在 9 种文档类型的细粒度分析中,DeepSeek-OCR 2 在几乎所有类型的文本识别和阅读顺序指标上都优于基线,唯一表现较弱的是报纸类(文本编辑距离 0.139,阅读顺序 0.176),作者将此归因于训练数据不足(仅 25 万样本)和视觉 token 上限较低。

Comprehensive Evaluation on OmniDocBench v1.5
Table 1: Comprehensive Evaluation on OmniDocBench v1.5
Edit Distances for Different Document Categories
Table 2: Edit Distances for Different Document Categories
Detailed Comparison Across 9 Document Types
Table 3: Detailed Comparison Across 9 Document Types
Production Performance Comparison
Table 4: Production Performance Comparison
查看结构化数据
任务指标本文基线提升
文档解析(OmniDocBench v1.5 总体) Overall Score 91.09% DeepSeek-OCR 87.36% +3.73%
文档解析(文本识别) Text Edit Distance 0.048 DeepSeek-OCR 0.073 降低 34%
文档解析(公式识别) Formula CDM 90.31 DeepSeek-OCR 84.14 +6.17
文档解析(表格结构) Table TEDs 87.75 DeepSeek-OCR 85.25 +2.50
文档解析(表格语义) Table TEDSs 92.06 DeepSeek-OCR 89.01 +3.05
文档解析(阅读顺序) R-order Edit Distance 0.057 DeepSeek-OCR 0.085 降低 33%
生产环境(在线图像) Repeat Rate 4.17% DeepSeek-OCR 6.25% 降低 2.08%
生产环境(PDF数据) Repeat Rate 2.88% DeepSeek-OCR 3.69% 降低 0.81%

局限与改进

尽管 DeepSeek-OCR 2 取得了显著成果,但仍存在多方面的局限性。首先,在报纸类文档上的表现明显弱于其他类型,文本编辑距离为 0.139(vs. 学术论文的 0.013),阅读顺序编辑距离为 0.176(vs. 研究报告的 0.011),作者承认这主要源于两个因素:视觉 token 上限(1120)可能不足以覆盖文本密集的报纸页面,以及训练数据中报纸样本仅 25 万条,远低于其他文档类型。其次,因果流查询的数量被设计为与视觉 token 数量相等($n=m$),这意味着对于高分辨率图像,查询数量会线性增长,可能带来计算效率问题,同时等基数假设[重排序不需要额外容量]是否始终成立值得商榷。第三,论文仅在文档 OCR 任务上进行了验证,对于更广泛的视觉理解任务(如自然图像理解、视频理解、3D 场景理解等)是否同样有效尚不清楚,作者在讨论中也承认[optical text reading... constitutes only a small part of the broader visual understanding landscape]。此外,论文缺乏对因果流机制的可视化分析——例如,训练后的因果流查询实际学到了什么样的阅读顺序?对于不同布局的文档,重排序模式有何差异?这些定性分析将大大增强论文的说服力。最后,三阶段训练流程(编码器预训练 40k 迭代 + 查询增强 15k 迭代 + 解码器特化 20k 迭代)需要 160 张 A100 GPU,训练成本相当可观,但论文未提供具体的训练时间和计算量数据。

独立分析的弱点

独立分析本文可以发现以下几个值得关注的弱点:(1)因果流查询的容量瓶颈——当前设计强制 $n=m$(查询数等于视觉 token 数),但对于包含复杂布局的文档,可能需要多次[重读]同一区域才能确定正确顺序,有限的查询数量可能无法支持多跳重排序。改进方向是允许 $n > m$,例如通过重复使用查询集或引入层级查询结构。(2)缺乏显式的阅读顺序监督——当前的训练完全依赖隐式的语言建模目标,没有直接的阅读顺序标注作为监督信号。引入阅读顺序的显式损失函数可能加速因果流的学习。(3)视觉分词器与 LLM 编码器的解耦不足——SAM-base 视觉分词器(80M)和 Qwen2-0.5B 编码器是分开初始化的,可能存在特征空间不匹配的问题。端到端联合训练或设计更紧密的接口可能改善这一问题。(4)报纸类文档的弱点——作者将其归因于数据不足,但更根本的原因可能是报纸的多栏布局需要更复杂的非线性阅读顺序,当前的因果流机制可能不足以建模这种高度复杂的视觉逻辑。(5)缺乏与其他因果/顺序建模方法的对比——例如,与基于强化学习的阅读顺序学习、基于图神经网络的布局建模等方法的对比缺失,使得因果流机制的独特优势不够清晰。

未来方向

作者在论文中提出了两个值得深入探索的未来方向。第一,走向真正的 2D 推理——当前的两层级联因果推理(编码器重排序 + 解码器推理)是一个有前景的起点,但要实现真正的 2D 理解可能需要更长的因果流序列以支持多次重读和多跳重排序,这可能需要在因果流 token 数量和计算效率之间找到更好的平衡。第二,走向原生多模态——DeepEncoder V2 的 LLM 式架构天然支持扩展到其他模态,只需为不同模态配置特定的可学习查询即可在同一参数空间中处理图像、音频、文本。基于当前成果还可以延伸以下方向:(1)将因果流机制应用于视频理解,利用时间维度的因果性进一步增强推理能力;(2)探索因果流查询的可解释性,可视化分析模型学到了什么样的阅读策略;(3)将该架构应用于更多视觉推理任务,如图表理解、UI 元素识别、数学公式解析等;(4)研究因果流机制与思维链(Chain-of-Thought)推理的结合,探索视觉因果推理与语言因果推理的协同效应。

复现评估

本文在可复现性方面表现良好。代码和模型权重已在 GitHub 公开(http://github.com/deepseek-ai/DeepSeek-OCR-2),降低了复现门槛。训练数据方面,作者使用了与 DeepSeek-OCR 相同的数据源(OCR 1.0、OCR 2.0 和通用视觉数据),OCR 数据占比 80%,但具体的私有数据规模和获取方式未完全公开,这可能给外部复现带来一定困难。算力需求方面,训练在 160 张 A100 GPU(40GB 显存)上进行,总迭代次数为 75k(40k + 15k + 20k),对于学术机构而言算力门槛较高,但对于企业实验室是可以接受的。架构细节方面,论文提供了充分的信息:视觉分词器基于 SAM-base(80M 参数)加两个卷积层,LLM 编码器基于 Qwen2-0.5B-base,解码器基于 DeepSeek-3B-A500M,注意力掩码的数学形式(公式 1)清晰明确。训练策略方面,三阶段流程的关键超参数(学习率、批大小、优化器)均有详细说明。总体而言,具备足够算力的研究团队应该能够复现本文的核心结果,但完整的端到端复现可能需要访问 DeepSeek 的私有数据集。