一种基于机器学习的非固定格式单据信息的抽取方法转让专利

申请号 : CN202110119111.4

文献号 : CN112818824B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 甘超

申请人 : 金科览智科技(北京)有限公司

摘要 :

本发明提供了一种基于机器学习的非固定格式单据信息抽取方法,包括以下步骤:S1:将单据图像转换为html文本;S2:进行文字块span特征工程将文本转化成文字块span特征向量;S3:进行信息抽取模型训练输出文字块span分类标签;S4:对文字块span分类标签进行数据处理,生成专有模型输出要素值。通过对文字块自身以及周围局部信息进行的要素抽取,能够解决传统NER技术无法融入文档布局,字体大小及位置等特征信息的问题,有效提高单据信息抽取结果的精准度,极大提高单据的审核效率。

权利要求 :

1.一种基于机器学习的非固定格式单据信息抽取方法,其特征在于,包括如下步骤:S1:将单据图像转换为html文本;

S2:进行文字块span特征工程将文本转化成文字块span特征向量;

文字块span特征工程的特征向量包括文字块span的位置、大小、字符特征、单词组成以及文字块周围的文字信息;

文字块span特征工程包括以下步骤:

S21,进行文字块span位置特征position_embedding的提取:将文字块位置(X,Y,W,H)进行归一化,

Xnor=X/Xmax

Ynor=Y/Ymax

Wnor=W/(Xmax‑Xmin)

Hnor=H/Hmax

其中Xmax,Ymax,Hmax,Xmin表示所有文字块中X,Y,H的最大值和X的最小值,Xnor,Ynor,Wnor,Hnor表示文字块坐标归一化后的值;

S22,进行文字块span布局特征table_embedding的提取:用0,1分别表示文字块是否在表格,

在表格里面:T=0;

不在表格里面:T=1;

S23,进行文字块span的字符特征char_embedding的提取:计算出各类型的字符所占比例,

数字占比Rdig=Ndig/L

字母占比Ralp=Nalp/L

汉字占比Rch=Nch/L

符号占比Rpun=Npun/L

空格占比Rspa=Nspa/L

其中Ndig,Nalp,Nch,Npun,Nspa,L分别表示文字块中数字,字母,汉字,标点符号,空格和字符的个数,Rdig,Ralp,Rch,Rpun,Rspa分别表示数字,字母,汉字,符号,空格的占比;

S24,进行文字块span字号特征font_embedding的提取:将文字块字号归一化;

Fnor=F/Fmax

其中Fmax表示所有文字块的最大字号,Fnor表示文字块中字号的归一化;

S25,进行文字块span的句子单词特征sentence_embedding的提取:首先建立要抽取信息的高频词库,然后采用one‑hot方法对文字块句子进行编码;

S26,将步骤S21‑S25中提取到的所有特征全部拼接,得到一个描述文字块span自身特征的特征向量span_self_embedding;

S27,取出距离文字块span_self最近的四个文字块span_upper,span_left1,span_left2,span_below;

S28,采用one‑hot方法将步骤S27中距离文字块span_self最近的四个文字块span进行编码形成span_upper_embedding,span_left1_embedding,span_left2_embedding,span_below_embedding,然后将该四个特征向量与span_self_embedding拼接形成一个完整的特征向量span_all_embedding;

S3:机器学习信息抽取模型训练输出文字块span分类标签;

S4:对文字块span分类标签进行数据处理,生成专有模型输出要素值。

2.根据权利要求1所述的基于机器学习的非固定格式单据信息抽取方法,其特征在于,所述步骤S1中,通过光学字符识别技术对单据图像进行文字块检测和识别,且同时检测出文本中的表格及文字的位置。

3.根据权利要求2所述的基于机器学习的非固定格式单据信息抽取方法,其特征在于,所述步骤S1中,采用网页标签table,div,span来描述文字的所有特征信息。

4.根据权利要求1所述的基于机器学习的非固定格式单据信息抽取方法,其特征在于,步骤S3中,选择lightgbm作为信息抽取模型训练的分类器。

5.根据权利要求4所述的基于机器学习的非固定格式单据信息抽取方法,其特征在于,步骤S3中,将步骤S2得到的完整的特征向量span_all_embedding输入lightgbm分类器,并使lightgbm分类器输出文字块span分类标签。

6.根据权利要求1所述的基于机器学习的非固定格式单据信息抽取方法,其特征在于,对步骤S3得到的文字块span分类标签进行数据处理,生成专有模型输出要素值,形成最终结果。

7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1‑6中任一项所述方法的步骤。

8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1‑6任一项所述方法的步骤。

说明书 :

一种基于机器学习的非固定格式单据信息的抽取方法

技术领域

[0001] 本发明涉及单据信息抽取领域,具体而言,涉及一种基于机器学习的非固定格式单据信息的抽取方法。

背景技术

[0002] 在很多业务场景下,特别是银行、保险等金融行业的业务场景下,需要对没有固定格式的单据进行信息抽取,满足下一步的业务操作要求如:
[0003] 1、银行跨境业务审单场景下需要对货运单据、汇票、商业发票、保险单据、装箱单、原产地证、检验证书等单据进行审核;
[0004] 2、银行外汇汇款场景下需要对海关报关单、商业发票、贸易合同等单据进行审核;
[0005] 3、保险寿险理赔业务场景下,需要对医疗收据等单据进行审核;
[0006] 4、审计业务场景下,需要对采购合同、商业发票等单据进行审核;
[0007] 这些单据通常情况下是纸质的,传统的做法是人工从单据中找到这些信息,录入相关系统,然后进行人工审核。
[0008] 命名实体识别(Named Entity Recognition,简称NER)是一个很常见的自然语言处理(Natural Language Processing,简称NLP)问题,现有NER技术大多聚焦于文本级别的序列数据。对于图像文档数据,由于传统NER技术无法融入文档布局,字体大小及位置等特征信息,因此无法将传统NER技术应用于银行单据信息抽取。
[0009] 有鉴于此,特提出本发明。

发明内容

[0010] 有鉴于此,本发明公开了一种基于机器学习的非固定格式单据信息的抽取方法,利用机器学习进行单据要素抽取,用以辅助人工进行单据审核,提升效率。
[0011] 第一方面,本发明提供了一种基于机器学习的非固定格式单据信息抽取方法,包括以下步骤:
[0012] S1:将单据图像转换为html文本;
[0013] S2:进行文字块span特征工程将文本转化成文字块span特征向量;
[0014] S3:机器学习信息抽取模型训练输出文字块span分类标签;
[0015] S4:对文字块span分类标签进行数据处理,生成专有模型输出要素值。
[0016] 进一步,所述步骤S1中,通过光学字符识别技术对单据图像进行文字块检测和识别,且同时检测出文本中的表格及文字的位置。
[0017] 进一步,所述步骤S1中,采用网页标签table,div,span来描述文字的所有特征信息。
[0018] 进一步,所述步骤S2中,文字块span特征工程的特征向量包括文字块span的位置、大小、字符特征、单词组成以及文字块周围的文字信息。
[0019] 进一步,所述步骤S2中,文字块span特征工程包括以下步骤:
[0020] S21,进行文字块span位置特征position_embedding的提取:
[0021] 将文字块位置(X,Y,W,H)进行归一化,
[0022] Xnor=X/Xmax
[0023] Ynor=Y/Ymax
[0024] Wnor=W/(Xmax‑Xmin)
[0025] Hnor=H/Hmax
[0026] 其中Xmax,Ymax,Hmax,Xmin表示所有文字块中X,Y,H的最大值和X的最小值,Xnor,Ynor,Wnor,Hnor表示文字块坐标归一化后的值;
[0027] S22,进行文字块span布局特征table_embedding的提取:
[0028] 用0,1分别表示文字块是否在表格,
[0029] 在表格里面:T=0;
[0030] 不在表格里面:T=1;
[0031] S23,进行文字块span的字符特征char_embedding的提取:
[0032] 计算出各类型的字符所占比例,
[0033] 数字占比Rdig=Ndig/L
[0034] 字母占比Ralp=Nalp/L
[0035] 汉字占比Rch=Nch/L
[0036] 符号占比Rpun=Npun/L
[0037] 空格占比Rspa=Nspa/L
[0038] 其中Ndig,Nalp,Nch,Npun,Nspa,L分别表示文字块中数字,字母,汉字,标点符号,空格和字符的个数,Ralp,Ralp,Rch,Rpun,Rspa分别表示数字,字母,汉字,符号,空格的占比;
[0039] S24,进行文字块span字号特征font_embedding的提取:
[0040] 将文字块字号(F)标准化;
[0041] Fnor=F/Fmax
[0042] 其中Fmax表示所有文字块的最大字号,Fnor表示文字块中字号的归一化;
[0043] S25,进行文字块span的句子单词特征sentence_embedding的提取:
[0044] 首先建立要抽取信息的高频词库,然后采用one‑hot方法对文字块句子进行编码;
[0045] S26,将步骤S21‑S25中提取到的所有特征全部拼接,得到一个描述文字块span自身特征的特征向量span_self_embedding;
[0046] S27,取出距离文字块span_self最近的四个文字块span_upper,span_left1,span_left2,span_below;
[0047] S28,采用one‑hot方法将步骤S27中距离文字块span_self最近的四个文字块span进行编码形成span_upper_embedding,span_left1_embedding,span_left2_embedding,span_below_embedding,然后将该四个特征向量与span_self_embedding拼接形成一个完整的特征向量span_all_embedding。
[0048] 进一步,步骤S3中,选择lightgbm作为信息抽取模型训练的分类器。
[0049] 进一步,步骤S3中,将步骤S2得到的完整的特征向量span_all_embedding输入lightgbm分类器,并使lightgbm分类器输出文字块span分类标签。
[0050] 进一步,对步骤S3得到的文字块span分类标签进行数据处理,生成专有模型输出要素值,形成最终结果。
[0051] 第二方面,本发明公开了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如第一方面所述方法的步骤。
[0052] 第三方面,本发明公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述方法的步骤。
[0053] 本发明实施例提供的基于机器学习的非固定格式单据信息的抽取方法,通过对文字块自身以及周围局部信息进行特征融合然后进行要素抽取,能够解决传统NER技术无法融入文档布局,字体大小及位置等特征信息的问题,有效提高单据信息抽取结果的精准度,极大提高单据的审核效率。

附图说明

[0054] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0055] 图1为本发明实施例示出的基于机器学习的非固定格式单据信息抽取方法的流程示意图;
[0056] 图2为步骤S26的具体操作示意图;
[0057] 图3为步骤S27的具体操作示意图;
[0058] 图4为步骤S28的具体操作示意图。

具体实施方式

[0059] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0060] 在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0061] 应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0062] 如图1所示,本发明提供了一种基于机器学习的非固定格式单据信息的抽取方法,包括如下步骤:
[0063] S1:将单据图像转换为html文本;
[0064] S2:进行文字块span特征工程将文本转化成文字块span特征向量;
[0065] S3:进行信息抽取模型训练输出文字块span分类标签;
[0066] S4:对文字块span分类标签进行数据处理,生成专有模型输出要素值。
[0067] 现有NER技术大多聚焦于文本级别的序列数据,对于图像文档数据,由于传统NER技术无法融入文档布局,字体大小及位置等特征信息,因此无法将传统NER技术应用于银行单据的信息抽取中。
[0068] 经过分析发现,在没有固定格式的单据中,信息分布与文档布局息息相关,即要抽取的要素值所在的文字块大多分布于提示词的正后方,正下方或者斜下方,因此融入文字块自身以及周围局部信息可以进行票据要素抽取。基于以上分析,本发明提出了一种结合自身以及局部文档特征信息,利用机器学习进行单据信息的抽取方法,用以辅助人工进行单据审核,提升效率。
[0069] 通过本发明中的抽取方法,能够对非固定形式单据中的信息进行有效抽取,满足银行多种业务及保险理赔环境中的审核需求。
[0070] 在将单据图像转换为html文本的过程中,通过光学字符识别技术(Optical Character Recognition,简称OCR)进行文字块的检测和识别,OCR是指扫描仪或数码相机等电子设备检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程,本发明中除了对文字块进行识别,同时还检测出文本中的表格以及文字的位置。
[0071] 票据原始数据为图像,需要将其转换为文本结构化数据,并且还要保留文字特征信息,通过OCR技术中的目标检测和识别方法,可以有效地对票据进行文字块检测和识别,同时检测出文本中的表格,及文字的位置。本发明中提出一种能够描述所有票据的通用html,可以用网页标签table,div,span来描述文字的所有特征信息。
[0072] 具体地,在进行文字块span的特征工程时,需要提取文字块span的位置、大小、字符特征、单词组成以及文字块周围的文字信息。
[0073] 文字块span的特征工程主要包括以下步骤:
[0074] S21,进行文字块span位置特征position_embedding的提取:
[0075] 将文字块位置(X,Y,W,H)进行归一化,
[0076] Xnor=X/Xmax
[0077] Ynor=Y/Ymax
[0078] Wnor=W/(Xmax‑Xmin)
[0079] Hnor=H/Hmax
[0080] 其中Xmax,Ymax,Hmax,Xmin表示所有文字块中X,Y,H的最大值和X的最小值,Xnor,Ynor,Wnor,Hnor表示文字块坐标归一化后的值;
[0081] S22,进行文字块span布局特征table_embedding的提取:
[0082] 用0,1分别表示文字块是否在表格,
[0083] 在表格里面:T=0;
[0084] 不在表格里面:T=1;
[0085] S23,进行文字块span的字符特征char_embedding的提取:
[0086] 计算出各类型的字符所占比例,
[0087] 数字占比Rdig=Ndig/L
[0088] 字母占比Ralp=Nalp/L
[0089] 汉字占比Rch=Nch/L
[0090] 符号占比Rpun=Npun/L
[0091] 空格占比Rspa=Nspa/L
[0092] 其中Ndig,Nalp,Nch,Npun,Nspa,L分别表示文字块中数字,字母,汉字,标点符号,空格和字符的个数,Ralp,Ralp,Rch,Rpun,Rspa分别表示数字,字母,汉字,符号,空格的占比;
[0093] S24,进行文字块span字号特征font_embedding的提取:
[0094] 将文字块字号(F)标准化;
[0095] Fnor=F/Fmax
[0096] 其中Fmax表示所有文字块的最大字号,Fnor表示文字块经过标准归一化之后的字号;
[0097] S25,进行文字块span的句子单词特征sentence_embedding的提取:
[0098] 首先建立要抽取信息的高频词库,然后采用one‑hot方法对文字块句子进行编码;
[0099] 参见图2中S26的具体操作示意图,在得到文字块span所包括的位置、大小、字符特征、单词组成以及文字块周围的文字信息等所有的特征向量后,需要对所得到的所有特征全部拼接,得到一个描述文字块span自身特征的特征向量span_self_embedding;通过特征向量span_self_embedding,能够获得文字块的位置、是否处于表格、文字块的组成,字符大小以及所处句子等信息,能够保证文字块span识别的精准性。
[0100] 在银行审单票据中,信息抽取大部分依赖于提示词,但提示词往往分布于当前文字块或者文字块的正前方,正上方。因此在进行信息识别时,必须要将文字块的正前方或者正上方文字块进行特征工程,然后拼接至当前文字块的特征向量中。
[0101] 参见图3中S27的具体操作示意图,根据文字块span的位置关系,可以取出距离当前文字块span_self的最近的四个文字块span_upper,span_left1,span_left2,span_below。
[0102] 在得到距离当前文字块span_self最近的四个文字块span_upper,span_left1,span_left2,span_below之后,对上述四个文字块span进行特征工程,采用one‑hot进行编码形成span_upper_embedding,span_left1_embedding,span_left2_embedding,span_below_embedding,然后将这四个特征向量与span_self_embedding拼接形成一个完整的特征向量span_all_embedding,该特征向量包含了自身以及周围局部信息,上述四个特征向量与当前文字块span_self的拼接过程参见图4中S28的具体操作示意图。
[0103] 通过上述操作步骤,能够将每个文字块span自身及周围文字块进行特征工程,形成了一个描述文字块span的特征向量,通过综合自身及周围文字的特征向量,能够形成文字块span的综合体系,有效克服传统NER技术无法融入文档布局,字体大小及位置等特征信息的问题,并且通过检测识别到的相互之间的文字块,能够满足对非固定格式单据信息进行提取的多种单据审核环境下的现实需求。
[0104] 在得到描述文字块span的一个完整的特征向量span_all_embedding后,需要进行信息抽取模型训练,本发明中通过采用lightgbm作为信息抽取模型训练的分类器,将得到的文字块span特征向量span_all_embedding输入lightgbm分类器,lightgbm(Light Gradient Boosting Machine)是微软开源的一个实现GBDT算法的框架,支持高效率的并行训练。GBDT(Gradient Boosting Decision Tree)是机器学习中一个长盛不衰的模型,其主要思想是利用弱分类器(决策树)迭代训练以得到最优模型,该模型具有训练效果好、不易过拟合等优点。GBDT在工业界应用广泛,通常被用于点击率预测,搜索排序等任务。lightgbm提出的主要原因是为了解决GBDT在海量数据遇到的问题,让GBDT可以更好更快地用于工业实践。其具有以下优点:更快的训练速度;更低的内存消耗;更好的准确率;分布式支持,可以快速处理海量数据。
[0105] 通过机器学习模型训练后,lightgbm分类器将文字块span的分类结果进行输出,即输出文字块span的分类标签。在得到文字块span的分类标签后,通过数据处理,包括对日期以及金额标准化处理,生产专有模型输出要素值,形成对非固定格式单据信息抽取的最终结果。
[0106] 本申请实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的一种模块的基于机器学习的非固定格式单据信息抽取方法,存储介质是任何的各种类型的存储器设备或存储设备,存储介质包括:安装介质,例如CD‑ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等;存储介质可以还包括其它类型的存储器或其组合;另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统;第二计算机系统可以提供程序指令给第一计算机用于执行。存储介质包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
[0107] 本申请实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现基于机器学习的非固定格式单据信息抽取方法的步骤。
[0108] 当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上实施例所述的基于机器学习的非固定格式单据信息抽取方法,还可以执行本申请任意实施例所提供的基于机器学习的非固定格式单据信息抽取方法中的相关操作。
[0109] 最后应说明的是:虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
[0110] 类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
[0111] 由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
[0112] 以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。