专栏名称: 老刘说NLP
老刘,NLP开源爱好者与践行者。主页:https://liuhuanyong.github.io。老刘说NLP,将定期发布语言资源、工程实践、技术总结等内容,欢迎关注。
目录
相关文章推荐
DataFunTalk  ·  RAG+Agent:面向生成式AI的最佳架构实践 ·  昨天  
DataFunTalk  ·  RAG+Agent:面向生成式AI的最佳架构实践 ·  昨天  
中国化学  ·  中国化学新闻播报(20241202-2024 ... ·  3 天前  
中国化学  ·  中国化学新闻播报(20241202-2024 ... ·  3 天前  
电子发烧友网  ·  推进48V系统普及?特斯拉公开低压连接器标准 ... ·  5 天前  
电子发烧友网  ·  推进48V系统普及?特斯拉公开低压连接器标准 ... ·  5 天前  
笔记侠  ·  梁宁:唯一的风口,就是真需求! ·  5 天前  
老李投资生活  ·  机器人大爆发!明天怎么干?! ·  6 天前  
老李投资生活  ·  机器人大爆发!明天怎么干?! ·  6 天前  
51好读  ›  专栏  ›  老刘说NLP

【文档智能】多模态文档OCR评测CC-OCR及专有模型代表工作

老刘说NLP  · 公众号  · 内容分发 科技自媒体  · 2024-12-06 11:56

正文

今天是2024年12月06日,星期五,北京,天气晴。

我们今天来看看OCR的任务,先从OCR任务评估说起,看看评估,然后再看几个代表的面向文档OCR的工作,包括KOSMOS2.5、TextMonkey、Florence、GOT。

供各位参考,多思考,多总结,多实践;

一、从OCR任务评估CCOCR说起

关于OCR任务这块,可以看看《CC-OCR: A Comprehensive and Challenging OCR Benchmark for Evaluating Large Multimodal Models in Literacy》,https://arxiv.org/pdf/2412.02210,有效评估大型多模态模型(LMMs)在复杂视觉和文本理解任务中的表现,特别是在自然语言指令下的文档图像识别任务。

里面有几个点可以关注。

一个是看看数据分布。CC-OCR覆盖十大主要语言,涵盖文档、自然场景、网页和手写文本四种场景,包括四个以OCR为中心的赛道:多场景文本阅读、多语言文本阅读、文档解析和关键信息提取。英语部分利用了现有的学术基准数据集,如TotalText、IC15、HierAgent、FunSD、CORD、IAM、InverseText和LAION-OCR。中文部分则完全为新收集的数据,包括街景(Scene-zh)、网络场景(UGC-ver-zh、DAST-zh)和文档(Doc-zh、Doc-hw-zh)

一个是关于数据标注,注释分为文本、结构化文档、表格和信息提取四种类型。文本注释包括多场景和多语言OCR的文本转录和词级定位;文档注释使用LaTeX格式表示,手写公式和化学分子公式使用SMILES格式;表格结构使用HTML格式表示;信息提取任务的注释统一为JSON格式

一个是可以熟悉下其评估指标,使用Eval-Trans和Eval-Pos评估文本序列和位置序列,使用Normalized Edit Distance (NED) 评估文档解析和公式识别,使用Tree Edit Distance-based Similarity (TEDS) 评估表格解析,使用字段级F1评分评估视觉信息提取。

一个是用来做评估的模型,模选择了九个代表性的LMMs进行评估,包括五个通用模型(GPT-4o、Gemini-1.5、Claude3.5、Qwen2-VL、InternVL2)和四个专业模型(KOSMOS2.5、TextMonkey、Florence、GOT)。

我们比较关注文档解析方面的性能,所以可以看下结果论:

在文档解析任务中,除了GOT外,其他专用模型不支持LaTeX或HTML格式,因此主要评估通用模型。Gemini、Qwen-VL和GPT-4o在各种文档解析子集中表现优异,Gemini得分最高,为62.37。然而,顶级模型在所有子集中的平均得分仍低于70%,表明文档解析基准测试具有挑战性

例如,Gemini在文档内容结构上的平均得分为67.17%,在表格识别上的平均得分为67.93%。此外,大多数模型在英文文档上的表现优于中文文档,例如Gemini在英文表格上的得分为64.55%,而在中文表格上的得分为66.01%。

二、几个代表的面向文档OCR的多模态大模型工作

这里展开来说下,上面提到的专用模型。

1、KOSMOS2.5

KOSMOS2.5:《KOSMOS-2.5: A Multimodal Literate Model》(https://arxiv.org/abs/2309.11419),构建了一个包含3.574亿页文档图像的大型语料库,涵盖扫描文档、普通文档、学术论文、网页、设计图像、手写文本、数学内容和项目文档。每份文档都用文本行和边界框或Markdown格式进行注释。

在模型上,采用共享解码器自回归Transformer架构,结合基于ViT的视觉编码器和基于Transformer的语言解码器,通过重采样模块连接两者。视觉编码器初始化自Pix2Struct-Large模型的编码器,使用可变分辨率策略提取固定大小的补丁;图像表示通过图像编码器和重采样器获得,文本表示通过文本分词和嵌入获得。

对于带有边界框的文本行,将坐标转换为离散位置标记;预训练任务包括文档级文本识别和图像到Markdown生成。文档级文本识别任务生成具有空间感知的文本块,每个文本块被分配其在图像中的空间坐标。图像到Markdown生成任务生成包含样式和结构的Markdown格式文本输出;微调任务包括文档理解任务,使用文档理解任务提示进行微调,生成回答用户问题的文本。

这个里面还有关于评估的部分,OCREval和MarkdownEval,分别用于文档级文本识别和图像到Markdown生成任务的评估。OCREval包含2297个样本,涵盖手写文本、设计文档、收据、学术论文、网页、数学内容、表格等。MarkdownEval包含5633个样本,涵盖数学公式、学术论文、表格、普通文档和项目文档。这些可以用于我们进行评估。

2、TextMonkey

《TextMonkey: An OCR-Free Large Multimodal Model for Understanding Document》(https://arxiv.org/abs/2403.04473),使用滑动窗口模块将高分辨率图像分割成窗口块,然后使用Transformer块单独处理每个窗口块。为了建立不同窗口块之间的联系,模型在特定间隔内集成了移位窗口注意力,通过共享图像重采样器处理子图像特征,然后与语言领域对齐,最终,使用Token Resampler进一步减少语言空间中的冗余,通过压缩token长度来减少冗余。

3、Florence

《Florence-2: Advancing a Unified Representation for a Variety of Vision Tasks》(https://arxiv.org/pdf/2311.06242),采用序列到序列(seq2seq)结构,包含图像编码器和多模态编码器-解码器。图像编码器将图像转换为视觉token嵌入,与文本嵌入结合后由Transformer处理。

这个其实也算不上是OCR模型。

4、GOT

《General OCR Theory: Towards OCR-2.0 via a Unified End-to-end Model》(https://arxiv.org/pdf/2409.01704)提出了一个名为GOT的模型,用于解决OCR任务中的多样化需求。

在模型架构上,G采用高压缩率的编码器和长上下文解码器,总共包含580M参数。编码器将光学图像转换为标记,解码器则输出相应的OCR结果。编码器部分使用了VitDet架构,解码器部分则采用了Qwen-0.5B;

在训练上,首先对视觉编码器进行纯文本识别任务的预训练,使用一个较小的解码器来传递梯度。预训练阶段使用了约500万张图像-文本对,包括自然场景数据和文档级数据;在预训练完成后,将训练好的视觉编码器与一个新的更大解码器连接起来,使用更多的通用OCR数据进行扩展训练。这一阶段的数据包括数学公式、分子结构、表格和乐谱等;最后,通过后训练解码器部分,进一步定制GOT以支持细粒度、多页和动态分辨率OCR功能。

总结

我们们今天主要围绕OCR-free这个话题,先从OCR任务评估说起,看看评估,然后再看了几个代表的面向文档OCR的工作。

可以看到,其核心还是数据上的构造。

参考文献

1、https://arxiv.org/pdf/2412.02210

2、https://arxiv.org/abs/2309.11419

3、https://arxiv.org/abs/2403.04473

4、https://arxiv.org/pdf/2409.01704

关于我们

老刘,NLP开源爱好者与践行者,主页:https://liuhuanyong.github.io。

对大模型&知识图谱&RAG&文档理解感兴趣,并对每日早报、老刘说NLP历史线上分享、心得交流等感兴趣的,欢迎加入社区,社区持续纳新。

加入会员方式:关注公众号,在后台菜单栏中点击会员社区->会员入群加入