[CV]《DeepSeek-OCR: Contexts Optical Compression》H Wei, Y Sun, Y Li [DeepSeek-AI] (2025)
DeepSeek-OCR:通过光学2D映射压缩长上下文的创新探索
这是一个视觉-语言模型(VLM),旨在解决大型语言模型(LLM)处理长文本时的计算瓶颈。通过将文本渲染成图像,利用视觉token进行高效压缩,该模型展示了光学上下文压缩的潜力。这不仅仅是OCR工具,更是LLM长上下文优化的新思路。
1. 背景与动机:为什么需要光学压缩?
LLM在处理长序列时,计算复杂度呈二次方增长,容易导致内存爆炸和效率低下。论文提出一个巧妙解决方案:利用视觉模态作为文本信息的压缩介质。一张图像能以远少于等效文本的token表示丰富内容,实现高压缩比。这启发我们从LLM视角重新审视VLM,不再局限于视觉问答(VQA),而是聚焦视觉编码如何提升文本处理效率。OCR任务作为视觉-文本桥梁,提供量化评估基准,验证压缩-解压缩映射的可行性。
这种思路特别适用于历史长上下文压缩和LLM的记忆遗忘机制。例如,在多轮对话中,将旧历史渲染成图像逐步缩小分辨率,能模拟人类记忆衰减曲线:近期信息高保真,远期信息渐趋模糊,从而实现无限上下文架构,同时平衡信息保留与计算约束。这为代理系统和大规模文本处理开辟新路径,值得AI研究者深入思考。
2. 模型架构:DeepEncoder + MoE解码器
DeepSeek-OCR由两个核心组件组成:
- DeepEncoder(视觉编码器,约380M参数):这是模型的心脏,专为高分辨率输入设计,确保低激活内存和高压缩比。它串联SAM-base(80M,窗口注意力主导的感知组件)和CLIP-large(300M,去除嵌入层,全局注意力主导的知识组件),中间通过16×卷积压缩器桥接。输入1024×1024图像时,先生成4096个patch token,经窗口注意力处理后压缩至256个token,显著降低全局注意力的计算负担。
- DeepSeek3B-MoE解码器(激活570M参数):基于DeepSeekMoE架构,从压缩视觉token重建文本表示。公式简述:f_dec(Z) → X̂,其中Z是少量视觉token(n),X̂是原始文本(N > n)。这是一种非线性映射,小型LM即可学习,大型LLM经预训练后潜力更大。
为支持不同压缩比,DeepEncoder设计多分辨率模式(见表1):
- 原生分辨率:Tiny (512×512, 64 token)、Small (640×640, 100 token)、Base (1024×1024, 256 token)、Large (1280×1280, 400 token)。低分辨率直接resize,高分辨率padding保持宽高比,有效token按公式N_valid = N_actual × [1 - (max(w,h) - min(w,h))/max(w,h)] 计算。
- 动态分辨率:Gundam (n×640×640 + 1024×1024, n=2-9, 总token ~795) 和Gundam-M (n×1024×1024 + 1280×1280),适用于超高分辨率如报纸图像。通过动态位置编码插值,一个模型支持多模式,避免过度碎片化。
相比现有VLM编码器(如Vary的双塔、InternVL的平铺、Qwen的NaViT),DeepEncoder克服了高激活、多token和部署难题,实现高效高分辨率处理。
3. 数据与训练:构建多样化OCR引擎
论文构建了全面数据管道,确保模型在OCR 1.0(传统OCR)和OCR 2.0(复杂解析)上均衡发展:
- OCR 1.0数据(70%):30M PDF页(覆盖100语言,中英25M,其他5M),包括粗标注(fitz提取,教少数语言识别)和细标注(2M中英页,用PP-DocLayout+ MinerU/GOT-OCR2.0生成布局+文本对)。另有3M Word数据(无布局,高质公式/表格)和10M场景OCR(LAION/Wukong + PaddleOCR,中英各10M)。支持提示控制布局输出。
- OCR 2.0数据:10M图表(pyecharts/matplotlib渲染,线/柱/饼图,转HTML表节省token);5M化学公式(PubChem SMILES + RDKit渲染);1M平面几何(Slow Perception生成,ruler size=4,添加平移不变增强)。
- 通用视觉数据(20%):借鉴DeepSeek-VL2,生成caption/检测/grounding数据,注入一般图像理解能力。
- 纯文本数据(10%):内部预训练数据,长度8192 token,确保语言能力。
训练分两阶段:
- DeepEncoder预训练:用紧凑LM + 次token预测,OCR1.0/2.0 + 100M LAION数据,2 epoch,batch 1280,lr 5e-5,序列4096。
- DeepSeek-OCR端到端训练:20节点(8×A100-40G),管道并行(PP=4)+数据并行(DP=40),global batch 640,lr 3e-5。多模态速度70B token/天,文本90B token/天。Gundam-M用6M数据续训。
这种数据引擎不仅提升OCR精度,还为LLM/VLM生成海量训练数据:在生产中,一张A100-40G卡每天处理20万+页,20节点达3300万页/天。
4. 评估结果:压缩边界与实用性能
论文通过Fox基准量化视觉-文本压缩:选600-1300 token英文文档(100页),用Tiny/Small模式测试。结果(表2)显示:
- 压缩比