Nougat: Neural Optical Understanding for Academic Documents论文笔记

Abstarct

        科学知识主要存储在书籍和科学期刊中,通常以 PDF 的形式。然而,PDF 格式会导致语义信息的损失,特别是对于数学表达式。我们提出了 Nougat(Neural Optical Understanding for Academic Documents)),这是一种视觉 Transformer 模型,它执行光学字符识别 (OCR) 任务,用于将科学文档处理成标记语言,并证明了我们的模型在新的科学文档数据集上的有效性。所提出的方法通过弥合人类可读文档和机器可读文本之间的差距,提供了一种先进的解决方案来增强数字时代科学知识的可访问性。

I Introduction

        大多数科学知识存储在书籍或发表在科学期刊上,最常见的是便携式文档格式 (PDF)。在 HTML 之后,PDF 是互联网上第二大突出的数据格式,占普通爬虫的 2.4%。但是,存储在这些文件中的信息很难提取到任何其他格式。对于高度专业化的文档尤其如此,例如科学研究论文,其中数学表达式的语义信息会丢失。

        现有的光学字符识别 (OCR) 引擎,例如 Tesseract OCR,擅长检测和分类图像中的单个字符和单词,但由于其逐行方法无法理解它们之间的关系。这意味着它们以与周围文本相同的方式处理上标和下标,这是数学表达式的一个重要缺点。在分数、指数和矩阵等数学符号中,字符的相对位置至关重要

        将学术研究论文转换为机器可读的文本也使科学的可访问性和搜索性作为一个整体成为可能。数百万篇学术论文的信息不能完全访问,因为它们被锁定在不可读的格式后面。现有的语料库,例如 S2ORC 数据集 [3],使用 GROBID [4] 捕获 12M2 论文的文本,但缺少数学方程的有意义的表示。

        为此,我们引入了 Nougat,这是一种基于transformer的模型,可以将文档页面的图像转换为格式化的标记文本。

本文的主要贡献是:

        1.发布能够将 PDF 转换为轻量级标记语言的预训练模型。https://github.com/facebookresearch/nougat

        2.我们引入了一个管道来创建数据集,用于将 PDF 与源代码配对。

        3.我们的方法仅依赖于页面的图像,允许访问扫描的论文和书籍。

图 1:我们的简单端到端架构遵循 Donut [28]。Swin Transformer 编码器采用文档图像并将其转换为潜在嵌入,随后以自回归方式转换为令牌序列

2 Related Work

        光学字符识别(OCR)是计算机视觉中一个被广泛研究的领域,用于各种应用,如文档数字化[2,5]、手写识别和场景文本识别[6-8]。更具体地说,识别数学表达式是一个经过充分研究的子主题。不同编码器-解码器模型改进了基于语法的手写数学表达式方法[9-11]。全卷积模型[12]被各种RNN解码器模型[13 - 17]成功,无论是手写公式还是打印公式。最近,解码器 [18, 19] 和编码器 [20] 被替换为 Transformer [21] 架构。

        视觉文档理解 (VDU) 是深度学习研究的另一个相关主题,专注于提取各种文档类型的相关信息。以前的工作依赖于预训练模型,该模型通过使用 Transformer 架构联合建模文本和布局信息来学习提取信息。LayoutLM模型家族[22,24]使用掩码布局预测任务来捕获不同文档元素之间的空间关系。

        具有相关目标的开源解决方案包括 GROBID [4],它将数字出生的科学文档解析为 XML,重点关注书目数据和 pdf2htmlEX [25],它将数字出生的 PDF 转换为 HTML,同时保留文档的布局和外观。然而,这两种解决方案都不能恢复数学表达式的语义信息。

3 Model

        以前的 VDU 方法要么依赖于第三方工具 [22, 23, 26] 中的 OCR 文本,要么专注于文档类型,例如收据、发票或类似表单的文档 [27]。最近的研究[28,29]表明,不需要外部OCR引擎在VDU中实现有竞争力的结果。

        架构是一个编码器-解码器transformer [21] 架构,它允许端到端的训练过程。我们基于 Donut [28] 架构构建。该模型不需要任何 OCR 相关的输入或模块。文本由网络隐式识别。有关该方法的概述,请参见图 1。

Encoder:视觉编码器接收文档图像 x ∈ R3×H0 ×W0 ,裁剪边距并调整图像大小以适应大小为 (H, W) 的固定矩形。如果图像小于矩形,则添加额外的填充以确保每个图像具有相同的维度。我们使用 Swin Transformer [30],这是一种分层视觉转换器 [31],它将图像分割为固定大小的非重叠窗口,并应用一系列自注意力层来聚合这些窗口的信息。该模型输出一个嵌入补丁序列 z ∈ Rd×N,其中 d 是潜在维度,N 是补丁的数量。

Decoder:使用具有交叉注意的transformer decoder架构将编码后的图像 z 解码为一系列tokens。tokens以自回归方式生成,使用自注意力和交叉注意力分别关注输入序列和编码器输出的不同部分。最后,输出被投影到词汇表 v 的大小,产生 logits ℓ ∈ Rv。

图 2:在示例片段上训练期间使用的不同图像增强方法列表形成一个示例文档。

3.1设置 

        我们以 96 DPI 的分辨率渲染文档图像。由于 Swin Transformer 的限制性可能输入维度,我们选择输入大小 (H, W ) = (896, 672)。文档图像被调整大小,然后填充以实现所需的输入大小。这种输入大小允许我们使用 Swin 基础模型架构 [30]。我们使用预训练的权重初始化模型。Transformer decoder的最大序列长度为 S = 4096。这种相对较大的尺寸是由于学术研究论文的文本可能是密集的,尤其是表格的语法是token密集型的。BART 解码器是一个具有 10 层的仅解码器Transformer。整个架构共有 350M 参数。我们还使用较小的模型 (250M 参数) 进行实验,序列长度略小 S = 3584,只有 4 个解码器层,我们从预训练的基础模型开始。

在推理过程中,文本是使用贪婪解码(greedy decoding)生成的。

Training  我们使用AdamW优化器[34]训练3个epoch,有效批大小为192。由于训练的不稳定性,我们选择lr init = 5·10−5的学习率,每15次更新减少0.9996倍,直到达到lrend = 7.5·10−6。

3.2 Data Augmentation

        在图像识别任务中,使用数据增强来提高泛化通常是有益的。由于我们只使用数字出生的学术研究论文,我们需要使用许多转换来模拟扫描文档的缺陷和可变性。这些变换包括侵蚀、膨胀、高斯噪声、高斯模糊、位图转换、图像压缩、网格失真和弹性变换[35]。每个都有一个固定的概率应用于给定的图像。转换是在 Albumentations [36] 库中实现的。为了概述每个转换的效果,见图 2

        在训练期间,我们还通过随机替换标记向the ground truth文本添加扰动。有关更多详细信息,请参阅第 5.4 节。

        

图 3:数据处理。源文件被转换为 HTML,然后转换为 Markdown。a) 作者提供的 LaTeX 源。b) 使用 LaTeXML 计算的 HTML 文件形成 LaTeX 源。c) 从 HTML 文件解析的 Markdown 文件。d)作者提供的PDF文件

4 Datasets 

        据我们所知,没有 PDF 页面的成对数据集和相应的源代码,因此我们从 arXiv.4 上的开放访问文章中创建了我们自己的布局多样性,我们还包括 PubMed Central 5 (PMC) 开放访问非商业数据集的子集。在预训练期间,包括部分工业文档库 6 (IDL)。有关数据集组合的表 A.1。

arXiv:我们从 arXiv 上发布的 1,748,201 篇文章中收集源代码并编译 PDF。为了确保一致的格式,我们首先使用 LaTeXML7 处理源文件并将它们转换为 HTML5 文件。这一步很重要,因为它标准化并从 LaTeX 源代码中删除了歧义,尤其是在数学表达式中。转换过程包括替换用户定义的宏、标准化空格、添加可选括号、规范化表以及用正确的数字替换引用和引用。

        然后,我们解析 HTML 文件并将它们转换为轻量级标记语言,支持标题、粗体和斜体文本、算法、LaTeX 内联并显示数学和 LaTeX 表等各种元素。这样,我们确保源代码格式正确,并准备好进一步处理。

PMC:我们还处理了来自 PMC 的文章,其中除了 PDF 文件之外,还可以获得具有语义信息的 XML 文件。我们将这些文件解析为与 arXiv 文章相同的标记语言格式。我们选择使用 PMC 少得多的文章,因为 XML 文件并不总是具有丰富的语义信息。通常,方程和表格存储为图像,这些情况检测起来并非易事,这导致我们决定将 PMC 文章的使用限制在预训练阶段。

XML 文件解析为与上述相同的标记语言。

IDL:IDL 是行业产生的文档集合,它对公共卫生有影响,并由加州大学旧金山图书馆维护。Biten等人[37]为IDL数据集中的pdf提供高质量的OCR文本。这不包括文本格式,仅用于预训练以教授扫描文档的模型基本 OCR。

4.1 Splitting the pages

        我们根据 PDF 文件中的页面中断拆分标记文件,并将每个页面栅格化为图像以创建最终的配对数据集。在编译过程中,LaTeX 编译器会自动确定 PDF 文件的页面中断。由于我们没有重新编译每篇论文的 LaTeX 源,我们必须启发式地将源文件拆分为对应于不同页面的部分。为了实现这一点,我们使用 PDF 页面上的嵌入文本并将其与源文本匹配

        但是,PDF 中的图形和表格可能不对应于它们在源代码中的位置。为了解决这个问题,我们使用pdffigs2在预处理步骤中删除这些元素,然后将识别的标题与 XML 文件中的标题进行比较,并根据它们的 Levenshtein 距离 [39] 进行匹配。一旦源文档被分成单个页面,删除的图形和表格就会在每个页面的末尾重新插入。为了更好地匹配,我们还使用 pylatexenc-library8 将 PDF 文本中的 unicode 字符替换为相应的 LaTeX 命令

Bag of Words matching:首先,我们使用 MuPDF9 从 PDF 中提取文本行,并对其进行预处理以去除页面编号和潜在页眉/页脚。然后,我们使用带有 TF-IDF 矢量化器和线性支持向量机分类器的词袋模型 [40]。该模型以页面编号为标签的 PDF 线拟合。接下来,我们将 LaTeX 源拆分为段落并预测每个段落的页面编号。

理想情况下,预测将形成一个楼梯案例函数,但在实践中信号将是嘈杂的。为了找到最佳边界点,我们采用与决策树类似的逻辑,并根据基尼杂质最小化度量

        模糊匹配:在第一个粗文档拆分之后,我们尝试找到段落中的确切位置。这是通过将预测分裂位置附近的源文本与嵌入PDF文本的前一页的最后一个句子进行比较来完成的,并使用模糊搜索库10将下一页的第一个句子进行比较。如果两个分割点在源文本中的相同位置,则认为页面中断是“准确的”,得分为1。另一方面,如果分割位置不同,则选择归一化Levenshtein距离最小的那个,给定分数1减去距离。要包含在数据集中,对于两个页面中断,PDF 页面必须平均得分至少为 0.9。这导致所有页面的接受率约为 47%

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值