别再搞纯文本了!多模文档理解更被时代需要!

文 | Ryan

都已经2021年了,互联网已经今非昔比,20年前纯文本的日子已经一去不复返,文字已经满足不了网页、文章的需求,绝大部分都会有着精心设计的表格、图片,甚至视频。PDF文档这种富文本格式拥有更加复杂的结构信息,其流行程度已经远超TXT。大到工作报告,小到收银条,形形色色的文档充斥着各个角落,如何利用这些文档中丰富的信息呢?智能文档理解成为了许多大厂的关注要点。

ML模型做文档理解的第一步往往是OCR,即Optical Character Recognition,光学字符识别,能将文档图片中的文字转化为计算机可识别的文字。寻常情况下到此为止。然而,平日里形形色色的文档经过OCR之后,只留下单调的字符串,格式布局中蕴含的海量信息并没有得到很好的利用,文档中许多文本以外的信息无法很好地被计算机所理解。

于是MSRA将多模态技术运用到文档图片中,结合3种模态:文本text、图片visual、布局layout,去年提出了LayoutLM。今天介绍的是升级版,LayoutLMv2,通过预训练模型实现智能文档理解,关注文档图片中的信息抽取类型识别,以及文档问答,一举刷新了6个榜单。

多模态预训练已经不是一个新话题了,已经有不少多模态预训练模型,小屋往期也有介绍,不熟悉的同学可以看一下这里 ,但是针对文档图片的,LayoutLM系列可谓是一个新的尝试。现有的多模态预训练模型大多建立在照片之类的图像,与LayoutLM系列涉及的文档图片有着天壤之别,文档图片中包含的是字符,与NLP更加紧密,让多模态语言建模更加简单直接。

论文题目:
LayoutLMv2: Multi-modal Pre-training for Visually-Rich Document Understanding

论文链接:
https://arxiv.org/abs/2012.14740

Arxiv访问慢的小伙伴也可以在 【夕小瑶的卖萌屋】订阅号后台回复关键词 【0129】 下载论文PDF~

LayoutLMv2论文主要介绍了三部分:多模态特征提取、相对位置Attention、3个多模态预训练任务。

文档图片的多模态

文档图片既是文档又是图片,平平无奇的一页纸就蕴含了多种特征。当我们将一个文档图片输入到OCR识别后,我们不仅仅能获得文字信息(text),同时得到各个文字所在的位置,是为布局特征(Layout),将图片本身输入视觉模型,就可以得到丰富的视觉信息(visual)。

针对三种特征,LayoutLMv2分别建模:

  • 文字信息,即OCR识别出的文字的内容:基于传统的预训练语言模型,通过tokenizer处理后,直接词向量嵌入。

  • 视觉信息,即文档图片本身:LayoutLMv2利用ResNeXt-FPN对整个文档图片提取特征,将得到的WxH的feature map拉平为WH长的特征序列,并通过线性层映射到固定维度,因为基于CNN的视觉模型无法学习顺序信息,LayoutLM额外加上了和BERT一样的Postion Embedding。

  • 布局信息,即OCR识别出的文字的位置:实际上是标注文字位置的坐标,LayoutLMv2同样通过向量嵌入技术,将坐标归一化到[0, 1000]并取整,再映射到对应的向量,最后将横纵坐标对应的向量相连接。

LayoutLMv2将视觉特征和文本特征融合到一个统一的序列中,通过Segment Embedding加以区别,并与对应的布局特征分别求和。

考虑相对位置的Transformer

得到了融合特征,下一步就是多层Transformer了,不过LayoutLMv2在传统的Transformer中添加了考虑到相对位置的Attention机制,将不同位置之间的Attention权重增加相对应的bias,不同的bias对应位置之间的相对距离。

3个多模态预训练任务

多模态预训练任务不仅需要学习文本本身的特征,更需要利用好文本和其他模态之间的关联。

  • Masked Visual-Language Modeling: 和传统BERT类似,LayoutLMv2会mask若干词的文本特征,并在输入图片中将这些词的位置涂黑,但保留布局特征,让模型预测丢失的词。这是利用上下文和布局信息去恢复文本信息。

  • Text-Image Alignment: 输入图片时将若干行覆盖(cover),通过文本预测当前词是否被覆盖(cover)。这是利用上下文和文本信息去确定布局信息。

  • Text-Image Matching:和许多其他多模态预训练模型类似,LayoutLMv2在输入时会替换一部分图片,并让模型判断输入的图片与当前文字是否对应。这是学习视觉信息和其他模态的关联。

预训练的结果:6个数据集登顶!

预训练

LayoutLMv2在预训练中首先将模型初始化为UniLMv2的权重,由于UniLMv2是单纯的文本预训练模型,LayoutLMv2接着在IIT-CDIP的大量文档图片上预训练布局特征视觉特征

下游任务

LayoutLMv2针对智能文档理解的文档视觉问答DocVQA文档分类序列标注三个任务,并一举刷新了6个数据集的榜单。

  • 文档视觉问答DocVQA:抽取式文档问答,即预测文本中某几段区域作为答案,任务转化为预测这段些段落的开始和结束,LayoutLMv2将问题文本、上下文文本和视觉特征作为输入序列中的三个segment:A、B、C,在上下文部分之上添加分类器。这个问题上,LayoutLMv2选用了DocVQA数据集,结果如下:

  • 文档分类:即文档图片分类,类别诸如信件、收据等等,与传统的文本分类类似,LayoutLMv2选取输入序列中的[CLS]对应的隐藏状态进行分类预测。LayoutLMv2选用了RVL-CDIP数据集,并且将模型与文本预训练模型和视觉模型进行对比,取得了目前的SOTA:

  • 序列标注:与传统的序列标注任务类似,即将文档内文字排成序列,预测各个单词的标签,这个任务上,LayoutLMv2选用了4个数据集:FUNSD、CORD、SROIE、Kleister-NDA,4个数据集涵盖了普通报表、单据小票各种格式,篇幅有限,这里只附上FUNSD数据集上的结果:

What's Next?

LayoutLMv2有着精心设计的模型、契合问题的预训练任务、丰富的下游实验,可谓是一篇十分出色的多模态预训练论文。

从结果中,我们也可以看到,针对文档智能理解的应用场景,在原本纯文本之外,加入布局与视觉信息,对结果有着很大的提高。这也并不意外,毕竟文档不仅仅是朴实的文字,布局信息或者说位置信息,与当前文字在整个页面内的作用十分相关,LayoutLM系列中很关键的部分即如何更好的利用位置信息,如何将这种低维度的特征融入到模型中,相信接下来这一方面会有更多相关的工作与尝试。

另外,图片分类任务大多使用视觉模型,但是文档图片和一般图片不同,内容与图片类型也是十分相关,虽然我们可以看到单纯基于文本的模型,如BERT、UniLMv2,略逊于单纯基于视觉的模型,如VGG-16、InceptionResNetV2等,但是如果将二者结合,就能够取得超过前两者的结果。

文档图片作为生活中十分常见的信息载体,同时又是天然的多模态材料,相信未来有着更多的工作。

萌屋作者:Ryan

本科毕业于北大计算机系,曾混迹于商汤和MSRA,现在是宅在家里的UCSD(Social Dead)在读PhD,主要关注多模态中的NLP和data mining,也在探索更多有意思的Topic,原本只是贵公众号的吃瓜群众,被各种有意思的推送吸引就上了贼船,希望借此沾沾小屋的灵气,paper++,早日成为有猫的程序员!

作品推荐:

1.Transformer哪家强?Google爸爸辨优良!

后台回复关键词【入群

加入卖萌屋NLP/IR/Rec与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479184.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS 覆盖率检测原理与增量代码测试覆盖率工具实现

背景 对苹果开发者而言,由于平台审核周期较长,客户端代码导致的线上问题影响时间往往比较久。如果在开发、测试阶段能够提前暴露问题,就有助于避免线上事故的发生。代码覆盖率检测正是帮助开发、测试同学提前发现问题,保证代码质量…

LeetCode 199. 二叉树的右视图(DFS 按层queue)

文章目录1. 题目2. 解题2.1 DFS2.2 queue按层从右边遍历1. 题目 给定一棵二叉树&#xff0c;想象自己站在它的右侧&#xff0c;按照从顶部到底部的顺序&#xff0c;返回从右侧所能看到的节点值。 示例:输入: [1,2,3,null,5,null,4] 输出: [1, 3, 4] 解释:1 <--…

论文浅尝 | 中科院百度微软等学者最新综述论文40+最新方法阐述知识图谱提升推荐系统准确性与可解释性...

本文转载自公众号&#xff1a;先知。【导读】近来&#xff0c;知识图谱用于推荐系统是关注的焦点&#xff0c;能够提升推荐系统的准确性与可解释性。如何将知识图谱融入到推荐系统呢? 最近中科院计算所百度微软等学者最新综述论文《A Survey on Knowledge Graph-Based Recomm…

美团酒旅起源数据治理平台的建设与实践

背景 作为一家高度数字化和技术驱动的公司&#xff0c;美团非常重视数据价值的挖掘。在公司日常运行中&#xff0c;通过各种数据分析挖掘手段&#xff0c;为公司发展决策和业务开展提供数据支持。 经过多年的发展&#xff0c;美团酒旅内部形成了一套完整的解决方案&#xff0c;…

LeetCode 1103. 分糖果 II

1. 题目 排排坐&#xff0c;分糖果。 我们买了一些糖果 candies&#xff0c;打算把它们分给排好队的 n num_people 个小朋友。 给第一个小朋友 1 颗糖果&#xff0c;第二个小朋友 2 颗&#xff0c;依此类推&#xff0c;直到给最后一个小朋友 n 颗糖果。 然后&#xff0c;我…

计算广告与推荐系统有哪些区别?

文 | King James本文已获作者授权&#xff0c;禁止二次转载计算广告和推荐系统总感觉有千丝万缕的关系&#xff0c;但是它们之间又有什么异同呢&#xff1f;话不多说&#xff0c;上图&#xff01;计算广告和推荐系统有交集&#xff0c;但是不能说推荐系统是计算广告的一部分。因…

解决cuda版本与pytorch版本不兼容问题

解决PyTorch与CUDA版本不匹配&#xff1a; 2 pytorch官网查看安装命令 https://pytorch.org/get-started/locally/ 如果你发现你的版本与上面的都不符合&#xff0c;可以点击 进入以前版本页面&#xff1a;https://pytorch.org/get-started/previous-versions/的安装命令&am…

论文浅尝 | 重新实验评估知识图谱补全方法

论文作者&#xff1a;Farahnaz Akrami&#xff0c;美国德州大学阿灵顿分校&#xff0c;博士生。笔记整理&#xff1a;南京大学&#xff0c;张清恒&#xff0c;硕士生。链接&#xff1a;https://arxiv.org/pdf/2003.08001.pdf代码&#xff1a;https://github.com/idirlab/kgcomp…

Android组件化方案及组件消息总线modular-event实战

背景 组件化作为Android客户端技术的一个重要分支&#xff0c;近年来一直是业界积极探索和实践的方向。美团内部各个Android开发团队也在尝试和实践不同的组件化方案&#xff0c;并且在组件化通信框架上也有很多高质量的产出。最近&#xff0c;我们团队对美团零售收银和美团轻收…

我,大学没毕业,在OpenAI搞AI,想教教你如何提升“研究品味”

文 | 蒋宝尚源 | AI科技评论在AI圈里有这么一个人&#xff0c;虽然大学没有毕业&#xff0c;但却做过谷歌大脑研究员&#xff0c;担任过OpenAI团队的领导人。他被人称作“怪胎”&#xff0c;也被人称作神童。他的名字叫做Chris Olah。在众人眼里&#xff0c;他的成长树在一开始…

LeetCode 889. 已知前序后序 求二叉树(不唯一)

1. 题目 返回与给定的前序和后序遍历匹配的任何二叉树。 pre 和 post 遍历中的值是不同的正整数。 示例&#xff1a;输入&#xff1a;pre [1,2,4,5,3,6,7], post [4,5,2,6,7,3,1] 输出&#xff1a;[1,2,3,4,5,6,7]来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 链…

论文浅尝 | TANDA: Transfer and Adapt Pre-Trained Transformer Models

论文笔记整理&#xff1a;王春培&#xff0c;天津大学硕士。链接&#xff1a;https://arxiv.org/pdf/1911.04118.pdf动机这篇文章聚焦的是问答系统&#xff08;Q&A&#xff09;中的一个问题&#xff1a;回答句子选择&#xff08;Answer Sentence Selection&#xff0c;AS2&…

深入浅出排序学习:写给程序员的算法系统开发实践

引言 我们正处在一个知识爆炸的时代&#xff0c;伴随着信息量的剧增和人工智能的蓬勃发展&#xff0c;互联网公司越发具有强烈的个性化、智能化信息展示的需求。而信息展示个性化的典型应用主要包括搜索列表、推荐列表、广告展示等等。 很多人不知道的是&#xff0c;看似简单的…

从ScrollView嵌套EditText的滑动事件冲突分析触摸事件的分发机制以及TextView的简要实现和冲突的解决办法

本篇文章假设读者没有任何的触摸事件基础知识&#xff0c;所以我们会从最基本的触摸事件分发处说起。 ScrollView为什么会出现嵌套EditText出现滑动事件冲突呢&#xff1f;相信你会有这种疑问&#xff0c;我们来看这么一种情况&#xff1a; 有一个固定高度的EditText&#xff…

LeetCode 1185. 一周中的第几天

1. 题目 给你一个日期&#xff0c;请你设计一个算法来判断它是对应一周中的哪一天。 输入为三个整数&#xff1a;day、month 和 year&#xff0c;分别表示日、月、年。 您返回的结果必须是这几个值中的一个 {“Sunday”, “Monday”, “Tuesday”, “Wednesday”, “Thursda…

使用NLP和ML来提取和构造Web数据

原文链接&#xff1a;https://blog.csdn.net/fendouaini/article/details/109374462 作者|Conner Brew 编译|VK 来源|Towards Data Science 介绍 在本文中&#xff0c;我们将创建一个基于战争研究所&#xff08;ISW&#xff09;的结构化文档数据库。ISW为外交和情报专业人员提供…

如何评价一个推荐系统的好坏?

文 | Nemo知乎本文已获作者授权&#xff0c;禁止二次转载现如今&#xff0c;推荐系统几乎无处不在。电商购物&#xff0c;有猜你喜欢。资讯阅读&#xff0c;有个性推荐。听歌看电影&#xff0c;都能识别你的兴趣。就连工作社交&#xff0c;也会提示你可能认识的人...推荐系统火…

论文浅尝 | GEOM-GCN: Geometric Graph Convolutional Networks

论文笔记整理&#xff1a;毕祯&#xff0c;浙江大学硕士&#xff0c;研究方向&#xff1a;知识图谱、自然语言处理。动机消息传递神经网络&#xff08;MPNN&#xff09;已成功应用于现实世界中的各种应用中。但是MPNN聚合器的两个基本弱点限制了它们表示图结构数据的能力&#…

ScrollView嵌套EditText联带滑动的解决办法

本篇文章的相关内容需结合上文&#xff1a;从ScrollView嵌套EditText的滑动事件冲突分析触摸事件的分发机制以及TextView的简要实现和冲突的解决办法 在说完了如何解决ScrollView嵌套EditText的滑动事件冲突之后&#xff0c;我们接下来说一下如何实现它们两者之间的联带滑动。什…

数据库智能运维探索与实践

从自动化到智能化运维过渡时&#xff0c;美团DBA团队进行了哪些思考、探索与实践&#xff1f;本文根据赵应钢在“第九届中国数据库技术大会”上的演讲内容整理而成&#xff0c;部分内容有更新。 背景 近些年&#xff0c;传统的数据库运维方式已经越来越难于满足业务方对数据库的…