
1.本发明属于信息内容加工技术领域,具体涉及基于文本分类和阅读理解的文档信息抽取方法及系统。
背景技术:2.在办公已经高度信息化的今天,企业办公室员工平均每日有近1/3的时间在和文字打交道,比如法务人员要审阅大量合同、起草协议;财会人员要审核大量报表。此类工作具备重复性高、工作量大等特点,人工处理效率低下,容易因失误造成不可挽回的巨大损失。近几年,随着机器学习与深度学习在自然语言处理领域的应用发展,文档智能审阅系统开始进入快速发展阶段。
3.文档智能审阅系统需要对文档进行快速处理,为企业提供文本自动抽取、比对、纠错等审阅功能。它将代替人工完成业务流程自动化,大幅度提高工作效率,降低业务风险。
4.现有常见文档信息抽取的方法模型框架图如图1所示:1、对用户输入的文档进行数据预处理,转化为模型可以处理的样本。
5.2、按照模型要求输入的格式,对样本进行处理,得到模型输入。
6.3、通过bert/lstm得到模型隐藏层输出,作为下一层模型的输入。
7.4、crf模型使用bios标注体系,通过对crf模型输出的处理得到输出的长序列标签;或者使用span模型对每个输入的字进行分类,判断该字是不是该长实体的开头位置标记或者结束位置标记。
8.当前文档审阅中信息抽取技术的不足之处在于抽取长实体信息。该问题主要涉及到以下几个方面的问题。
9.其一,首先文档信息中的长实体抽取精度低,传统方法抽取出文本作为合同终止条件字段存在极大的难度。待抽取文本太长,超出了传统意义上命名实体方法抽取字段的范围;长文本抽取需要融入大量的语义信息才能更精准地抽取到目标字段。
10.其二,待抽取字段本身也较长,当前最常使用的crf模型难以得到准确的长标签字段(我们定义该字段长度大于20个字)。
11.其三,采用span方式,即通过开始、结束标记获取待抽取实体的方式无法解决实体嵌套与实体重叠的问题。
12.其四,已有方法中使用基于roberta的阅读理解方法对长实体进行抽取。首先,此方法任务定义难度大,在训练阶段需要根据每个不同的标签针对性的提出关联问题,由于文档包含标签类型未知,需要在预测阶段使用所有标签问题进行提问,以此来得到所有可能的长实体标签,这将导致整个训练阶段耗时剧增,测试阶段耗时为原来的单标签预测耗时的n倍(这里的n为总的标签数量);其次,对于文档中原本不存在标签的数据,即待预测文档为负例,如果模型结果预测到标签,这将有可能导致级联性错误。
13.因此,设计一种能极大缩短训练以及预测时间,并提升文档抽取模型在抽取字段时的精度和速度的基于文本分类和阅读理解的文档信息抽取方法及系统,就显得十分必
要。
14.例如,申请号为cn202110353610.x的中国专利文献描述的一种人工智能领域文档关键信息抽取方法,包括以下步骤:s1、收集人工智能领域文档数据,进行关键信息抽取数据标注;s2、对预训练模型roberta进行进一步预训练;s3、构建信息抽取模型;s4、利用进一步预训练得到的roberta模型进行骨干网络参数初始化;s5、利用已标注数据进行训练,训练过程中对标注数据进行随机替换和数据增强并利用平方交叉熵损失来计算反向传播的误差;s6、利用训练得到的信息抽取模型在人工智能领域无结构化文本中进行信息抽取得到结果三元组。虽然将信息抽取作为一种机器阅读理解任务来求解,预测文本中各个关键信息的起点和终点位置,解决了序列标注模型应对长跨度知识文本时性能效果大幅度下降的问题,但是其缺点在于,仍然存在模型训练困难,耗时剧增的问题。
技术实现要素:15.本发明是为了克服现有技术中,现有的文档信息抽取方法存在模型训练困难,耗时剧增且抽取精度低的问题,提供了一种能极大缩短训练以及预测时间,并提升文档抽取模型在抽取字段时的精度和速度的基于文本分类和阅读理解的文档信息抽取方法及系统。
16.为了达到上述发明目的,本发明采用以下技术方案:基于文本分类和阅读理解的文档信息抽取方法,包括如下步骤;s1,输入文档,并对文档进行解析和识别,将文档转换为纯文本格式;s2,对文档中的文本内容进行预处理,获得输入数据;s3,根据步骤s2中的输入数据,生成对应的词向量、字向量和上下文向量,并将所述词向量、字向量和上下文向量进行拼接,得到拼接后的向量;s4,若拼接后的向量为可回答类型,则将拼接后的向量对应的实体文本问题,作为下一步骤的输入;s5,利用阅读理解模型,通过计算获得所述实体文本问题对应的最匹配的长标签数据的位置;s6,根据长标签数据的位置,获得长标签数据,并对所述长标签数据进行后处理修正,最终输出为待抽取的长实体字段。
17.作为优选,步骤s2中所述预处理包括:对文本内容进行正则化预处理;去除文本内容中的空白符,所述空白符包括空格符、制表符和换行符;按照预设的最大长度,对文档中的文本内容进行分割。
18.作为优选,步骤s3包括如下步骤:s31,通过构建词表、字表将所述输入数据向量化,分别生成所述输入数据对应的词向量、字向量;s32,通过bilstm模型生成所述输入数据对应的上下文向量;s33,将所述词向量、字向量和上下文向量进行拼接,得到拼接后的向量。
19.作为优选,步骤s4还包括如下步骤:若拼接后的向量为不可回答类型,则说明拼接后的向量无对应的实体文本问题,直接结束操作。
20.作为优选,步骤s5包括如下步骤:s51,通过如下公式,获得表示每个位置是所述实体文本问题对应的长标签数据的概率分布率分布其中,e为矩阵,表示阅读理解模型的隐藏层输出,表示第一可学习权重;s52,通过与步骤s51相同的计算方式,获得s52,通过与步骤s51相同的计算方式,获得s53,通过如下公式,获得所述实体文本问题对应的长标签数据的最大概率矩阵和,其中,为最大可能的标签的开始位置矩阵,而为最大可能的标签的结束位置矩阵,计算方式如下:置矩阵,计算方式如下:s54,通过二分类模型预测所述长标签数据的开始位置start和结束位置end在e矩阵中匹配的最大概率位置,获得长标签数据具体位置信息,具体公式如下:其中,, , , 表示e矩阵的第i,j行,m表示第二可学习权重。
21.作为优选,步骤s6包括如下步骤:使用正则表达式动态修正所述长标签数据的标签类型以及长标签数据内容。
22.作为优选,步骤s1包括如下步骤:通过文档审阅平台的后端解析txt、word格式文档,将txt、word格式文档转换为纯文本格式;通过ocr文字识别将jpg、pdf格式文档,转换为纯文本格式。
23.本发明还提供了基于文本分类和阅读理解的文档信息抽取系统,包括:文本信息智能抽取模块,用于对输入的文档进行解析和识别,将文档转换为纯文本格式;数据预处理模块,用于对文档中的文本内容进行预处理,获得输入数据;特征抽取模块,用于对输入数据生成对应的词向量、字向量和上下文向量,并将所述词向量、字向量和上下文向量进行拼接,得到拼接后的向量;文本分类模块,用于对拼接后的向量进行判断,若拼接后的向量为可回答类型,则将拼接后的向量对应的实体文本问题,作为下一步骤的输入;阅读理解模块,用于利用阅读理解模型,通过计算获得所述实体文本问题对应的
最匹配的长标签数据的位置;长实体标签数据生成模块,用于根据长标签数据的位置,获得长标签数据;数据后处理模块,用于对所述长标签数据进行后处理修正,最终输出为待抽取的长实体字段。
24.作为优选,所述特征抽取模块包括;词向量特征抽取模块,用于通过构建词表将所述输入数据向量化,生成所述输入数据对应的词向量;字向量特征抽取模块,用于通过构建字表将所述输入数据向量化,生成所述输入数据对应的字向量;上下文向量特征抽取模块,通过bilstm模型生成所述输入数据对应的上下文向量。
25.作为优选,所述文本信息智能抽取模块包括:后端解析模块,用于通过文档审阅平台的后端解析txt、word格式文档,将txt、word格式文档转换为纯文本格式;ocr文字识别模块,用于通过ocr文字识别将jpg、pdf格式文档,转换为纯文本格式。
26.本发明与现有技术相比,有益效果是:(1)本发明使用文本分类与阅读理解相结合的方法来解决文档信息抽取的长标签抽取难题,可以有效获取长实体相关问题与上下文之间的关联语义信息,首先将目标文本输入到一个单独的文本分类模型中,该分类任务是一个多标签多分类任务,一方面可以筛选得到范围更小的目标文本关联的问题类型,另一方面可以加速预测过程,这是因为多数输入数据中只存在少数标签,不需要针对所有标签进行提问,因此加入分类模型作为筛选器有利于提升整个框架的预测效率,减少预测耗时;之后将分类结果对应的问题类型结合目标文本输入到阅读理解模型中,使得抽取到的长标签字段更加准确;(2)本发明在数据处理阶段,通过预处理时合并实体与后处理时分离实体的方法解决了实体重叠的问题;通过阅读理解中构造的指针start、end,解决了实体嵌套的问题;(3)本发明有效解决了之前方法抽取长标签不准确的问题,既提升了模型预测准确率,同时也提升了预测效率,拥有耗时少同时预测结果对用户极其友好的优点;(4)本发明具有因素更多样,考虑更全面,设计更合理,效率更优化且通用性更强的特点。
附图说明
27.图1为现有常见文档信息抽取的方法模型的一种框架图;图2为本发明中基于文本分类和阅读理解的文档信息抽取方法的一种流程图;图3为本发明中矩阵e的一种框架图;图4为本发明中基于文本分类和阅读理解的文档信息抽取系统的一种框架图;图5为本发明实施例所提供的典型业务的一种流程图。
具体实施方式
28.为了更清楚地说明本发明实施例,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来
讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
29.实施例1:如图2所示,本发明提供了基于文本分类和阅读理解的文档信息抽取方法,包括如下步骤;s1,输入文档,并对文档进行解析和识别,将文档转换为纯文本格式;s2,对文档中的文本内容进行预处理,获得输入数据;s3,根据步骤s2中的输入数据,生成对应的词向量、字向量和上下文向量,并将所述词向量、字向量和上下文向量进行拼接,得到拼接后的向量;s4,若拼接后的向量为可回答类型,则将拼接后的向量对应的实体文本问题,作为下一步骤的输入;s5,利用阅读理解模型,通过计算获得所述实体文本问题对应的最匹配的长标签数据的位置;s6,根据长标签数据的位置,获得长标签数据,并对所述长标签数据进行后处理修正,最终输出为待抽取的长实体字段。
30.为了加速训练预测过程,通过n+1分类模型确定可回答(即可抽取)的数据,将提前构造的问题与文档形成词向量输入到阅读理解模型(如bert、roberta、albert阅读理解模型),这样可以得到更加完整的上下文信息输出,这里记为矩阵e。如图3所示。
31.进一步的,步骤s1包括如下步骤:通过文档审阅平台的后端解析txt、word格式文档,将txt、word格式文档转换为纯文本格式;通过ocr文字识别将jpg、pdf格式文档,转换为纯文本格式。
32.进一步的,步骤s2中所述预处理包括:对文本内容进行正则化预处理;去除文本内容中的空白符,所述空白符包括空格符、制表符和换行符;按照预设的最大长度,对文档中的文本内容进行分割。
33.如手机号+文本序号的分割处理(1*********8\n1.2,在
‘
\n’处需要做分割处理),之后去除空白符(包括空格符,制表符,换行符),最后按照提前设定好的最大长度分割文档。
34.步骤s3包括如下步骤:s31,通过构建词表、字表将所述输入数据向量化,分别生成所述输入数据对应的词向量、字向量;s32,通过bilstm模型生成所述输入数据对应的上下文向量;s33,将所述词向量、字向量和上下文向量进行拼接,得到拼接后的向量。
35.为了使得模型可以充分的获取输出数据的信息,主要使用三个级别的向量特征,分别是字向量特征、词向量特征、上下文向量特征。其中词向量需要使用分词工具进行词汇切分,字向量与词向量都需要构建词表以及字表之后经过向量化得到;而上下文向量需要经过bilstm模型获取。
36.进一步的,步骤s4还包括如下步骤:
若拼接后的向量为不可回答类型,则说明拼接后的向量无对应的实体文本问题,直接结束操作。
37.步骤s4经过一个n+1多标签分类模型得到可能的标签,输出为标签问句对应的问题,并结合分类文本作为阅读理解模型的输入。
38.如果可回答,则经过之后的阅读理解模型,得到该标签对应的实体标签位置(start,end)。
39.进一步的,步骤s5包括如下步骤:s51,通过如下公式,获得表示每个位置是所述实体文本问题对应的长标签数据的概率分布概率分布其中,e为矩阵,表示阅读理解模型的隐藏层输出,表示第一可学习权重;s52,通过与步骤s51相同的计算方式,获得s52,通过与步骤s51相同的计算方式,获得s53,通过如下公式,获得所述实体文本问题对应的长标签数据的最大概率矩阵和,其中,为最大可能的标签的开始位置矩阵,而为最大可能的标签的结束位置矩阵,计算方式如下:结束位置矩阵,计算方式如下:s54,通过二分类模型预测所述长标签数据的开始位置start和结束位置end在e矩阵中匹配的最大概率位置,获得长标签数据具体位置信息,具体公式如下:其中,, , , 表示e矩阵的第i,j行,m表示第二可学习权重。
40.通过二分类模型预测start,end的匹配概率,i,j表示该矩阵的第i,j行(即公式(4)和(5)得到的行信息),通过上述系列计算,最终可得到长标签数据具体位置信息,有利于提升模型预测精度。
41.进一步的,步骤s6包括如下步骤:使用正则表达式动态修正所述长标签数据的标签类型以及长标签数据内容。
42.步骤s6反向处理预处理数据,即根据问题解析得到标签;同时,使用正则表达式动态修正标签类型以及标签内容。
43.如图4所示,本发明还提供了基于文本分类和阅读理解的文档信息抽取系统,包
括:文本信息智能抽取模块,用于对输入的文档进行解析和识别,将文档转换为纯文本格式;数据预处理模块,用于对文档中的文本内容进行预处理,获得输入数据;特征抽取模块,用于对输入数据生成对应的词向量、字向量和上下文向量,并将所述词向量、字向量和上下文向量进行拼接,得到拼接后的向量;文本分类模块,用于对拼接后的向量进行判断,若拼接后的向量为可回答类型,则将拼接后的向量对应的实体文本问题,作为下一步骤的输入;阅读理解模块,用于利用阅读理解模型,通过计算获得所述实体文本问题对应的最匹配的长标签数据的位置;长实体标签数据生成模块,用于根据长标签数据的位置,获得长标签数据;数据后处理模块,用于对所述长标签数据进行后处理修正,最终输出为待抽取的长实体字段。
44.进一步的,所述特征抽取模块包括;词向量特征抽取模块,用于通过构建词表将所述输入数据向量化,生成所述输入数据对应的词向量;字向量特征抽取模块,用于通过构建字表将所述输入数据向量化,生成所述输入数据对应的字向量;上下文向量特征抽取模块,通过bilstm模型生成所述输入数据对应的上下文向量。
45.进一步的,所述文本信息智能抽取模块包括:后端解析模块,用于通过文档审阅平台的后端解析txt、word格式文档,将txt、word格式文档转换为纯文本格式;ocr文字识别模块,用于通过ocr文字识别将jpg、pdf格式文档,转换为纯文本格式。
46.基于本发明的技术方案,在具体实施和操作过程中,以图5所示典型业务的流程图说明本发明具体实施流程。
47.如图5所示,具体实施流程如下:1.用户输入文档word,pdf,jpg,txt等格式,选择文档类型。
48.2.通过文本信息智能抽取模块,利用文档审阅平台的后端解析txt、word格式文档,将txt、word格式文档转换为纯文本格式;利用ocr文字识别将jpg、pdf格式文档,转换为纯文本格式。
49.3.在数据预处理模块,主要涉及数字类型数据切分,如202110301.2,前半部分的20211030为正确的标签,但是模型在预测是1.2会对其造成干扰,通过正则化预处理,将其分割开;此外,需要按照设定好的长度进行句子切分,如256句子长度。
50.4.特征抽取模块,通过构建词表、字表,分别生成输入数据对应的词向量,字向量;如使用word2vec,对输入数据进行分词后生成对应词向量,通过对当前数据分字得到对应的字表之后构建字向量。上下文向量通过bilstm(双向长短时记忆网络)生成输入文本依赖的上下文向量,并将上述三种向量进行拼接,进行下一步骤。
51.5.文本分类模块,将拼接后的向量输入n+1多标签分类模型(具体采用二分类模型),如果得到不可回答类型,说明输入没有对应的实体,直接结束;反之,得到输入对应的实体,拼接相应的阅读理解问题作为下一层的输入。
52.6.阅读理解模块,具体使用robert模型,得到的是阅读理解模型的隐藏层矩阵e,之后通过计算(start,end)标记组匹配的最大概率得到长实体的位置,计算过程参照步骤s5。
53.7.数据后处理模块,起到修正标签作用,对于一些明显错误,进行纠正,以提高预测准确率;另一个作用是第3步的逆过程,为了处理之前加入的无效标点。
54.8.最终的输出为待抽取的长实体字段。
55.本发明独创性的在阅读理解模型前加入了一个文本分类模型,用于分类目标文档对应的标签类型,提升了实体预测精度,同时解决了单独使用阅读理解模型造成的速度慢的问题。
56.在数据处理阶段,通过预处理时合并实体与后处理时分离实体的方法解决了实体重叠的问题;通过构造阅读理解中指针式实体开头结尾的方式,解决了实体嵌套的问题。
57.使用中文词向量、字向量和上下文向量结合的方法,充分的表示了上下文信息,有利于文本信息的实时交互,进一步提升阅读理解框架抽取信息的精度。
58.本发明方法不仅提高了信息抽取的准确率,与此同时极大的提升了长实体预测速度,预测结果对用户极其友好,本发明具有因素更多样,考虑更全面,设计更合理,效率更优化且通用性更强的特点。
59.以上所述仅是对本发明的优选实施例及原理进行了详细说明,对本领域的普通技术人员而言,依据本发明提供的思想,在具体实施方式上会有改变之处,而这些改变也应视为本发明的保护范围。