真实面经题目 · 原创解析

构建大模型预训练语料时,如何用 OCR 和版面分析处理 PDF 公式、双栏排版与阅读顺序,并保证语料质量?

这题考的是把 PDF 论文、教材、技术文档转成大模型预训练语料的工程闭环。高质量回答不能只说 OCR,而要覆盖 PDF 类型识别、版面检测、公式识别与表示、双栏阅读顺序恢复、去重和质量过滤,以及用人工标注集和下游训练信号评估语料是否真正可用。

出现于:美团 · 算法

60 秒回答模板

我会把 PDF 语料处理拆成几个阶段。第一步先判断 PDF 是原生文本型、扫描型还是混合型:原生文本优先抽取文本层和对象坐标,扫描页或低质量文本层再走 OCR,所有结果统一到带坐标的 token、block、line、formula、table 等结构。第二步做版面分析,检测标题、段落、页眉页脚、脚注、表格、公式、插图说明、双栏区域和跨栏标题,避免直接按 PDF 内部对象顺序拼接,因为 PDF 的存储顺序经常和阅读顺序不一致。第三步处理公式:先区分行内公式和独立公式,对原生 PDF 可优先保留 LaTeX 或 MathML 线索,对扫描公式用公式 OCR 识别成 LaTeX;低置信公式不要硬转文本,可以保留占位、坐标、渲染哈希和置信度,避免把错误公式污染语料。第四步恢复阅读顺序,双栏文档通常按版面区域、列、块间距离、字号层级、编号和语义连续性构建排序,跨栏标题、摘要、脚注、图表说明要特殊处理。第五步做质量治理,包括 OCR 置信度、乱码率、语言检测、字符分布、公式闭合率、段落连续性、重复页、模板页、广告页、版权页、参考文献策略、近重复去重和跨文档去重。最后要做评估:抽样人工标注页面级阅读顺序、块级分类、公式识别准确率和最终文本可读性,并通过困惑度、训练 loss、下游数学或科研问答效果、badcase 回流来证明语料质量提升。

考点 PDF 分流
难度 真实面经题
回答目标 让候选人把 PDF 语料构建讲成一个从页面理解到文本生成、从公式保真到质量评估的完整数据工程系统,而不是只会说 OCR 识别文字。

深入解析

01

先区分 PDF 来源形态

PDF 处理不能一律 OCR。原生文本 PDF 通常已有字符和坐标,可以抽取文本层、字体、字号、对象位置;扫描 PDF 需要版面检测和 OCR;混合 PDF 则可能有错误文本层、截图公式和扫描插页。工程上应先做页面级分类,再选择文本抽取、OCR 或混合融合策略,避免把可直接抽取的高质量文本重新识别出错,也避免信任有乱码的隐藏文本层。

02

版面分析决定语料结构

预训练语料需要的是接近人类阅读顺序的文本流,而不是 PDF 对象顺序。版面分析要识别标题、段落、列表、表格、公式、脚注、页眉页脚、页码、参考文献、插图说明、双栏区域和跨栏标题。对学术 PDF 来说,双栏、脚注和公式非常常见,如果不做结构化检测,最终语料会出现段落交错、页眉混入正文、表格被打散等问题。

03

公式要单独识别和表示

公式不是普通文本。行内公式应尽量保留在句子上下文里,独立公式应保留块级边界、编号和前后解释。表示上可优先用 LaTeX 或 MathML,至少保留一个明确的公式占位和置信度。对于低置信公式,硬塞错误字符比保守占位更危险,因为预训练会学习到错误数学符号、上下标关系和运算结构。

04

双栏阅读顺序要显式恢复

双栏 PDF 的核心难点是阅读顺序。简单按 y 坐标排序会把左右两栏同一高度的段落交错在一起;简单按 x 坐标排序又可能错过跨栏标题、摘要、表格和公式。更稳的做法是先检测页面区域和列,再在列内按块排序,对跨栏元素单独插入,并用段落缩进、编号、字体层级和语义连续性校验顺序。

05

质量过滤要从字符级到文档级

语料质量不只看 OCR 平均置信度。字符级要看乱码、异常 Unicode、断词、重复字符和公式符号错误;行段级要看断行合并、段落连续性、表格污染和标题层级;页面级要过滤目录、版权、广告、扫描失败页和模板页;文档级要做语言识别、主题过滤、近重复去重、版本去重和低质量来源剔除。

06

评估要覆盖结构和训练收益

评估应有人工标注和模型侧反馈两条线。人工侧看文本识别准确率、块分类准确率、公式识别准确率、阅读顺序准确率和最终可读性;模型侧看训练 loss、困惑度、重复率、数学问答或论文理解任务效果、检索可用性和 badcase 分布。只有结构指标和训练收益同时改善,才能说明 PDF 语料处理有效。

易错点

  • 把 PDF 处理简化成调用 OCR 接口,完全不讨论版面结构和阅读顺序。
  • 直接按坐标从上到下拼接双栏页面,导致左右栏段落交错。
  • 把公式当普通文本识别,不区分行内公式、独立公式、编号和上下标结构。
  • 只看 OCR 字符准确率,不评估块分类、段落连续性、公式准确率和训练收益。
  • 忽略页眉页脚、脚注、目录、参考文献和表格噪声对预训练语料的污染。
  • 不做近重复去重和来源质量过滤,让重复论文、扫描失败页和低质文档进入训练集。

面试官追问

为什么不能直接用 PDF 文本抽取结果做预训练语料?

因为 PDF 内部对象顺序不等于阅读顺序,尤其是双栏论文、脚注、公式和图表说明会被打乱。很多 PDF 还有隐藏文本层错误、断行、页眉页脚混入、连字符断词和乱码。直接抽取会把结构错误放大到预训练阶段。

公式识别低置信时应该怎么处理?

不要强行转成看似完整但错误的公式。可以保留公式块占位、坐标、渲染哈希、上下文文本和置信度,低置信样本进入过滤或人工抽检。对数学语料来说,错误公式比缺失公式更容易造成模型学习噪声。

双栏阅读顺序如何评估?

可以构建页面级人工标注集,把每个文本块、公式块、表格说明标上正确顺序,计算块序 Kendall tau、相邻块准确率、段落完整率和跨栏元素插入准确率。最终还要抽样人工阅读,检查是否出现左右栏交错和脚注误插。

表格和参考文献要不要保留?

取决于预训练目标。表格如果能结构化成 Markdown、HTML 或字段序列,可以保留;无法可靠解析的大表格可能降权或过滤。参考文献对科研语料有一定价值,但大量重复格式和 DOI 列表可能需要压缩、去重或单独标记。

去重为什么要同时做精确去重和近重复去重?

精确去重能去掉完全相同页面和文档,近重复能处理不同版本论文、页眉不同但正文相同、预印本和正式版、OCR 轻微差异等情况。预训练语料如果重复太多,会影响数据分布并增加记忆风险。