带你读AI论文:SDMG-R结构化提取—无限版式小票场景应用
摘要:在文档图像中提取关键信息在自动化办公应用中至关重要。传统基于模板匹配或者规则的方法,在通用性方面、未见过版式模板数据方面,效果都不好;为此,本文提出了一种端到端的空间多模态图推理模型(SDMG-R),能有效的从未见过的模板数据中提取关键信息,并且通用性更好。
本文分享自华为云社区《论文解读系列十二:SDMG-R结构化提取—无限版式小票场景应用》,作者:一笑倾城 。

源码:https://github.com/open-mmlab/mmocr/tree/4882c8a317cc0f59c96624ce14c8c10d05fa6dbc
1 背景
在文档图像中提取关键信息在办公自动化应用中至关重要,比如常见的存档文件、收据小票、信用表单等数据场景快速自动化归档、合规性检查等等。传统基于模板匹配或者规则的方法,主要利用的固定版式模板数据的布局、位置坐标信息、内容规则等,这些信息局限性很强,因此在通用性方面、未见过版式模板数据方面,效果都不好。为此,本文提出了一种端到端的空间多模态图推理模型(SDMG-R),能充分利用检测文本区域的位置布局、语义、视觉信息,相比之前获取的信息的更充分丰富,因此能有效的从未见过的模板数据中提取关键信息,并且通用性更好。
2 创新方法及亮点
2.1 数据
在之前的关键信息抽取任务中,常用的数据集大部分是SROIE、IEHHR,但是他们训练集、测试集有很多公共模板版式,因此不太适合去评估或验证通用信息提取模型的通用能力;基于以上原因,本文构建一套新的关键信息抽取任务的数据集,并命名为WildReceipt:由25个类别组成,大概有50000个文本区域,数据量是SROIE的两倍以上,详细信息如下表格2-1所示:

表2-1 关键信息抽取任务数据集
2.2 创新点及贡献
本文提出的SDMG-R在SROIE数据集和WildReceipt数据集上都获得比较好的效果,并优于之前的方法模型。本文作者还去做了相关消融实验,并验证了本文提出的空间关系信息和多模态特征都对关键信息提取有着非常重要的影响。具体创新及贡献如下:
- 提出了一种有效的空间多模态图推理网络(SDMG-R),能充分利用文本区域的语义、视觉两个维度的空间特征关系信息;
- 构建了一套基准数据集(WildReceipt),是SROIE数据量的两倍,而且训练集版式模板和测试集版式模板交叉很少,因此可以用来做些通用关键信息抽取任务的探索研究;
- 本文利用了视觉、语义特征,如何利用好两者数据,本文做了相关验证:特征融合方法的有效性(CONCAT、线性求和、克罗内克积),最终结果克罗内克积比其他两种特征融合方法高两个点左右,如下表格2-2所示:

表2-2 特征融合方法对比结果
3 网络结构
SDMG-R模型整个网络结构如下图3-1所示,模型输入数据由图片、对应文本检测坐标区域、对应文本区域的文本内容,视觉特征通过Unet及ROI-Pooling进行提取,语义特征通过Bi-LSTM进行提取,然后多模态特征通过克罗内克积进行融合语义、视觉特征,然后再输入到空间多模态推理模型提取最终的节点特征,最后通过分类模块进行多分类任务;
图3-1 SDMG-R网络结构
3.1 视觉特征提取详细步骤:
- 输入原始图片,resize到固定输入尺寸(本文512x512);
- 输入到Unet,使用Unet作为视觉特征提取器,获取得到CNN最后一层的特征图;
- 将输入尺寸的文本区域坐标()映射到最后一层CNN特征图,通过ROI-pooling方法进行特征提取,获取对应文本区域图像的视觉特征;
3.2 文本语义特征提取详细步骤:
- 首先收集字符集表,本文收集了91个长度字符表,涵盖数字(0-9)、字母(a-z,A-Z)、相关任务的特殊字符集(如“/”, “n”, “.”, “$”, “AC”, “ ”, “¥”, “:”, “-”, “*”, “#”等),不在字符表的字符统一标记成“unkown”;
- 其次,然后将文本字符内容映射到32维度的one-hot语义输入的编码形式;
- 然后输入到Bi-LSTM模型中,提取256维度语义特征;
3.3 视觉+文本语义特征融合步骤:

3.4 空间关系多模态图推理模型:
最终的节点特征通过多模态图推理模型完成,公式如下:


3.5 多分类任务模块
根据图推理模型获取节点的特征,最后输入到分类模块,通过多分类任务输出最终的实体分类结果,损失函数使用的是交叉熵损失,公式如下:

4 实验结果
在SROIE数据集的结果如下表4-1所示:

表4-1 SROIE的精度
在WildReceipt测试集的结果如下表4-2所示:

表4-2 WildReceipt的精度
带你读AI论文:SDMG-R结构化提取—无限版式小票场景应用的更多相关文章
- 带你读AI论文丨RAID2020 Cyber Threat Intelligence Modeling GCN
摘要:本文提出了基于异构信息网络(HIN, Heterogeneous Information Network)的网络威胁情报框架--HINTI,旨在建模异构IOCs之间的相互依赖关系,以量化其相关性 ...
- 带你读AI论文:NDSS2020 UNICORN: Runtime Provenance-Based Detector
摘要:这篇文章将详细介绍NDSS2020的<UNICORN: Runtime Provenance-Based Detector for Advanced Persistent Threats& ...
- 带你读AI论文丨ACGAN-动漫头像生成
摘要:ACGAN-动漫头像生成是一个十分优秀的开源项目. 本文分享自华为云社区<[云驻共创]AI论文精读会:ACGAN-动漫头像生成>,作者:SpiderMan. 1.论文及算法介绍 1. ...
- 带你读AI论文丨S&P21 Survivalism: Living-Off-The-Land 经典离地攻击
摘要:这篇文章属于系统分析类的文章,通过详细的实验分析了离地攻击(Living-Off-The-Land)的威胁性和流行度,包括APT攻击中的利用及示例代码论证. 本文分享自华为云社区<[论文阅 ...
- 带你读AI论文丨用于目标检测的高斯检测框与ProbIoU
摘要:本文解读了<Gaussian Bounding Boxes and Probabilistic Intersection-over-Union for Object Detection&g ...
- 带你读AI论文丨针对文字识别的多模态半监督方法
摘要:本文提出了一种针对文字识别的多模态半监督方法,具体来说,作者首先使用teacher-student网络进行半监督学习,然后在视觉.语义以及视觉和语义的融合特征上,都进行了一致性约束. 本文分享自 ...
- 带你读AI论文丨LaneNet基于实体分割的端到端车道线检测
摘要:LaneNet是一种端到端的车道线检测方法,包含 LanNet + H-Net 两个网络模型. 本文分享自华为云社区<[论文解读]LaneNet基于实体分割的端到端车道线检测>,作者 ...
- pdf解析与结构化提取
#PDF解析与结构化提取##PDF解析对于PDF文档,我们选择用PDFMiner对其进行解析,得到文本.###PDFMinerPDFMiner使用了一种称作lazy parsing的策略,只在需要的时 ...
- 页面结构化在 Android 上的尝试
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/M45DM5Ix7a2fmrsE8VPvxg 作者:b ...
- 【带你读论文】向量表征经典之DeepWalk
摘要:详细讲解DeepWalk,通过随机游走的方式对网络化数据做一个表示学习,它是图神经网络的开山之作,借鉴了Word2vec的思想. 本文分享自华为云社区<[论文阅读] (25) 向量表征经典 ...
随机推荐
- 数据库系列:MySQL引擎MyISAM和InnoDB的比较
1.数据库核心知识点 数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版) 数据库系列:高并发下的数据字段变更 数据库系列:覆盖索引和规避回表 数据库系列:数据库高 ...
- HTML5学习内容-3
(一)行高 line-height,一行文字的高度 例子 <!DOCTYPE html> <html lang="en"> <head> < ...
- Xmind思维导图工具2023最新专业版破解思路
工具介绍 XMind 是一款最为流行的专业级思维_导图_制作与编辑软件,它现在在全球范围内都已极具名气,可谓是办公.学习.团队交流必备工具之一. 准备工作 1,官方Xmind软件 2,一个心意的编辑器 ...
- JUC并发编程学习(十三)ForkJoin
ForkJoin 什么是ForkJoin ForkJoin在JDK1.7,并发执行任务!大数据量时提高效率. 大数据:Map Reduce(把大任务拆分成小任务) ForkJoin特点:工作窃取 为什 ...
- OpenGL 基础光照详解
1. 光照 显示世界中,光照环境往往是相对复杂的.因为假设太阳作为世界的唯一光源,那么太阳光照在物体A上A将阳光进行反射后,A又做为一个新的光源共同作用于另一个物体B.所以于B来讲光源是复杂的.然而这 ...
- 微服务系列-Spring Boot使用Open Feign 微服务通信示例
公众号「架构成长指南」,专注于生产实践.云原生.分布式系统.大数据技术分享. 前言 在前几个教程中我们已经看到: 使用 RestTemplate 的 Spring Boot 微服务通信示例 使用 We ...
- Windows 搭建 Flutter 开发环境
安装 去官网地址下载 Flutter SDK. 下载地址:https://flutter.dev/docs/development/tools/sdk/releases 将安装包解压到你想安装 Flu ...
- 【Codeforces Global Round 12】 C2 - Errich-Tac-Toe题解(思维)
题面 题目要求不能有有三个连续相同的'X'或'O',注意到这样的连续串它们的横纵坐标之和是连续变化的,考虑将它们按照横纵坐标之和对 \(3\)的模值分组,因为这样分组后相邻的三个相同字符就被分到了三个 ...
- 【让AI女友跟我表白】大白话说Python+Flask入门(四)Flask Sijax的使用
写在前面 先吐槽两句,搞个mysql安装配置弄了4个小时,怎么都是外网无法访问,我靠,我特么也是服了. 当然,后来我投降了,明天再说,学什么不是学,娘的,换个方向,状态依然在! Sijax是什么? 代 ...
- c++学习,和友元函数
第一友元函数访问私有元素时不会显示,但是是可以调用的(我使用的是gcc10.3版本的)友元函数可以访问任何元素.就是语法你别写错了. 继承如果父类已经写了构造函数,子类一定要赋值给构造函数,要么父类就 ...