![]()
这项由阿联酋人工智能大学(MBZUAI)与IBM研究院联合开展的研究,以预印本形式于2026年5月12日发布在arXiv平台,论文编号为arXiv:2605.12623。有兴趣深入了解的读者可通过该编号查阅完整论文。
**一、 故事从一道"翻译难题"说起**
假设你手边有一份泰语的法律合同、一份阿拉伯语的学术报告、再加上一份用缅甸文写成的医疗记录。你想让电脑帮你把这些文件里的文字、表格、图表全部准确提取出来,最好连版面结构也一并保留。听起来不难?实际上,这正是当今人工智能领域最棘手的问题之一。
现有的文档理解系统在英语上表现相当出色,但一旦遇到资源匮乏的小语种,准确率就会断崖式下跌——有时甚至跌去40%到60%。造成这一困境的根本原因,在于训练数据严重短缺。没有足够的标注数据,再聪明的模型也无从学起。
更棘手的是,现有的数据制作方式本身就存在恶性循环:要么靠人工标注,费时费力,根本无法覆盖几十种语言;要么靠已有的AI模型自动打标签,但这些模型本身就对英语有偏见,它们给出的标注同样带着偏见,用这些数据训练出来的下一代模型,偏见只会有增无减。这就好比一个只读过中文书的老师,你让他去教学生认日文,他教出来的学生自然也只会中文。
正是为了打破这个死循环,阿联酋人工智能大学和IBM研究院的联合团队提出了DocAtlas——一套全新的多语言文档理解框架,目标是让机器真正读懂来自世界各地的文件,覆盖82种语言、9种不同任务。
**二、 传统做法的三条死胡同**
要理解DocAtlas的价值,得先搞清楚前人是怎么做的,以及为什么做不下去。
第一种做法是人工标注。研究人员把文档打印出来(或者在屏幕上),然后人工框出每一段文字、每一张表格、每一个标题,告诉机器"这是段落""那是表格"。这种方式质量最高,但代价极其昂贵。一个人一天能标注多少页?一个团队能覆盖多少种语言?FUNSD这个经典数据集只有199份文档,只支持一种语言,XFUND扩展到7种语言,也只有1300份。对于82种语言来说,人工标注根本是杯水车薪。
第二种做法是合成生成。既然真实文档难以标注,那就自己造文档吧——把文字放在预设好的位置上,位置本身就是标注。这种方式省去了人工,但造出来的文档太"假",缺乏嵌套表格、混排图文这些真实世界里常见的复杂结构,训练出来的模型一遇到真实文件就懵了。
第三种做法是让AI模型自动打标签。用一个已有的布局检测模型,扫描文档图片,框出各个区域,再贴上标签。这看似省事,却引入了前面说的恶性循环——模型的偏见直接污染了标注数据。DocBank就是这样做的,拥有50万份文档,但标注质量受制于检测模型的能力上限。
研究团队还提到了另一条路:渲染驱动的标注方法。已有的WordScape项目就沿着这个方向走,从Common Crawl(一个覆盖全球网页内容的超大型数据库)里抓取Word文档,通过给文档里的不同组件染色来识别它们的位置。这个思路没错,但执行上存在几个明显漏洞:用LibreOffice把Word文档转成PDF时,会因为字体替换和文字重排产生"渲染漂移",也就是说转换前后同样的文字可能出现在不同位置;文字提取和位置框对不上,没有几何对齐保证;对于阿拉伯语、希伯来语这类从右向左书写的文字,完全没有支持;图表被当作不透明的图片一概处理,内容无从提取。
DocAtlas的核心贡献,正是在吸收了渲染驱动这条路的合理内核之后,把上述每一个漏洞都堵上了。
**三、 "差值渲染":像照相机找不同一样精确定位**
DocAtlas的第一条数据生产流水线,处理的是真实的Word文档(.docx格式),数据来源同样是Common Crawl这个公开的网页存档库。
整个流程可以用一个日常的比方来理解:假设你在一张空白画布上画了一幅画,现在你想知道画里每一个元素的精确位置。最笨的办法是让人肉眼去框。聪明的办法是:先拍一张原版照片,再把某个你感兴趣的元素(比如天空)涂成鲜红色,再拍第二张照片,然后把两张照片叠在一起做减法——哪里出现了红色,哪里就是天空。
DocAtlas就是这么干的,只不过操作对象是Word文档。团队先从OpenXML格式(Word文档的内部代码格式)里识别出文档里的各类组件——标题、正文、表格、图片、页眉等等——然后通过Word的样式属性,给不同类型的组件注入不同的颜色代码。接着用微软官方的Word引擎(注意,不是LibreOffice)分别渲染出"染色版"和"原版"两份PDF,再用图像处理工具(OpenCV)对两张图做逐像素相减。哪里有颜色差异,哪里就是被标注的组件,而且可以通过颜色直接判断是哪类组件。
这种"差值渲染"方法有一个非常关键的优势:它能区分"注入的颜色"和"文档里本来就有的颜色"。以前的单次染色法做不到这一点——如果文档本来就有红色背景,那注入的红色标记就混进去了,根本分不清。差值法则完全绕过了这个问题,因为只有在两次渲染之间发生变化的像素,才被算作标注结果。
位置框确定之后,还需要把文字内容和位置对应起来。团队同时从OpenXML里提取文档级别的文字,再用Docling工具(一个基于规则的PDF解析器,不是神经网络模型)从PDF里提取页面级别的文字和位置,然后用交并比(IoU,一种衡量两个区域重叠程度的指标)把每个词语匹配到对应的组件区域里。当多个组件区域有重叠时,系统会根据样式置信度来决定优先级,确保结构映射的一致性。
所有这些信息最终被序列化成一种叫做DocTag的统一格式。DocTag是一种类似XML的标记语言,每个标签同时包含组件类型、几何位置和文字内容。这种格式比HTML更好,因为HTML不保存位置信息;比Markdown更好,因为Markdown会把层次结构压扁。有了DocTag,一张页面就变成了一个扁平的标签序列,每个标签告诉模型"这里有什么、在哪里、写的是什么",从而实现版面检测、阅读顺序还原、内容提取的多任务联合训练。
在数据质量控制上,团队还做了两轮筛选。第一轮用fastText预测文档语言,再用5-gram Kneser-Ney语言模型计算困惑度(困惑度可以理解为"模型对这段文字有多困惑",困惑度越高说明文字质量越差),设置阈值为120,过滤掉38%的低质量页面,保留94%以上的高质量数据。第二轮计算"标注可靠性分数",衡量通过原生XML信号(而非启发式规则)成功标注的字符比例,低于0.6分的页面直接剔除,最终约有15%的页面因视觉异常信号(如大量空白、渲染错误)被过滤。
在效率上,整条流水线在一台普通的苹果M2 Pro笔记本上运行(没有GPU加速,没有分布式计算),每天能处理10万张以上的标注页面,100万个样本不到72小时就能跑完。
**四、 为"从右往左"的文字专门开辟第二条路**
阿拉伯语、希伯来语、波斯语、乌尔都语,都是从右向左书写的语言。这类语言在现有PDF解析工具里普遍存在双向文本解析失败的问题——工具把从右往左的文字顺序搞反,或者完全无法识别段落结构。因此,仅靠真实Word文档的流水线,无法覆盖这类语言。
研究团队为此专门设计了第二条流水线,用合成生成的方式来补足这个缺口。这条流水线的输入是结构化的电子书和网页文件(EPUB、HTML、XML格式),先用解析工具把内容转换成标准的Docling JSON格式,给每个内容元素打上标签并赋予初步的位置框,然后通过205个基于LuaTeX(一种专业排版引擎)的模板,把这些内容渲染成精确排版的PDF文档。
这些模板每一个都针对特定语言的排版规范设计:字体选择遵循各语言的书写传统(阿拉伯语用Amiri、Scheherazade等字体;希伯来语用David、Narkisim等;波斯语用Nazanin、Lotus等;乌尔都语用Nastaliq、Naskh等),版面参数涵盖页面方向、列数(1到3列)、字号(9到14磅)、颜色、边距、页眉页脚样式,以及关键的双向文字控制原语。
在渲染过程中,系统通过三次编译来保证位置精度:第一次编译确定初步版面,第二次编译把每个元素的精确坐标写入.pos文件,第三次编译生成最终的PDF并验证位置。坐标经过系统性转换,从LaTeX的缩放点(sp)到PDF的点(pt)再到图像的像素(px),确保最终标注框与实际渲染位置完全吻合。整条流水线在单核CPU上能达到每分钟183页的吞吐量。
质量筛选过滤掉了三类问题页面:编译前后坐标漂移超过2pt的页面(占原始输出的15.2%)、模板排版错位(如元素重叠或文字溢出,占8.9%)、字体渲染失败(如字形缺失或字形错乱,占2.1%)。最终这条流水线生成了9036份文档共19.5万张页面,覆盖阿拉伯语、希伯来语、波斯语、乌尔都语四种右向左书写的语言。
**五、 数据总量与构成:一个覆盖82种语言的巨型语料库**
两条流水线合并之后,原始语料库包含101万份文档,548万张页面,跨越136种语言。其中第一条流水线(真实Word文档)贡献了100万份文档、529万张页面,第二条流水线(合成右向左文档)贡献了9036份文档、19.5万张页面。
数据分布呈典型的长尾形态:英语、俄语、西班牙语占据高频区间,约占总页数的60%;希伯来语、泰语、缅甸语、高棉语等中低资源语言,每种也贡献了超过5万张页面,确保了在多样语言类型上的有效覆盖。经过质量筛选和难度感知采样,最终训练语料库包含36万张页面,覆盖82种语言、31类结构组件、25个以上内容领域(包括医疗、法律与政府、金融、科学等)。
在标注组件类型上,高频标签包括普通文本、表格、一级标题,低频但重要的标签包括数学公式、表单字段、参考文献列表,后者为训练模型识别罕见但关键的文档元素提供了监督信号。
整个语料库来自公开网络内容,均使用CC-BY 4.0、CC0或公共领域等宽松许可协议。研究团队还部署了自动化的个人隐私信息(PII)检测流程,使用Microsoft Presidio工具,结合spaCy命名实体识别和自定义正则表达式,识别并过滤了包含三条及以上个人信息(如姓名、电话、政府证件号、地址、金融标识符)的文档,共移除94.2万份文档(占初始收集量的5.15%)。人工抽查1000份保留文档,漏检率仅为0.1%。
**六、 一把测量多国文档理解能力的"量尺"**
有了训练数据还不够,还需要一套严格的测试标准,才能知道哪个模型真的厉害、哪个模型只是在本语言上刷了高分。DocAtlas同时构建了一个多语言基准测试集,包含5862张页面,覆盖82种语言、9项评测任务。
页面选取遵循"难度分层"原则:用ResNet-50(一种图像特征提取网络)提取每张页面的视觉特征,再用FAISS聚类算法把相似页面聚在一起,然后在每个聚类内部按难度(综合考虑表格占比、公式密度、图表数量、字体多样性、图片比例等因素)分成简单、中等、困难三档,从中均匀采样,每种语言最多取100张页面,共5575个样本。此外,团队还手工挑选了201份含有高难度公式的PDF,额外增加144个公式样本。
图表数据是单独生成的:先用Qwen3-VL模型生成多语言主题,再用Matplotlib或Plotly渲染成柱状图、折线图、饼图等多种图表类型,经GPT-4o初步筛选后,由三位领域专家交叉验证结构完整性、LaTeX公式对齐、右向左阅读顺序,达到94.2%的标注一致率(Cohen's κ=0.89)。
9项评测任务分别是:端到端全页面解析(把一张页面完整转换为Markdown或DocTag格式)、文字识别、表格提取、公式转录、图表解析、阅读顺序还原,以及三项格式转换子任务(图表→HTML、公式→LaTeX、表格→HTML)。评测指标覆盖归一化编辑距离(衡量预测文字与真实文字的相似度)、TEDS(树编辑距离相似度,专门评估表格结构的准确性)、CDM(字符检测匹配,用于公式评估)和图表分数(将图表先转成HTML表格再用TEDS评估)。
**七、 16个模型的大考:谁是多语言文档理解的真正强者?**
研究团队在这套基准上评测了16个当前最先进的模型,按照定位分为三类。
第一类是通用多模态大语言模型,包括Gemini-2.0-Pro、GPT-4o、Qwen3-VL(3B参数版)、Qwen2.5-VL(2B版)和InternVL3.5(2B版)。这类模型本身没有专门针对文档版面做过训练,相当于"全科生"选手。
第二类是专家文档模型,包括SmolDocling(2.56亿参数)、Granite-Docling(2.58亿参数)和DotsOCR(3B参数)。这类模型体量较小,但专门针对文档版面解析做了训练,属于"专科生"。
第三类是OCR专项系统,包括PaddleOCR-VL(1B参数)、DeepseekOCR(3B参数)、MonkeyOCR-pro(1.2B参数)、Dolphin(4亿参数)、Nanonets-OCR-s(4B参数)、Nanonets-OCR2(3B参数)、Chandra(9B参数)和MinerU2.5(1.2B参数),以及DocAtlas团队微调过的DocAtlas-DeepSeek(3B参数)。
评测结果呈现出几个清晰的规律。在总体分数上,DocAtlas-DeepSeek以83.37%位居第一,DeepseekOCR以81.66%紧随其后——要知道DeepseekOCR只有3B参数,能达到这个成绩相当令人惊讶,说明在文档理解这个任务上,参数量大不等于性能强。GPT-4o的总分是75.30%,远不如这些专业OCR系统。
文字识别和结构化内容提取之间存在巨大鸿沟。顶尖模型的文字编辑距离在0.068到0.095之间(越低越好),说明文字识别已经相当准确;但表格TEDS分数普遍停留在71%到73%,而且不论语言如何变化,这个天花板几乎纹丝不动。这意味着表格的空间推理能力,而非文字辨认能力,才是当前文档理解的真正瓶颈。
高资源语言和低资源语言之间的落差触目惊心。英语、俄语、西班牙语等主流语言的准确率稳定在80%到95%,波动很小;而低资源语言的准确率区间是20%到85%,中位数常常低于40%。换句话说,对于那些训练数据匮乏的语言,即使是最先进的模型,也经常只能答对不到一半。
从语言家族维度看,印欧语系和基里尔字母(俄语、乌克兰语等)语言表现最好,准确率在80%到87%之间;日语家族(26.9%到70.5%)和南亚语系(Austroasiatic)表现最差,即使是最顶级的模型也举步维艰。团队认为,这说明形态复杂的语言和表意文字体系,暴露了现有视觉特征学习的根本性缺陷。
在图表提取这项任务上,专业OCR系统和通用多模态大模型之间出现了戏剧性的分化。Gemini-2.5-Flash在15种语言上平均得分61.82%,跨语言一致性最好;而DeepseekOCR在英语图表上得分87%,到了泰语、阿拉伯语、意大利语就跌到8%到17%。SmolDocling在折线图上的准确率接近于零(0.038),说明仅靠文字提取根本应付不了图表理解,这项任务需要真正的视觉推理能力。
同时,研究团队系统分析了16个模型在5345份文档上犯的88036个错误,归纳出12种错误类型,其中最主要的四种分别是:表格跨行跨列错误(占15.7%,表格里的合并单元格处理不对)、格式错误(14.6%,粗体斜体标签弄错、破折号字符混用)、字符编码错误(13.2%,Unicode归一化问题,比如省略号用了不同的Unicode字符)、内容遗漏(13.2%,带连字符的词语和列表分隔符被丢失)。
**八、 如何让模型学会新语言而不忘记旧语言?**
训练数据和测试基准都有了,接下来最关键的问题是:怎样把这些数据用起来,让已有的OCR模型真正学会新语言,同时又不把以前学过的英语等语言忘掉?
这就像教一个已经精通英语的人学中文——如果学习方式不对,他学会中文的同时可能把英语忘了,这叫"灾难性遗忘"。团队系统比较了三种训练策略。
第一种策略是全页面监督微调(Full-Page SFT):把每张页面的图片和对应的DocTag/Markdown文字配对,直接训练模型在看到页面图片时生成正确的结构化文字。这是最直接的方法,相当于让学生反复做整卷练习题。
第二种策略是组件级监督微调(Component-level SFT):把页面裁剪成一个个小区域(段落、表格、图表、公式),针对每个组件单独训练。这相当于把整卷题目拆成一道道单题来练。
第三种策略是直接偏好优化(DPO):这是一种不同于普通微调的训练范式。它的核心思路是:对于同一张页面图片,给模型看两个答案——一个是由渲染驱动的标注系统生成的正确答案(作为"正样本"),一个是模型自己原本给出的回答(作为"负样本")——然后训练模型偏好正确答案。这相当于不直接告诉学生"背这个答案",而是让学生在两个答案里辨别哪个更好,从而培养判断力。
除了选择哪种训练策略,团队还研究了另一个变量:训练哪些参数。全量微调(所有参数都更新)效果最猛,但副作用最大;LoRA(低秩适应)是一种参数高效的方法,相当于在模型里插入一个小"适配器",只更新这个适配器,原模型参数基本不动,从而大幅减少遗忘。LoRA又有几个变体:更新全部层、只更新MLP层、只更新MLP的门控和下投影、更新所有QKV层、只更新QKV层。
综合评测结果清晰地揭示了一个规律。全量SFT在新语言上涨幅最大(表格TEDS提升13.6个百分点),但基础语言性能下降幅度也最大(–12.1个百分点)。组件级SFT的新语言增益更大,但基础语言遗忘也更严重,严重时下降超过21个百分点——意味着模型把以前学的东西几乎全忘光了。
只更新QKV层的LoRA变体达到了最优的收益-遗忘平衡:新语言文字编辑距离改善0.021,基础语言不降反升,改善0.011个百分点。团队对此的解释是:QKV参数控制的是"注意力路由",即模型在处理一段文字时决定把注意力放在哪里,调整这部分参数能帮助模型学会跨语言的注意力分配,而不会干扰MLP层(负责输出词汇分布),所以不会导致遗忘。
DPO策略在四个被评测的模型上(Qwen2.5-VL、Nanonets-OCR、DotsOCR、DeepseekOCR)都表现出了同样的规律:在域内语言(训练时见过的语言)提升约1.8%到1.9%,在域外语言(训练时没见过的语言)也提升约1.4%到1.8%,基础语言降幅低于3%。这是唯一一种能同时改善新语言和基础语言性能的方法,打破了"学新忘旧"的规律,因为把模型自己的错误答案作为负样本,相当于给模型保留了对原有能力的记忆锚点。
更进一步,团队还专门比较了DPO用不同正样本的效果:用渲染驱动的真实标注作为正样本,和用GPT-4o的输出作为正样本,结果差异显著。GPT-4o蒸馏带来的域内增益只有0.4个百分点,域外性能反而下降了0.7个百分点。原因在于,GPT-4o本身对低资源语言也存在系统性偏见:会在某些语言里产生错误的变音符号、把从右往左的列顺序搞反。这些错误通过蒸馏传递给了被训练的模型,污染了跨语言泛化能力。这一结果证明,驱动DPO效果的根本不是DPO算法本身,而是背后那套模型无关的标注流水线。
DocAtlas-DeepSeek在两个外部测试集(DocPTBench和OmniDocBench,均以英文文档为主,包含拍摄或扫描的文档,训练时完全没见过)上也展示了迁移泛化能力:编辑距离分别从22.1%降到20.7%、从0.137降到0.122。这说明通过DPO学到的跨语言注意力路由,不仅在训练见过的语言上有用,在训练域之外也能发挥作用。
从语言家族维度看DPO的增益,可以发现有趣的分布规律:汉藏语系、日语家族、南亚语系获益最大(汉藏语系文字增益高达40%),可能是因为这些语言的视觉特征之间存在共享结构,有助于知识迁移;印欧语系和乌拉尔语系增益较小(低于5%),说明这些语言在训练前已经被模型学得比较好;基里尔字母语言的增益主要体现在表格而非文字,说明结构化内容的迁移比纯文字更容易。
说到底,DocAtlas这套工作回答了一个对整个文档AI领域都意义深远的问题:机器能不能在不借助任何已有AI模型的情况下,自己学会读懂来自世界各地的文件?答案是肯定的,而且通过差值渲染这个近似"照相机找不同"的方式,还能做到相当高的精度和相当广的语言覆盖。对于资源匮乏的语言社区来说,这意味着未来本地语言的文档数字化、法律合同分析、医疗记录提取,都有望获得与英语用户同等质量的工具支持。
当然,这套系统也有明显局限:它依赖文档源文件(Word或结构化标记格式),对于扫描件、照片拍摄的文档完全无能为力,因为这类文档根本没有数字文字层可以提取。研究团队坦承,将DocAtlas的监督信号与传统的OCR技术结合,针对扫描文档做进一步延伸,是一个自然的后续方向。另外,表格TEDS在71%到73%附近的天花板问题,说明空间推理能力仍然是整个领域尚待突破的核心难题。
对于有兴趣进一步探索的读者,可以通过arXiv编号2605.12623查阅完整论文,数据集和代码则托管在论文封面所标注的GitHub仓库地址下。
**Q&A**
Q1:DocAtlas的"差值渲染"和普通的文档标注方法有什么本质区别?
A:普通的文档标注要么靠人工框选,要么靠已有AI模型自动识别,两者都有上限:人工太慢、AI有偏见。差值渲染则完全绕开了这两条路——它先给Word文档里的不同组件染上不同颜色,用微软Word引擎渲染出染色版和原版两份PDF,再逐像素相减,哪里有颜色差异就说明哪里有标注组件。整个过程不需要任何已有的AI模型参与核心标注,标注质量不受现有模型能力的限制。
Q2:DPO训练为什么能避免"学新语言忘旧语言"这个问题?
A:传统微调(SFT)直接让模型记住新的输入输出对,更新幅度大,容易把旧知识覆盖掉。DPO的做法不同:它给模型同时展示正确答案(渲染驱动的真实标注)和模型原来给出的回答,训练模型学会"偏好"正确答案。把模型自己原来的输出作为负样本,相当于给模型保留了对旧能力的记忆锚点,所以能在学会新语言的同时维持旧语言的性能。
Q3:DocAtlas基准测试和之前的多语言文档测试集相比,优势在哪里?
A:覆盖范围和任务深度都有显著扩展。之前最好的多语言文档基准READOC覆盖27种语言,不支持图表解析;OmniDocBench只覆盖2种语言;DocAtlas覆盖82种语言,同时支持9项任务(端到端页面解析、文字识别、表格提取、公式转录、图表解析、阅读顺序还原,以及图表→HTML、公式→LaTeX、表格→HTML三项格式转换),是目前语言覆盖最广、任务最全的文档理解基准。





京公网安备 11011402013531号