绝大多数文档格式都能无损转换至PDF,解决了PDF解析,也就相当于解决了绝大多数文档的解析。所以,PDF解析算法是文档服务的基石技术。
PDF解析算法目前有两类技术路线
- pipeline方法,整合layout analysis, OCR, formula/table recognition, and reading order estimation等多个模型,来解析PDF
- 视觉大语言模型,直接输出PDF的解析结果
但是这两类PDF解析算法缺乏统一的评测方式,来比较性能优劣。
来自上海人工智能实验室、Abaka AI等机构的研究人员提出OmniDocBench数据集和评测方式,具备
- PDF文档类型丰富,覆盖9种类型
- 评测指标丰富,包含端到端评测、逐任务评测(layout analysis, OCR等任务)、逐属性评测(文本语言、文本背景、文本旋转、表格语言、表格线栏等)
论文链接:
https://arxiv.org/pdf/2412.07626
代码链接:
https://github.com/opendatalab/OmniDocBench
下载链接:
https://opendatalab.com/OpenDataLab/OmniDocBench
OmniDocBench数据集
整体流程有:
1. 数据采集
- 从Common Crawl, Google, Baidu search engines, and internal data中收集200,000张原始PDF文档
- 对于每页PDF,提取图像特征,聚类,采样6,000页PDF
- 人工从中选择981页PDF,进行细粒度标注
2. 数据标注
先做版面区域检测标注,包括四种标注类型:
- 版面区域检测框,共19种类型,如标题、段落、表格、图像等
- 版面区域属性标注
- 阅读顺序标注,标注版面区域的阅读顺序
- 归属标注,为图像、表格、公式、代码块标注caption和title,和正文内容区分开。
再做内容识别标注,为标题、文本段等纯文本内容标注文字;为行内公式、显示公式和下标进行LaTex注释;为表格进行HTML和LaTex标注。
标注流程为:自动标注——>人工矫正——>专家质检,以实现标注速度和标注质量的平衡。
3. 数据的统计信息
PDF类型的多样性:981页PDF,囊括9种类型,有书籍、PPT、技术报告、考卷、杂志等
标注的多样性:共有超过10万处标注,超过2万处块级标注(如段落、图像、表格等),超过7万处span级标注(如公式、脚注等)
标注属性的多样性:有文本属性和表格属性
文本属性统计信息:
表格属性统计信息:
OmniDocBench评测
评测流程有:
1.待评测算法输出Markdown结果
2.提取不同元素
- 预处理,移除图片、移除markdown tag等
- 元素抽取,按正则匹配逻辑,依照特定顺序抽LaTex表格、HTML表格、显示公式、markdown表格和代码块
- 纯文本抽取
- 行内公式格式转换,均转化成Unicode格式,便于统一比较
- 阅读顺序抽取
3.和GT做匹配
- 临近搜索匹配(Adjacency Search Match):GT(Ground Truth)和待评测算法输出Markdown(Preds)分别都要多个元素信息(文本、表格、公式等),需要先做匹配映射,才能计算指标结果。首先计算GTs和Preds的多个元素间的编辑距离,相似度超过某段阈值,即认定为匹配。对于GTs和Preds元素存在嵌套的情况,通过fuzzy match实现嵌套识别。
- 忽视handling(Ignore Handling):对于表头、页码、图片caption、表格caption等handling信息,在指标计算时不考虑。因为不同算法对这些数据的处理方式,差别过大。
4.指标计算
- 纯文本:计算Normalized Edit Distance
- 表格:表格先转换成HTML格式,计算Tree-Edit-Distance-based Similarity和NormalizedEditDistance
- 公式:计算Character Detection Matching、Normal ized Edit Distance和BLEU。
- 阅读顺序:计算Normalized Edit Distance指标
最终结果
文本、公式、表格、阅读顺序的整体评测指标
不同PDF类型下,文本识别(指标为:编辑距离)评测效果:
不同page属性下,文本识别评测效果:
不同版本类型(单栏、多栏等)下,阅读顺序评测效果
不同PDF类型下,版面区域检测评测效果
不同表格类型下,表格识别评测效果
总结
OmniDocBench应该是目前类型最丰富、标注粒度最详细的PDF解析评测数据集了,对于评估PDF解析算法,意义重大。最新的PP-StructureV3简介 - PaddleOCR 文档便给出了在OmniDocBench上的评测对比,可以详细看看。
但是,某个算法想利用该benchmark来评测结果时,需要注意数据泄露的风险,尽量避免用该benchmark里的数据进行训练。