CN112699234A - 一种通用文档识别方法、系统、终端及存储介质 - Google Patents
一种通用文档识别方法、系统、终端及存储介质 Download PDFInfo
- Publication number
- CN112699234A CN112699234A CN202011439241.8A CN202011439241A CN112699234A CN 112699234 A CN112699234 A CN 112699234A CN 202011439241 A CN202011439241 A CN 202011439241A CN 112699234 A CN112699234 A CN 112699234A
- Authority
- CN
- China
- Prior art keywords
- text
- field
- fields
- character
- category
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 132
- 238000012549 training Methods 0.000 claims description 47
- 230000007246 mechanism Effects 0.000 claims description 25
- 238000001514 detection method Methods 0.000 claims description 20
- 230000015654 memory Effects 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 19
- 238000013136 deep learning model Methods 0.000 claims description 18
- 238000003062 neural network model Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 10
- 230000002708 enhancing effect Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000004913 activation Effects 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 claims description 4
- 238000013527 convolutional neural network Methods 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 102100032202 Cornulin Human genes 0.000 description 2
- 101000920981 Homo sapiens Cornulin Proteins 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种通用文档识别方法,获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;获取类别为Key的文字字段与其他文字字段之间的连接关系;基于所述连接关系,获取与类别为Key的文字字段和/或与类别为Key的文字字段相连或不相连的类别为Value的文字字段,作为所述类别为Key的文字字段对应的结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。同时提供了相应的系统、终端及存储介质。本发明提高了文档结构化内容识别的准确性以及通用性。
Description
技术领域
本发明涉及计算机文字处理和命名实体识别技术领域,具体地,涉及一种通用文档识别方法及系统。
背景技术
文档处理自动化利用人工智能技术可以帮助人们从繁杂的电子文档处理任务中解放出来,其中一项关键的任务就是自动文档分析与识别技术。面对大量无标注电子文档,例如采购收据、保险单文件、海关申报单等,如果完全由人工处理提取关键的信息将会耗费大量的人力物力。如何有效的使用人工智能从文档中提取获得关键的感兴趣的信息则显得非常重要。
现有的文档内容结构化的方法包括传统的基于字符串匹配的规则方法、基于命名实体识别和基于目标检测的方法等。
基于字符串匹配的规则方法通常需要设计一套正则表达式,通过正则匹配的方式去获得其需要得到的关键信息。这种方案通过人工设计特征匹配的方式,到文档中特定的位置提取所需要的信息。基于字符串匹配的算法优势于不要大量的训练数据,但是要求提取的信息有很强的字符特征并且符合预先设计的规则,否则不能准确获取关键信息。当文档结构变化大以及需要识别和获取的信息增多,这种方案的设计难度就会很大而且准确度很低。因此采用字符串匹配的方案在泛化性和适用性上有明显的缺陷。
基于命名实体识别方法(Named Entity Recognition,简称NER),是将文档内容结构化任务转化为序列标注问题。命名实体识别又称专名识别,是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等。对于文档内容,基于命名实体识别的方法将文档中的文本内容串联成一段序列,并通过一些方法(比如深度学习)的方式去对这个序列进行序列标注。近年来基于预训练模型的命名实体识别模型的准确率得到很大提高。但是基于命名实体识别的模型也有很大的缺陷:1)将文档文本内容串联成序列来处理丢失了文档内容的大量空间信息;2)命名实体识别模型只利用的文档的文本内容信息,未利用上文档的图像特征等其它信息,很大程度上影响文档内容理解的效果。
基于目标检测的方法,一般利用文档图像特征直接对检索值Value字段进行定位识别及分类提取结构化信息,但因为不同的文档Value字段的内容变化大,且发生容易位置偏移等的问题,导致准确率不高,同时因为过分依赖图像特征,模型对未训练过的不同类型文档识别率很低。
经过检索发现,公开号为CN111506588A,公开日为2020年8月7日,发明名称为《一种提取电子文档关键信息的方法及装置》的中国发明专利申请,该申请实际上属于一种基于字符串匹配的规则方法,该方法需要预先设定识别模板,然后通过获取待处理的电子文档的关键特征,选择相应的识别模板,利用预定的识别模板对应的提取策略,提取待处理电子文档中的关键信息;如果与待处理电子文档匹配的识别模板不存在,则建立新的识别模板和关键信息提取策略。。这种方法仍然存在泛化性和适用性差的问题,对于其他未设定的模板,则准确度很低,无法实现文档的通用识别。
综上所述,现有的文档内容结构化的方法,通常存在通用性差、灵活性差、稳健性差、准确性差等问题,目前没有发现同本发明类似技术的说明或报道,也尚未收集到国内外类似的资料。
发明内容
本发明针对现有技术中存在的上述不足,提供了一种通用文档识别方法、系统、终端及存储介质。
根据本发明的一个方面,提供了一种通用文档识别方法,包括:
获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;
获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;
获取类别为Key的文字字段与其他文字字段之间的连接关系;
基于所述连接关系,获取与类别为Key的文字字段相连的一个或者多个类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,作为结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。
优选地,所述文档包括:图片文档和电子文档;其中:
所述图片文档通过图像识别方法进行文字定位与识别,获取文本内容和文本边界框;
所述电子文档根据文件类型读取文件,获取文本内容和文本边界框;或,通过将电子文档转换为图片文档,再通过图像识别方法获取文本内容和文本边界框。
优选地,所述图像识别方法,包括:
检测文档中的文字字段,获得文本边界框的顶点的坐标和边界框的旋转角度;
在得到文本边界框的顶点的坐标和旋转角度后,调整得到水平的文字字段,从图像中截取出水平的文字字段部分图片,输入到用于识别文字的深度学习模型,得到文字字段中的文本内容。
优选地,所述获取文档中一个或多个文字字段的文字信息,包括:
采用预训练的神经网络模型,检测和识别所述文档中的一个或多个文字字段的文本内容和/或文本边界框。
优选地,所述获取文档中一个或多个文字字段所一一对应的类别信息,包括:
基于获取的文字字段的文字信息中的文本内容,采用文本分类方法,识别所述文字字段的类别信息;或
基于所述文档,采用预训练的目标检测模型,识别所述文字字段的类别信息。
优选地,所述获取类别为Key的文字字段与其他文字字段之间的连接关系,包括:
利用文字字段之间的空间关系,构建文字字段与邻居字段的关系网络,在构建的关系网络基础上,对每个文字字段进行处理,获得每个文字字段的类别信息以及与邻居字段的连接关系强度;选择与每个类别为Key的文字字段连接的关系强度最大的邻居字段作为该类别为Key的文字字段对应的其他文字字段,得到类别为Key的文字字段与其他文字字段之间的连接关系。
优选地,所述利用文字字段之间的空间关系,构建文字字段与邻居字段的关系网络,包括:
利用得到的文字字段的文字信息中的文本边界框的顶点的坐标,获得文字字段之间的空间关系,根据所述文字字段之间的空间关系,建立文档中各单个文字字段之间以及单个文字字段与全文文字字段之间的关系,生成每个文字字段对应的关系网络,即为文字字段与邻居字段的关系网络;在关系网络中,每个文字字段作为一个关系节点,文字字段之间的连接作为关系网络的边。
优选地,所述在构建的关系网络基础上,对每个文字字段进行处理,获得每个文字字段的类别信息以及与邻居字段的连接关系强度,包括:
在建立的每个文字字段对应的关系网络的基础上,利用预训练的神经网络模型,提取每个文字字段的特征,获得每个文字字段的分类以及与邻居字段之间的连接关系强度。
优选地,所述提取每个文字字段的特征,包括:
基于文字字段的文字信息中的文本内容,提取每个文字字段的特征,并在提取的特征为多个的情况下,对每个文字字段的多个特征进行融合,得到每个文字字段的特征。
优选地,所述提取每个文字字段的特征,还包括如下任意一项或任意多项特征:
-提取文字字段的特征,包括提取文字字段的文本特征,采用预训练的BERT模型,将检测和识别得到的文字字段的文字信息中的文本内容作为BERT模型的输入,得到对应文字字段的特征输出作为文字字段的文本特征;
-提取文字字段的特征,还包括提取文字字段的位置特征和/或图像特征:
通过OCR文字识别模型得到文字字段的文字信息中的文本边界框对文档中的文字字段图像进行剪裁;
将剪裁生成的图片转换为设定的图片大小,然后通过残差网络深度学习模型,提取图片特征,得到对应的文字字段的图像特征;
-采用串联方法或卷积网络,对每个文字字段的多个特种进行融合;
-在提取文字字段的特征的过程中,还包括提取整个文档的图像特征:
通过OCR文字识别模型得到整个文档对应的文本边界框,对文档中的整个图像进行剪裁;
将剪裁生成的图片转换为设定的图片大小,然后通过残差网络深度学习模型,提取图片特征,得到对应的整个文档的图像特征,所述整个文档的图像特征用于作为后续神经网络模型的全局节点初始化参数。
优选地,所述神经网络模型采用图注意力机制模型,通过堆叠图注意力层实现;其中,对图注意力机制模型进行预训练,包括:
设Fi,l表示节点i在第l阶段的特征,其中下标i=0表示全图节点,i=1表示正在处理的文字字段节点,i=1到4分别表示正处理的文字字段节点的上、下、左、右四个邻居字段节点;对于第l阶段的处理,输入的是各个节点在第l阶段的特征,输出的是更新的节点1的特征,表示为Fi,l+1;输出的更新的特征Fi,l+1根据图注意力机制模型的注意力机制运算得到:
F1,l+1=σ(∑i∈[0,1,…,5]α1iWFi,l) (1)
公式(1)中,σ是激活函数,α1i是实时计算得到的注意力值,W为训练时需要学习得到的权重矩阵,Fi,l为文字字段节点的输入特征;
通过公式(1)不断迭代更新节点的特征,生成新的节点特征;
在最后一次迭代,将输出的特征的维度限制为所需要分类的类别数,实现对文字字段的分类,完成对图注意力机制模型的训练;
将融合的文字字段的特征和关系输入训练后的图注意力机制模型,得到每个文字字段的类别信息以及与邻居字段的连接注意力值。
优选地,所述类别信息还包括无关字段类别others;
在所述类别信息中:
所述主键字段类别Key,用于表示文字字段的文本内容中对应的固定字段;
所述值字段类别Value,用于表示与类别为Key的文字字段相对应的其他文字字段;
所述无关字段类别others,用于表示与给定的任务不相关的内容对应的文字字段。
优选地,所述对文档的识别,包括:
基于类别为Key的文字字段与其它文字字段之间的连接关系,获取一个或多个与类别为Key的文字字段相连的类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,输出类别为Key的文字字段对应的类别信息,作为结构化内容的类别信息,输出与类别为Key的文字字段相连的类别为Value的文字字段的文字信息、没有连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段的文字信息,作为结构化内容的文字信息,完成对文档的识别。
优选地,所述方法还包括:
-收集各种文档中类别为Key的文字字段和/或类别为Value的文字字段中的文本内容,在给定训练样本的基础上,对类别为Key的文字字段和/或类别为Value的文字字段中的文本内容和/或位置进行更换,生成新的训练样本,对训练样本数据集进行增强;
-对于新的业务应用,将新应用中的新的类别为Key的文字字段中的文本内容映射到训练阶段已经出现过的类别同为Key的文字字段的文本内容,对训练样本数据集进行增强。
根据本发明的第二个方面,提供了一种通用文档识别系统,包括:
文字信息获取模块:该模块用于获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;
类别信息获取模块:该模块用于获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;
连接关系获取模块:该模块用于获取类别为Key的文字字段与其他文字字段之间的连接关系;
结构化内容输出模块:该模块基于所述连接关系,获取与类别为Key的文字字段相连的一个或者多个类别为Value的文字字段和/或无连接关系的类别为Key的文字字段,作为所述类别为Key的文字字段对应的结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。
根据本发明的第三个方面,提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时可用于执行上述任一项所述的方法。
根据本发明的第四个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行上述任一项所述的方法。
由于采用了上述技术方案,本发明与现有技术相比,具有如下有益效果:
本发明提供的通用文档识别方法、系统、终端及存储介质,是一种文档内容结构化的方法,提取待处理文档中文本内容并将其分类为与内容结构化任务相关的键(Key)字段、值(Value)字段和与任务无关的无关字段(Others)三个大类,通过建立类别为Key的字段和类别为Value的字段之间的连接关系提取文档结构化内容。
本发明提供的通用文档识别方法、系统、终端及存储介质,充分利用类别为Key的字段变化少和更容易识别的特点,提高文档结构化内容识别的准确性。
本发明提供的通用文档识别方法、系统、终端及存储介质,属于一种文档理解方法,不需要对不同模板结构的文档进行新的学习,可直接输出不同类别Key对应的类别为Value的字段的文本内容,增强方法的通用性。
实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例中通用文档识别方法的流程图;
图2为本发明一优选实施例中通用文档识别方法的流程图;
图3为本发明一优选实施例中Key字段、Value字段和无关字段的类别信息示意图;
图4为本发明一优选实施例中文字字段和邻居字段的图网络示意图;
图5为本发明一优选实施例中图注意力层示意图;
图6为本发明一优选实施例中通用文档识别系统的模块组成示意图。
具体实施方式
下面对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
图1为本发明一实施例中通用文档识别方法的流程图。
如图1所示,该实施例提供的通用文档识别方法,可以包括以下步骤:
S100,获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;
S200,获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;
S300,获取类别为Key的文字字段与其他文字字段之间的连接关系;
S400,基于所述连接关系,获取与类别为Key的文字字段相连的一个或者多个类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,作为结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。
本发明一优选实施例提供了一种通用文档识别方法,该方法利用类别为Key的文字字段在不同的结构文档中位置固定、特征明显、对应的文本变化少的特点,将重点聚焦到类别为Key的文字字段的识别分类上,通过类别为Key的文字字段与类别为Value的文字字段的相邻位置关系来确定它们的连接关系,进而实现结构化数据的获取。
该优选实施例提供的通用文档识别方法,可以包括如下步骤:
步骤1,获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;
步骤2,获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;
步骤3,获取类别为Key的文字字段与其他文字字段之间的连接关系;
步骤4,基于所述连接关系,获取与类别为Key的文字字段相连的一个或者多个类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,作为结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。
作为一优选实施例,步骤1中,所述文档包括:图片文档和电子文档;其中:
所述图片文档通过图像识别方法进行文字定位与识别,获取文本内容和文本边界框;
所述电子文档根据文件类型读取文件,获取文本内容和文本边界框;或,通过将电子文档转换为图片文档,再通过图像识别方法获取文本内容和文本边界框。
作为一优选实施例,所述图像识别方法,包括:
检测文档中的文字字段,获得文本边界框的顶点的坐标和边界框的旋转角度;
在得到文本边界框的顶点的坐标和旋转角度后,调整得到水平的文字字段,从图像中截取出水平的文字字段部分图片,输入到用于识别文字的深度学习模型,得到文字字段中的文本内容。
作为一优选实施例,步骤2中,所述获取文档中一个或多个文字字段的文字信息,包括:
采用预训练的神经网络模型,检测和识别所述文档中的一个或多个文字字段的文本内容和/或文本边界框。
作为一优选实施例,步骤2中,所述获取文档中一个或多个文字字段所一一对应的类别信息,包括:
基于获取的文字字段的文字信息中的文本内容,采用文本分类方法,识别所述文字字段的类别信息。
在一优选实施例的具体应用实例中,文本分类方法可以包括如下两种:
第一种,使用卷积神经网络模型的方法;
第二种,使用BERT模型加长短时记忆模型和条件随机场模型的方法。
当然,文本分类方法并不限定于以上两种,其他能够实现文字字段类别信息识别的方法,均可以被采用。
作为一优选实施例,步骤2中,所述获取文档中一个或多个文字字段所一一对应的类别信息,包括:
基于所述文档,采用预训练的目标检测模型,识别所述文字字段的类别信息。
作为一优选实施例,步骤2中,所述类别信息还包括无关字段类别others;其中,在所述类别信息中:
所述主键字段类别Key,用于表示文字字段的文本内容中对应的固定字段;
所述值字段类别Value,用于表示与类别为Key的文字字段相对应的其他文字字段;
所述无关字段类别others,用于表示与给定的任务不相关的内容对应的文字字段。
作为一优选实施例,步骤3中,所述获取类别为Key的文字字段与其他文字字段之间的连接关系,包括:
利用文字字段之间的空间关系,构建文字字段与邻居字段的关系网络,在构建的关系网络基础上,对每个文字字段进行处理,获得每个文字字段的类别信息以及与邻居字段的连接关系强度;
选择与每个类别为Key的文字字段连接的关系强度最大的邻居字段作为该类别为Key的文字字段对应的其他文字字段,得到类别为Key的文字字段与其他文字字段之间的连接关系。
在一优选实施例的具体应用实例中,可以利用类型匹配以及距离相近规则建立文字字段之间的连接关系;也可以通过命名实体方法来识别文字字段之间的连接关系。
作为一优选实施例,所述利用文字字段之间的空间关系,构建文字字段与邻居字段的关系网络,包括:
利用得到的文字字段的文字信息中的文本边界框的顶点的坐标,获得文字字段之间的空间关系,根据所述文字字段之间的空间关系,建立文档中各单个文字字段之间以及单个文字字段与全文文字字段之间的关系,生成每个文字字段对应的关系网络,即为文字字段与邻居字段的关系网络;在关系网络中,每个文字字段作为一个关系节点,文字字段之间的连接作为关系网络的边。
作为一优选实施例,所述在构建的关系网络基础上,对每个文字字段进行处理,获得每个文字字段的类别信息以及与邻居字段的连接关系强度,包括:
在建立的每个文字字段对应的关系网络的基础上,利用预训练的神经网络模型,提取每个文字字段的特征,获得每个文字字段的分类以及与邻居字段之间的连接关系强度。
作为一优选实施例,所述提取每个文字字段的特征,包括:
基于文字字段的文字信息中的文本内容,提取每个文字字段的特征,并在提取的特征为多个的情况下,对每个文字字段的多个特征进行融合,得到每个文字字段的特征。
作为一优选实施例,所述提取每个文字字段的特征,还包括:
提取文字字段的特征,包括提取文字字段的文本特征,采用预训练的BERT模型,将检测和识别得到的文字字段的文字信息中的文本内容作为BERT模型的输入,得到对应文字字段的特征输出作为文字字段的文本特征。
作为一优选实施例,所述提取每个文字字段的特征,还包括:
提取文字字段的特征,还包括提取文字字段的位置特征和/或图像特征:
通过OCR文字识别模型得到文字字段的文字信息中的文本边界框对文档中的文字字段图像进行剪裁;
将剪裁生成的图片转换为设定的图片大小,然后通过残差网络深度学习模型,提取图片特征,得到对应的文字字段的图像特征。
作为一优选实施例,所述提取每个文字字段的特征,还包括:
采用串联方法或卷积网络,对每个文字字段的多个特种进行融合。
作为一优选实施例,所述提取每个文字字段的特征,还包括:
在提取文字字段的特征的过程中,还包括提取整个文档的图像特征:
通过OCR文字识别模型得到整个文档对应的文本边界框,对文档中的整个图像进行剪裁;
将剪裁生成的图片转换为设定的图片大小,然后通过残差网络深度学习模型,提取图片特征,得到对应的整个文档的图像特征,所述整个文档的图像特征用于作为后续神经网络模型的全局节点初始化参数。
作为一优选实施例,所述神经网络模型采用图注意力机制模型,通过堆叠图注意力层实现;其中,对图注意力机制模型进行预训练,包括:
设Fi,l表示节点i在第l阶段的特征,其中下标i=0表示全图节点,i=1表示正在处理的文字字段节点,i=1到4分别表示正处理的文字字段节点的上、下、左、右四个邻居字段节点;对于第l阶段的处理,输入的是各个节点在第l阶段的特征,输出的是更新的节点1的特征,表示为Fi,l+1;输出的更新的特征Fi,l+1根据图注意力机制模型的注意力机制运算得到:
F1,l+1=σ(∑i∈[0,1,…,5]α1iWFi,l) (1)
公式(1)中,σ是激活函数,α1i是实时计算得到的注意力值,W为训练时需要学习得到的权重矩阵,Fi,l为文字字段节点的输入特征;
通过公式(1)不断迭代更新节点的特征,生成新的节点特征;
在最后一次迭代,将输出的特征的维度限制为所需要分类的类别数,实现对文字字段的分类,完成对图注意力机制模型的训练;
将融合的文字字段的特征和关系输入训练后的图注意力机制模型,得到每个文字字段的类别信息以及与邻居字段的连接注意力值。
作为一优选实施例,步骤3中,所述对文档的识别,包括:
基于类别为Key的文字字段与其它文字字段之间的连接关系,获取一个或多个与类别为Key的文字字段相连的类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,输出类别为Key的文字字段对应的类别信息,作为结构化内容的类别信息,输出与类别为Key的文字字段相连的类别为Value的文字字段的文字信息、没有连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段的文字信息,作为结构化内容的文字信息,完成对文档的识别。
作为一优选实施例,该优选实施例提供的所述方法,还可以包括以下步骤:
收集各种文档中类别为Key的文字字段和/或类别为Value的文字字段中的文本内容,在给定训练样本的基础上,对类别为Key的文字字段和/或类别为Value的文字字段中的文本内容和/或位置进行更换,生成新的训练样本,对训练样本数据集进行增强。
作为一优选实施例,该优选实施例提供的所述方法,还可以包括以下步骤:
对于新的业务应用,将新应用中的新的类别为Key的文字字段中的文本内容映射到训练阶段已经出现过的类别同为Key的文字字段的文本内容,对训练样本数据集进行增强。
进一步地,对于新的业务应用,针对同为类别Key的文字字段的文字信息进行文本内容的互换。例如:两个不同的应用,具有同一个结构化内容的类别信息为日期;在应用1中,对应日期类别的Key字段的文本内容是:购买日期;在应用2中,对应日期类别的Key字段的文本内容是:购物日期。两个结构化内容类别相同的Key字段的文字内容可以互换,达到增强训练样本的目的。
在本发明部分实施例中,类别为Key的文字字段采用分级表达的形式,分成n个大类,其中每一个大类下再分为m个小类,每一个小类下再分为s个子类,以此类推。
进一步地,大类包括:名称、账号、日期等。
在本发明部分实施例中,类别为Value的文字字段的类别数目小于Key字段的类别。
本发明上述实施例提供的技术方案,将重点放在对于类别Key的分类识别上,然后通过建立Key类别字段与Value类别字段之间的关系来提取Value类别字段的结构化内容。
本发明上述实施例提供的通用文档识别方法,将从文档中提取类别相对固定的关键信息的任务称为文档内容结构化。建立有结构的文档内容,为文档的理解及后续处理提供基础。
下面结合附图对本发明一优选实施例提供的通用文档识别方法进一步详细描述如下。
该优选实施例提供的通用文档识别方法,如图2所示,具体包括如下步骤:
步骤1中,输入待识别文档,获取文档中一个或多个文字字段的文字信息,包括:文本内容和文本边界框:
待识别文档包括:图片文档和电子文档。
以图片文档输入为例,确定文字定位和识别方法,可以采用深度学习模型,比如EAST模型用于文字检测和CPRN模型用于文字识别。输入的图片文档示例如图2所示,为一张出租车车票,待提取的信息包括乘车日期和金额。
检测表格中文字块,有多种深度学习模型,包括EAST(Efficient and AccuracyScene Text detection pipeline)模型、CTPN模型、旋转区域候选网络(RRPN)模型、FTSN(Fused Text Segmentation Networks)模型。以EAST模型为例,它首先使用全卷积网络(FCN)生成多尺度融合的特征图,然后在此基础上直接进行像素级的文本块预测。EAST模型中,支持旋转矩形框、任意四边形两种文本区域标注和检测模式。对于表格中文字块检测,采用旋转矩形框检测模式,模型执行时会对特征图中每个像素预测其到矩形框四边的距离、以及矩形框的方向角,输出检测到的文字块矩形框的四个顶点的坐标和矩形框的旋转角度。
在得到文字块的坐标和旋转角度后,可以调整得到水平的文字块,从图片中截取出水平的文字块部分图片,输入到识别文字的深度学习模型,可以得到文字块中的文本内容。识别文字的深度学习模型,主要有基于CRNN+CTC的模型和基于注意力机制的模型。该优选实施例采用的是CRNN+CTC的模型,该模型中包括CNN、RNN和CTC三个主要模块,其中CNN(convolutional neural network)为卷积神经网络用于提取图片特征,RNN(recurrentneural network)为循环神经网络用于在卷积特征上提取文字序列特征,CTC(Connectionist Temporal Classification)是一种解决训练时字符不便对齐问题的损失函数。
步骤2中,获取文档中一个或多个文字字段所一一对应的类别信息,其中,类别信息包括:Key类别、Value类别和Others类别:
文字字段的类别信息包括:Key类别(主键字段类别)、Value类别(值字段类别)和Others类别(无关字段类别)三个大类,其中Key类别和Value类别中还包括多个不同的小类别。
类别的定义:
将文档中的文字块分为三种类别,包括Key类别、Value类别和Others类别。
Key类别代表文档图片内需要提取结构化内容对应的固定字段、标题字段等,表示待提取的结构化文本内容所属的类型。比如,对于某些业务,感兴趣的“单位名称”,“账号”,“日期”等文字字段属于Key类别。Key类别可根据应用细分成n个大类:名称,账号,日期;每个Key类别的大类下可以再分为多个小类等。Key类别的分类可以采用分级表达。为简单说明起见,该优选实施例中将仅以1级Key类别加以说明。
Value类别代表某种类别Key对应的文字字段的文本内容,比如Key类别“单位名称”对应的文本内容“上海交通大学”是一个Value类别的文字字段。Value类别的文字字段可以根据内容和应用分成n个小类:比如公司名称,人名,日期,金额,普通数字。Value类别的数目小于Key类别的数目,实际应用中可以根据实际需求提高Value类别。
Others类别:对应与文档中与结构化任务不相关的内容对应的文字字段。Others类别可能具有Key或者Value的形式,但是和所考虑的结构化任务需要提取的信息不相关,因而定义为Others类别。
如图3所示,分别标示了Key类别的文字字段、Value类别的文字字段和Others类别的文字字段。文档内容结构化的任务是提取一定数目的的关键信息,比如购买单位、联系信息、购买商品名称和总金额等。本实施实例将提取日期和金额关键信息(两个Key类别的文字字段对应的Value类别的文字字段的文字信息)。
图3中,虚线矩形框包围的文字内容为Value类别的文字字段,粗黑色矩形框包围的文字内容为Key类别的文字字段,细黑色矩形框所包围的文字内容为Others类别的文字字段。文字字段的分类与具体的文档结构化业务相关,有些无关字段可能在其它业务中是关键字段,比如文字字段“车号”可能变成Key类别的文字字段。
在步骤2中,获取文档中一个或多个文字字段所一一对应的类别信息,包括:
基于获取的文字字段的文字信息中的文本内容,采用预训练的文本分类模型,识别所述文字字段的类别信息;或
基于所述文档,采用预训练的目标检测模型,识别所述文字字段的类别信息。
其中:
对于文字字段类别信息的识别,可以使用基于深度学习的目标检测模型,将不同关键文字字段作为待检测的目标,利用深度学习技术来进行定位和识别不同文字字段的类别信息。目前已有一些比较成熟的用于目标检测的深度学习网络模型,比如Faster-RCNN,SSD和Yolo等,可以用来检测图像中是否有给定类别的目标,比如行人、汽车、动物等。本优选实施例采用现有的目标检测的深度学习网络模型,但是用来检测不同文字字段。
应用目标检测模型,识别文字字段的类别的方法,包括:
将目标检测模型应用到整个文档,检测关键的Key类别的文字字段和部分Value类别的文字字段。将目标检测模型检测到的文字字段和获取的文字字段的边界框做比较,将目标检测模型检测到的文字字段的类别赋予相近获取的文字字段,得到对应文字字段的类别。
模型训练:收集一定数量的文档(比如1000张),经过处理后作为样本,一部分样本作为训练样本,一部分作为测试样本。每个文档包括一定数目的字段(其中包括关键的Key字段和Value字段)。每个文档样本包括文档图片,以及一份对关键字段标注的文件。标注文件里面,记载每个关键字段在文档图像中的位置、关键字段的字段类别以及关键字段里面的文字内容信息。利用训练和测试样本集训练用于关键字段分类的目标检测深度学习模型,直到深度学习网络定位和分类误差降低到一定程度具有了较好的定位分类能力之后停止训练。
步骤3,选择图注意力机制模型中与每个Key字段连接注意力值(连接权值)最大的文字字段作为该Key字段对应的Value字段。进一步地,可以应用图注意力机制模型获取字段之间的连接关系。
经过步骤2和步骤3之后,可以得到步骤1检测识别得到的文本内容中每个文字字段的类别以及和邻居字段连接的注意力值。对每个分类为待抽取信息的Key类别的文字字段,选择注意力模型中与该Key字段注意力值最大的一个或者多个文字字段作为该Key字段对应的待结构化内容。
在步骤3中,利用文字字段的空间关系,构建文字字段和邻居字段的图网络,在建立的图网络的基础上,对每个文字字段的提取的特征进行处理,获得每个文字字段的类别信息以及与邻居字段的连接注意力值;其中,对获取的文本内容中每个文字字段提取特征,并对每个文字字段的各种特种进行融合:
提取的每个文字字段的特征,包括:文本特征;优选地,还包括位置特征和/或图像特征。
文字字段的文本特征,可以采用BERT预训练模型提取:将步骤一检测和识别得到的每个文字字段的文字作为BERT模型的输入,得到对应文字的特征输出作为文字字段的文本特征。BERT是Google提出的,采用掩码语言模型解决语言模型只能利用一个方向的信息的问题。Google提出的BERT给出了两种规模,基本(base)模型和大规模模型。该优选实施例中采用基本模型。
文字字段的图像特征的提取,可以采用如下的方法:
通过OCR得到的文字字段对应的边界框对文档中的文字图像进行剪裁。将剪裁生成的图片转换为3通道给定像素值的图片大小,然后通过残差网络(ResNet)深度学习模型,提取图片特征,得到对应的文字字段的图像特征。
除了对每个文字字段提取图像特征之外,可选地,用类似的方法提取整个文档图像的图像特征。文档图片特征提取模块得到整图的文档图像特征,用来作为后续图注意力机制模型全局节点初始化参数。
各个文字字段的各种特征融合,可以采用简单的串联方法,也可以采用卷积网络进行融合的方法。本优选实施例可以采用串联方法。假设一个文字字段(序号为i)的文本特征为Fi,text,图像特征为Fi,image,文字字段i的融合的特征可以计算为Fi,fuse=concat(Fi,text,Fi,image)。这种融合运算可以应用到更多的文字字段的特征上。
构建文字字段和邻居字段的图连接:
可以利用步骤1得到的文字字段的边界框信息,根据文字字段之间的空间关系建立文档中文字字段之间以及和整个文档对应的文字字段的关系图(图网络),生成每个文字字段对应的图网络。对两个Key字段(日期和金额)构建的图网络如图4所示。在图网络中,每个文字字段作为一个图的节点,文本之间的连接作为图的边。考虑到很多单据文档中文字字段通常只和上、下、左、右的文字字段有直接联系,可以对每个文字字段仅和上下左右的相邻的文字字段以及全局文字字段建立边,从而针对每个文字字段建立简单的图网络,用于后续处理。
图4中,对于每个检测到的文字字段,都构建一个与相邻文字字段以及完整文档的连接图。本图中仅给出两个Key类别文字字段与相邻文字字段的连接关系。Key类别文字字段“日期”与上、下、右上和右下的四个相邻文字字段相连;Key类别文字字段“金额”与上、下、左下和右上五个相邻文字字段相连。
使用图注意力机制模型,对每个文字字段分类:
在步骤3建立的每个文字字段的图网络基础上,可以利用图注意力机制模型,对节点的特征进行处理,获得每个文字字段和邻居字段之间的连接关系,以及文字字段的分类。
图注意力机制模型可以通过堆叠图注意力层(Graph Attention Layer)实现。如图5所示,是一个简单的图注意力层的示意图。图中Fi,l表示节点i在第l阶段的特征,其中下标i=0表示全图节点,i=1表示正在处理的文字字段节点,i=1到N分别表示正处理节点的上下左右N个邻居节点。对于第l阶段的处理,输入的是各个节点在l阶段的特征,输出的是更新的节点1的特征(表示为Fi,l+1。输出的更新的特征Fi,l+1根据图注意力机制模型的注意力机制运算得到:
F1,l+1=σ(∑i∈[0,1,…,5]α1iWFi,l) (1)
公式(1)中σ是激活函数,αij是实时计算得到的注意力值,W为训练时需要学习得到的权重矩阵,Fi,l为文字字段节点的输入特征。通过以上的公式不断的迭代更新节点的特征,生成新的节点特征。
通过特殊的设置,在最后一次迭代,将输出的特征的维度限制为所需要分类的类别数,就可以实现所期望的对节点进行分类的功能。
对图注意力机制模型进行训练之后,将文本的文字特征、文字图片文本特征和关系图特征输入训练好的图注意力机制模型,就可以得到每个文字字段的类别信息(Key类别、Value类别或者Others类别)以及与邻居字段的连接注意力值。
步骤4,通过Key类别的文字字段和Value类别的文字字段之间的连接关系,确定关键的Key类别的文字字段、对应的Value类别的文字字段和/或无连接关系的部分Value类别的文字字段,输出待提取的关键的Key类别的文字字段对应的类别信息以及确定的各文字字段的文字信息,获取文档的结构化内容。
通过对Key类别文字字段的处理,可以得到一项候选的待结构化内容。
进一步地,可以从感兴趣的Value类别的文字字段辅助提取待结构化的信息。如果某种(某个)文档中一种Value类别的文字字段没有与之相对的Key类别的字段,可以直接将该Value类别的文字字段作为待结构化的内容输出;如果存在与Value类别的文字字段相对应的Key类别的文字字段,可以将两种方式得到的该项待结构化内容进行比较,确定是否相同,如果不同,可以报错。另外,也有可能发生某个Key类别的文字字段未能被识别或者未能被正确识别,但是Value类别的文字字段被正确识别且置信度高的情况,在这些情况下,输出Value类别的文字字段的分类和文本内容可以提高系统的稳定性。
对所有的待结构化内容对应的Key类别的文字字段和Value类别的文字字段进行处理,输出所有待结构化的字段的内容,建立结构化文档,如表1所示。
表1为对图3中进行内容结构化处理得到的最终结果建立的结构化文档:
字段键名 | 字段值 |
日期 | 2018-11-19 |
金额 | 13.00元 |
本发明上述实施例提供的方法,还可以包括:
步骤5,对训练样本数据集进行增强,用于模型的训练以提高模型的通用性以及应用到新业务。
进一步地,在模型的训练阶段,可以使用数据增强,从而提高模型的通用性。对于给定的训练样本,样本集里面覆盖的Key类别的文字字段的文本内容或者Value类别的文字字段的内容可能很有限。比如Key类别的文字字段里面的买方单位类别,训练样本里面相应的文本内容可能只有“买方单位”和“购物单位”。如果在实时应用中遇到要处理的文档里面买方单位类别对应的文字为“购物单位名称”,则与训练的模型不能有效地识别买方单位对应的Key类别的文字字段,导致不能准确地完成文档结构化任务。
进一步地,对训练样本数据集进行增强的方法,包括如下任意一种或任意多种:
-使用替换Key类别的文字字段和/或Value类别的文字字段文本内容的方法:
数据增强的处理,可以通过通过多种渠道广泛收集各种文档(这些文档没有标注,不能直接作为训练样本)里面的各种Key类别的文字字段或者Value类别的文字字段的文本内容,在给定样本的基础上,对Key类别的文字字段或者Value类别的文字字段的内容和/或位置做更换,生成新的训练样本,达到数据增强的目的。
-将新应用中的新的Key类别的文字字段的文本内容映射到训练阶段已经出现过的同类Key类别的文字字段的相近的文本内容:
在模型的应用推理阶段,对于新的业务应用,还是有可能出现文档里面的Key类别的文字字段的文本内容是训练过程中没有见过的,在这种情况下,可以将新应用中的新的Key类别的文字字段的文本内容映射到训练阶段已经出现过的同类Key类别的文字字段的相近的文本内容,再用预训练的模型推理出关键字段的信息,完成新业务文档内容结构化的任务。
在本发明上述实施例的其他优选实施例中,还提供了一种通用文档识别方法,可以包括如下步骤:
步骤a,获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;在该优选实施例的其他具体应用实例中,还可以包含字体类型、字体大小等;其中:
如果是图像文档,通过深度学习模型进行文本定位与识别,获取上述文字信息;
如果是电子文档,可以采用如下两种方式获取文字信息:
第一种方式,可直接通过读取文件获取相关文字信息,在该优选实施例的其他具体应用实例中,还可以获取文档的结构分布,包括:行、列信息或者段落信息等;
第二种方式,将电子文档转化为图像文档,通过深度学习模型进行文本定位与识别,获取文档的文字信息。
步骤b,基于步骤a获取的文字信息,对文本字段进行类型识别,识别主键类别Key字段和可选的域值类别Value字段、其它类别Other字段。该步骤中,类型识别方法可以是包括(但不限于):
方法一:输入文字字段的文本内容,经过CNN神经网络模型,输出字段类型及置信度(置信度非必要);
方法二:输入文本字段的文本内容+文本字段图像,经过神经网络模型,输出字段类型及置信度;
方法三:按行输入文字字段的文本内容,采用BERT+LSTM+CRF,输出字段内容及对应的字段类别;
方法四:按行输入文字字段的文本内容,加位置坐标(单字或字段位置),采用BERT+LSTM+CRF,输出字段内容及对应的字段类别。
步骤c,基于步骤a输出的文字字段的文字信息和步骤b输出的文字字段的类别信息,识别Key字段与其它非Key字段之间的连接关系;方法可以是包括(但不限于):
方法一:根据类型匹配以及距离相近等规则建立连接关系;
方法二:通过图模型识别连接关系;
方法三:ner方法识别连接关系。
步骤d,基于Key类别的文字字段和Value类别的文字字段与其它文字字段的连接关系,确定和输出文档结构化所需要的Value字段的内容:
基于Key字段与其它字段的连接关系,获取所有Value字段相连Key字段的类型,输出Key字段的类型作为value字段对应的类型,同时输出value字段的内容作为该类型对应的内容信息。如果Value字段没有相连的Key字段,则直接输出Value字段的类型及对应的内容。
步骤e,用户根据应用需求配置需要输出的结构化类型。
在本发明上述实施例的其他优选实施例中,还提供了一种通用文档识别方法,可以包括如下步骤:
步骤a,基于所述文档和预先训练的第一模型,检测和识别所述文档上的一个或多个文字字段的文字信息,所述一个或多个文字字段相应的输出包括文字内容和文本边界框等,其中所述第一模型是基于神经网络的模型。
步骤b,基于所述文档和预先训练的第二模型,识别所述文档上的一个或多个主键Key类别的文字字段和部分常见Value类别文字字段(如日期和金额等);(第二模型采用图像目标检测方法)。
其中,步骤a和步骤b的执行顺序可以互换。
步骤c,基于所述第一模型输出的文字字段和所述第二模型输出的字段,基于利用预先训练的第三模型,建立Key字段与其它非Key字段的文字字段之间的连接关系;(可参考上一优选实施例中的相关步骤)。
步骤d,基于Key和Value字段与其它字段的连接关系,确定和输出文档结构化所需要的Value字段的内容:
基于Key字段与其它字段的连接关系,获取所有Value字段相连Key字段的类型,输出Key字段的类型作为value字段对应的类型,同时输出value字段的内容作为该类型对应的内容信息。如果Value字段没有相连的Key字段,则直接输出Value字段的类型及对应的内容。
步骤e,用户根据应用需求配置需要输出的结构化类型。
本发明另一实施例提供了一种通用文档识别系统,如图6所示,可以包括:文字信息获取模块、类别信息获取模块、连接关系获取模块以及结构化内容输出模块。
其中:
文字信息获取模块:用于获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;
类别信息获取模块:用于获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;
连接关系获取模块:用于获取类别为Key的文字字段与其他文字字段之间的连接关系;
结构化内容输出模块:基于所述连接关系,获取与类别为Key的文字字段相连的一个或者多个类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,作为结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。
作为一优选实施例,分类模块可以在构建的图网络基础上,采用预训练的图注意力机制模型,对每个文字字段的特征进行处理,获得每个文字字段的类别信息以及与邻居字段的连接注意力值。
作为一优选实施例,关系获取模块可以选择图注意力机制模型中与每个Key字段连接注意力值最大的文字字段作为该Key字段对应的Value字段,采用预训练的图注意力机制模型获取Key字段和Value字段之间的连接关系。
本发明第三个实施例提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时可用于执行本发明上述实施例中任一项所述的方法。
可选地,存储器,用于存储程序;存储器,可以包括易失性存储器(英文:volatilememory),例如随机存取存储器(英文:random-access memory,缩写:RAM),如静态随机存取存储器(英文:static random-access memory,缩写:SRAM),双倍数据率同步动态随机存取存储器(英文:Double Data Rate Synchronous Dynamic Random Access Memory,缩写:DDR SDRAM)等;存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory)。存储器用于存储计算机程序(如实现上述方法的应用程序、功能模块等)、计算机指令等,上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
处理器,用于执行存储器存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。具体可以参见前面方法实施例中的相关描述。
处理器和存储器可以是独立结构,也可以是集成在一起的集成结构。当处理器和存储器是独立结构时,存储器、处理器可以通过总线耦合连接。
本发明第四个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行本发明上述实施例中任一项所述的方法。
本发明上述实施例提供的通用文档识别方法、系统、终端及存储介质,利用Key类别的文字字段在不同的结构文档中位置固定、特征明显、对应的文本变化少的特点,将重点聚焦到Key类别的文字字段的识别分类上,通过Key类别的文字字段与Value类别的文字字段的相邻位置关系来确定它们的连接关系来实现结构化数据。
本发明上述实施例提供的通用文档识别方法及系统,通过找到准确率更高的Key类别的文字字段来找到对应的Value类别的文字字段,提高了Value类别的文字字段属于哪种类别的准确率。
本发明上述实施例提供的通用文档识别方法及系统,不是直接利用图像特征来直接获取Key类别的文字字段和Value类别的文字字段所属类别和位置,而是先用通用的文字定位与识别方法获取文本位置,然后再进行分类和连接关系的识别,因此整个提取过程不依赖于特定的文档结构,通用性好,具有和训练过程中使用过的文档结构不同的结构的文档一样可以被识别。
本发明上述实施例提供的通用文档识别方法、系统、终端及存储介质,输入为电子文档或文档图像,输出为文档中所有待提取信息的文字字段的文本内容。
需要说明的是,本发明提供的方法中的步骤,可以利用系统中对应的模块、装置、单元等予以实现,本领域技术人员可以参照方法的技术方案实现系统的组成,即,方法中的实施例可理解为构建系统的优选例,在此不予赘述。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (17)
1.一种通用文档识别方法,其特征在于,包括:
获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;
获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;
获取类别为Key的文字字段与其他文字字段之间的连接关系;
基于所述连接关系,获取与类别为Key的文字字段相连的一个或者多个类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,作为结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。
2.根据权利要求1所述的通用文档识别方法,其特征在于,所述文档包括:图片文档和电子文档;其中:
所述图片文档通过图像识别方法进行文字定位与识别,获取文本内容和文本边界框;
所述电子文档根据文件类型读取文件,获取文本内容和文本边界框;或,通过将电子文档转换为图片文档,再通过图像识别方法获取文本内容和文本边界框。
3.根据权利要求2所述的通用文档识别方法,其特征在于,所述图像识别方法,包括:
检测文档中的文字字段,获得文本边界框的顶点的坐标和边界框的旋转角度;
在得到文本边界框的顶点的坐标和旋转角度后,调整得到水平的文字字段,从图像中截取出水平的文字字段部分图片,输入到用于识别文字的深度学习模型,得到文字字段中的文本内容。
4.根据权利要求1所述的通用文档识别方法,其特征在于,所述获取文档中一个或多个文字字段的文字信息,包括:
采用预训练的神经网络模型,检测和识别所述文档中的一个或多个文字字段的文本内容和/或文本边界框。
5.根据权利要求1所述的通用文档识别方法,其特征在于,所述获取文档中一个或多个文字字段所一一对应的类别信息,包括:
基于获取的文字字段的文字信息中的文本内容,采用文本分类方法,识别所述文字字段的类别信息;或
基于所述文档,采用预训练的目标检测模型,识别所述文字字段的类别信息。
6.根据权利要求1所述的通用文档识别方法,其特征在于,所述获取类别为Key的文字字段与其他文字字段之间的连接关系,包括:
利用文字字段之间的空间关系,构建文字字段与邻居字段的关系网络,在构建的关系网络基础上,对每个文字字段进行处理,获得每个文字字段的类别信息以及与邻居字段的连接关系强度;选择与每个类别为Key的文字字段连接的关系强度最大的邻居字段作为该类别为Key的文字字段对应的其他文字字段,得到类别为Key的文字字段与其他文字字段之间的连接关系。
7.根据权利要求6所述的通用文档识别方法,其特征在于,所述利用文字字段之间的空间关系,构建文字字段与邻居字段的关系网络,包括:
利用得到的文字字段的文字信息中的文本边界框的顶点的坐标,获得文字字段之间的空间关系,根据所述文字字段之间的空间关系,建立文档中各单个文字字段之间以及单个文字字段与全文文字字段之间的关系,生成每个文字字段对应的关系网络,即为文字字段与邻居字段的关系网络;在关系网络中,每个文字字段作为一个关系节点,文字字段之间的连接作为关系网络的边。
8.根据权利要求6所述的通用文档识别方法,其特征在于,所述在构建的关系网络基础上,对每个文字字段进行处理,获得每个文字字段的类别信息以及与邻居字段的连接关系强度,包括:
在建立的每个文字字段对应的关系网络的基础上,利用预训练的神经网络模型,提取每个文字字段的特征,获得每个文字字段的分类以及与邻居字段之间的连接关系强度。
9.根据权利要求8所述的通用文档识别方法,其特征在于,所述提取每个文字字段的特征,包括:
基于文字字段的文字信息中的文本内容,提取每个文字字段的特征,并在提取的特征为多个的情况下,对每个文字字段的多个特征进行融合,得到每个文字字段的特征。
10.根据权利要求9所述的通用文档识别方法,其特征在于,所述提取每个文字字段的特征,还包括如下任意一项或任意多项特征:
-提取文字字段的特征,包括提取文字字段的文本特征,采用预训练的BERT模型,将检测和识别得到的文字字段的文字信息中的文本内容作为BERT模型的输入,得到对应文字字段的特征输出作为文字字段的文本特征;
-提取文字字段的特征,还包括提取文字字段的位置特征和/或图像特征:
通过OCR文字识别模型得到文字字段的文字信息中的文本边界框对文档中的文字字段图像进行剪裁;
将剪裁生成的图片转换为设定的图片大小,然后通过残差网络深度学习模型,提取图片特征,得到对应的文字字段的图像特征;
-采用串联方法或卷积网络,对每个文字字段的多个特种进行融合;
-在提取文字字段的特征的过程中,还包括提取整个文档的图像特征:
通过OCR文字识别模型得到整个文档对应的文本边界框,对文档中的整个图像进行剪裁;
将剪裁生成的图片转换为设定的图片大小,然后通过残差网络深度学习模型,提取图片特征,得到对应的整个文档的图像特征,所述整个文档的图像特征用于作为后续神经网络模型的全局节点初始化参数。
11.根据权利要求8所述的通用文档识别方法,其特征在于,所述神经网络模型采用图注意力机制模型,通过堆叠图注意力层实现;其中,对图注意力机制模型进行预训练,包括:
设Fi,l表示节点i在第l阶段的特征,其中下标i=0表示全图节点,i=1表示正在处理的文字字段节点,i=1到4分别表示正处理的文字字段节点的上、下、左、右四个邻居字段节点;对于第l阶段的处理,输入的是各个节点在第l阶段的特征,输出的是更新的节点1的特征,表示为Fi,l+1;输出的更新的特征Fi,l+1根据图注意力机制模型的注意力机制运算得到:
F1,l+1=σ(∑i∈[0,1,…,5]α1iWFi,l) (1)
公式(1)中,σ是激活函数,α1i是实时计算得到的注意力值,W为训练时需要学习得到的权重矩阵,Fi,l为文字字段节点的输入特征;
通过公式(1)不断迭代更新节点的特征,生成新的节点特征;
在最后一次迭代,将输出的特征的维度限制为所需要分类的类别数,实现对文字字段的分类,完成对图注意力机制模型的训练;
将融合的文字字段的特征和关系输入训练后的图注意力机制模型,得到每个文字字段的类别信息以及与邻居字段的连接注意力值。
12.根据权利要求1所述的通用文档识别方法,其特征在于,所述类别信息还包括无关字段类别others;
在所述类别信息中:
所述主键字段类别Key,用于表示文字字段的文本内容中对应的固定字段;
所述值字段类别Value,用于表示与类别为Key的文字字段相对应的其他文字字段;
所述无关字段类别others,用于表示与给定的任务不相关的内容对应的文字字段。
13.根据权利要求1所述的通用文档识别方法,其特征在于,所述对文档的识别,包括:
基于类别为Key的文字字段与其它文字字段之间的连接关系,获取一个或多个与类别为Key的文字字段相连的类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,输出类别为Key的文字字段对应的类别信息,作为结构化内容的类别信息,输出与类别为Key的文字字段相连的类别为Value的文字字段的文字信息、没有连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段的文字信息,作为结构化内容的文字信息,完成对文档的识别。
14.根据权利要求1-13中任一项所述的通用文档识别方法,其特征在于,还包括:
-收集各种文档中类别为Key的文字字段和/或类别为Value的文字字段中的文本内容,在给定训练样本的基础上,对类别为Key的文字字段和/或类别为Value的文字字段中的文本内容和/或位置进行更换,生成新的训练样本,对训练样本数据集进行增强;
-对于新的业务应用,将新应用中的新的类别为Key的文字字段中的文本内容映射到训练阶段已经出现过的类别同为Key的文字字段的文本内容,对训练样本数据集进行增强。
15.一种通用文档识别系统,其特征在于,包括:
文字信息获取模块:该模块用于获取文档中一个或多个文字字段的文字信息,所述文字信息包括:文本内容和文本边界框;
类别信息获取模块:该模块用于获取文档中一个或多个文字字段所一一对应的类别信息,所述类别信息至少包括:主键字段类别Key和值字段类别Value;
连接关系获取模块:该模块用于获取类别为Key的文字字段与其他文字字段之间的连接关系;
结构化内容输出模块:基于所述连接关系,获取与类别为Key的文字字段相连的一个或者多个类别为Value的文字字段、无连接关系的类别为Key的文字字段和/或与类别为Key的文字字段无连接关系的部分或全部类别为Value的文字字段,作为结构化内容,确定所述结构化内容的类别信息和文字信息,完成对文档的识别。
16.一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时可用于执行权利要求1-15中任一项所述的方法。
17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时可用于执行权利要求1-15中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011439241.8A CN112699234A (zh) | 2020-12-08 | 2020-12-08 | 一种通用文档识别方法、系统、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011439241.8A CN112699234A (zh) | 2020-12-08 | 2020-12-08 | 一种通用文档识别方法、系统、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112699234A true CN112699234A (zh) | 2021-04-23 |
Family
ID=75507662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011439241.8A Pending CN112699234A (zh) | 2020-12-08 | 2020-12-08 | 一种通用文档识别方法、系统、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112699234A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113269102A (zh) * | 2021-05-28 | 2021-08-17 | 中邮信息科技(北京)有限公司 | 一种印章信息识别方法、装置、计算机设备和存储介质 |
CN113269126A (zh) * | 2021-06-10 | 2021-08-17 | 上海云扩信息科技有限公司 | 一种基于坐标转换的关键信息提取方法 |
CN114328845A (zh) * | 2022-03-15 | 2022-04-12 | 北京译图智讯科技有限公司 | 一种文档图像关键信息自动结构化方法及系统 |
CN114817444A (zh) * | 2022-04-02 | 2022-07-29 | 支付宝(杭州)信息技术有限公司 | 文档处理方法和装置 |
CN115048906A (zh) * | 2022-08-17 | 2022-09-13 | 北京汉仪创新科技股份有限公司 | 一种文档结构化方法、装置、电子设备和存储介质 |
WO2023016111A1 (zh) * | 2021-08-10 | 2023-02-16 | 北京有竹居网络技术有限公司 | 键值匹配方法、装置、可读介质及电子设备 |
CN116311280A (zh) * | 2023-05-17 | 2023-06-23 | 中国电子科技集团公司第十五研究所 | 基于图注意力网络的电子公文主题标引方法及系统 |
CN116861865A (zh) * | 2023-06-26 | 2023-10-10 | 江苏常熟农村商业银行股份有限公司 | Excel数据处理方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800761A (zh) * | 2019-01-25 | 2019-05-24 | 厦门商集网络科技有限责任公司 | 基于深度学习模型创建纸质文档结构化数据的方法和终端 |
CN110751038A (zh) * | 2019-09-17 | 2020-02-04 | 北京理工大学 | 一种基于图注意力机制的pdf表格结构识别方法 |
CN111709339A (zh) * | 2020-06-09 | 2020-09-25 | 北京百度网讯科技有限公司 | 一种票据图像识别方法、装置、设备及存储介质 |
CN112001368A (zh) * | 2020-09-29 | 2020-11-27 | 北京百度网讯科技有限公司 | 文字结构化提取方法、装置、设备以及存储介质 |
-
2020
- 2020-12-08 CN CN202011439241.8A patent/CN112699234A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800761A (zh) * | 2019-01-25 | 2019-05-24 | 厦门商集网络科技有限责任公司 | 基于深度学习模型创建纸质文档结构化数据的方法和终端 |
CN110751038A (zh) * | 2019-09-17 | 2020-02-04 | 北京理工大学 | 一种基于图注意力机制的pdf表格结构识别方法 |
CN111709339A (zh) * | 2020-06-09 | 2020-09-25 | 北京百度网讯科技有限公司 | 一种票据图像识别方法、装置、设备及存储介质 |
CN112001368A (zh) * | 2020-09-29 | 2020-11-27 | 北京百度网讯科技有限公司 | 文字结构化提取方法、装置、设备以及存储介质 |
Non-Patent Citations (1)
Title |
---|
杨博雄等: "《深度学习理论与实践》", 《北京邮电大学出版社》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113269102A (zh) * | 2021-05-28 | 2021-08-17 | 中邮信息科技(北京)有限公司 | 一种印章信息识别方法、装置、计算机设备和存储介质 |
CN113269126A (zh) * | 2021-06-10 | 2021-08-17 | 上海云扩信息科技有限公司 | 一种基于坐标转换的关键信息提取方法 |
WO2023016111A1 (zh) * | 2021-08-10 | 2023-02-16 | 北京有竹居网络技术有限公司 | 键值匹配方法、装置、可读介质及电子设备 |
CN114328845A (zh) * | 2022-03-15 | 2022-04-12 | 北京译图智讯科技有限公司 | 一种文档图像关键信息自动结构化方法及系统 |
CN114817444A (zh) * | 2022-04-02 | 2022-07-29 | 支付宝(杭州)信息技术有限公司 | 文档处理方法和装置 |
CN115048906A (zh) * | 2022-08-17 | 2022-09-13 | 北京汉仪创新科技股份有限公司 | 一种文档结构化方法、装置、电子设备和存储介质 |
CN115048906B (zh) * | 2022-08-17 | 2022-11-04 | 北京汉仪创新科技股份有限公司 | 一种文档结构化方法、装置、电子设备和存储介质 |
CN116311280A (zh) * | 2023-05-17 | 2023-06-23 | 中国电子科技集团公司第十五研究所 | 基于图注意力网络的电子公文主题标引方法及系统 |
CN116311280B (zh) * | 2023-05-17 | 2023-07-18 | 中国电子科技集团公司第十五研究所 | 基于图注意力网络的电子公文主题标引方法及系统 |
CN116861865A (zh) * | 2023-06-26 | 2023-10-10 | 江苏常熟农村商业银行股份有限公司 | Excel数据处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112699234A (zh) | 一种通用文档识别方法、系统、终端及存储介质 | |
WO2019238063A1 (zh) | 文本检测分析方法、装置及设备 | |
CN112597773B (zh) | 文档结构化方法、系统、终端及介质 | |
Lei et al. | Region-enhanced convolutional neural network for object detection in remote sensing images | |
TW202011282A (zh) | 用於車輛零件識別的神經網路系統、方法和裝置 | |
CN110363049B (zh) | 图形元素检测识别和类别确定的方法及装置 | |
CN107330027B (zh) | 一种弱监督的深度台标检测方法 | |
Mohammed et al. | Automated waste-sorting and recycling classification using artificial neural network and features fusion: A digital-enabled circular economy vision for smart cities | |
Ghosh et al. | Automated detection and classification of pavement distresses using 3D pavement surface images and deep learning | |
CN111460927A (zh) | 对房产证图像进行结构化信息提取的方法 | |
CN113627190A (zh) | 可视化数据转换方法、装置、计算机设备及存储介质 | |
CN116311310A (zh) | 一种结合语义分割和序列预测的通用表格识别方法和装置 | |
Moysset et al. | Learning to detect, localize and recognize many text objects in document images from few examples | |
CN114677695A (zh) | 表格解析方法、装置、计算机设备和存储介质 | |
Jiang et al. | Tabcellnet: Deep learning-based tabular cell structure detection | |
Cai et al. | A comparative study of deep learning approaches to rooftop detection in aerial images | |
CN114387608B (zh) | 一种联合卷积与图神经网络的表格结构识别方法 | |
Rusiñol et al. | Flowchart recognition for non-textual information retrieval in patent search | |
Kasem et al. | Deep learning for table detection and structure recognition: A survey | |
CN115019133A (zh) | 基于自训练和标签抗噪的图像中弱目标的检测方法及系统 | |
Lin et al. | Radical-based extract and recognition networks for Oracle character recognition | |
Qian et al. | An effective pest detection method with automatic data augmentation strategy in the agricultural field | |
WO2023246912A1 (zh) | 图像文字结构化输出方法、装置、电子设备和存储介质 | |
CN113255767A (zh) | 票据分类方法、装置、设备及存储介质 | |
Wang et al. | Bi-channel attention meta learning for few-shot fine-grained image recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210423 |
|
RJ01 | Rejection of invention patent application after publication |