发布网友 发布时间:2024-10-24 00:51
共1个回答
热心网友 时间:2024-11-02 14:55
项目地址: github.com/rese...
论文地址: Nougat: Neural Optical Understanding for Academic Documents
背景
近期,MetaAI推出了一项新的技术突破,提出了一种全新的端到端的OCR模型。该模型采用自回归方法,能够在给定图片后输出相应的Markdown标记。该模型不仅能够实现版面分析、文本检测、文本识别、公式识别等功能,而且整体架构采用了“编码器-解码器”(encoder-decoder)模式。以下,本文将从论文、源码、测试三个方面对Nougat进行深度学习与理解,共同探讨Nougat的实现过程。
方法大意
1.1 模型架构
该模型采用了常规的“编码器-解码器”(encoder-decoder)架构,具体如下:
编码器(Encoder):
解码器(Decoder):
从上述描述中可以看出,Nougat的encoder与decoder都采用了较大的transformer架构,整体pipeline的参数量达到了350M。
1.2 数据工程
Nougat将OCR问题定义为:[公式]
其核心关键在于如何以低成本的方式构造(图片,对应的markdown)pair。对于我而言,这是这篇文章最有价值、最值得借鉴学习的地方。
1.2.1 数据源
目前,并没有大规模的pdf图片与对应markdown标记pair的数据集。Nougat从arXiv、PMC (PubMed Central)、IDL(Industry Documents Library)三个来源构建数据集。其中,PMC与IDL的数据由于语义信息不充足,仅用于预训练阶段,以使模型具备基础的ocr能力。而arXiv数据有tex源码,能获取所有需要的语义信息,用于预训练和微调阶段。
1.2.2 图文对构建pipeline
1.2.2.1 思路介绍
图文对构造的整体pipeline如上图所示。从arXiv拿到的Tex源码出发,获取全篇文章的markdown标记,与pdf每页的图片与文本进行对应。
1.2.2.2 markdown 划分
代码位置:nougat/nougat/dataset/split_md_to_pages/split_markdown
1.2.2.2.1 预处理
预处理1:去除PDF中的图片表格
由于图片表格在PDF的位置和tex源码的位置可能有所差异,作者采取的办法是先用pdffigures2工具将PDF的图片和表格移除。当划分完markdown后再在markdown的末尾加入移除的信息。
1.2.2.2.2 markdown page 划分
叙述核心逻辑,详细细节见源码
2 小结
Nougat描绘了一个愿景,即以端到端的方式实现过去繁琐的数据加工pipeline。然而,从目前尝试来看,该方法并不适用于实际场景。单纯从架构来看,主要有以下几点缺陷:
或许在未来,以上问题将不再是问题。
Reference
[1] Ali Furkan Biten, Rubén Tito, Lluis Gomez, Ernest Valveny, and Dimosthenis Karatzas. OCR-IDL: OCR Annotations for Industry Document Library Dataset, February 2022.
[2] Liu, Ze, et al. "Swin transformer: Hierarchical vision transformer using shifted windows." Proceedings of the IEEE/CVF international conference on computer vision. 2021.
[3] Liu, Yinhan, et al. "Multilingual denoising pre-training for neural machine translation." Transactions of the Association for Computational Linguistics 8 (2020): 726-742.