要素抽取方法、装置、计算机设备和存储介质与流程

文档序号:30786013发布日期:2022-07-16 08:02阅读:218来源:国知局
要素抽取方法、装置、计算机设备和存储介质与流程

1.本发明属于文本处理技术领域,尤其涉及一种要素抽取方法、装置、计算机设备和存储介质。


背景技术:

2.互联网上存在着海量的垂直领域数据,分析和挖掘其中的高价值信息能促进相关行业的发展,要素抽取技术则是文本信息挖掘技术体系中的重要角色。要素抽取主要是从无结构化文本中抽取特定主体的要素信息的过程,目前大致可分为基于传统模型的方法和基于现代机器学习的方法。其中,基于传统模型的方法主要利用关键词库和模式规则来识别文本中的目标要素信息。而基于现代机器学习的方法中,有采用生成模式的,也有采用深度神经网络的。生成模式一般利用概率模型以输入文本为观测信息生成要素信息,深度神经网络一般采用分类或序列标注模型来抽取要素信息。
3.然而,无论是基于传统模型的方法和基于现代机器学习的方法,现有非结构化文本信息抽取方法主要针对的都是自然句表述的文本,对于招投标等领域中非结构化文本中所存在的内涵结构及自然句混合表达的抽取效果就有所下降。并且,招投标领域中存在动态多主体现象,现有抽取方法也并不支持动态主体或支持效果欠佳,从而导致降低该领域要素抽取的精准度。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够提高要素抽取精准度的要素抽取方法、装置、计算机设备和存储介质。
5.本发明提供一种要素抽取方法,包括:
6.识别待抽取文本的层次有序列表并形成层次有序列表树,基于所述层次有序列表树对所述待抽取文本进行块划分形成第一块结构树;
7.开放抽取所述待抽取文本中无主体要素的要素信息并附着到所述第一块结构树上,得到第二块结构树;
8.对所述第二块结构树中的节点进行主体识别,确定要素主体;
9.将所述无主体要素的要素信息与所述要素主体关联并与所述要素主体的标准要素对齐。
10.在其中一个实施例中,所述识别待抽取文本的层次有序列表并形成层次有序列表树,基于所述层次有序列表树对所述待抽取文本进行块划分形成第一块结构树,包括:
11.对所述待抽取文本进行层次有序列表识别,输出所述待抽取文本中的层次信息和序数信息;
12.以所述待抽取文本为根节点,根据所述层次信息将所述序数信息划分为子节点或叶子节点,形成层次有序列表树;
13.将所述层次有序列表树中的节点作为序数块,且以所述序数块对应的序数信息为
切分符对所述待抽取文本进行片段切分,得到所述序数块的直属文本;
14.在所述序数块的直属文本中识别非序数块;
15.将所述非序数块作为对应序数块的子节点形成新的树,得到第一块结构树。
16.在其中一个实施例中,所述在所述序数块的直属文本中识别非序数块,包括:
17.根据换行符和预设长度的连续空白字符将所述序数块的直属文本进行片段切分,得到子文本片段;
18.对各所述子文本片段进行块主旨识别,确定块主旨文本片段;
19.将所述块主旨子文本片段作为非序数块,且所述块主旨子文本片段的后续片段为所述非序数块的直属文本。
20.在其中一个实施例中,所述对各所述子文本片段进行块主旨识别,确定块主旨文本片段的计算公式如下:
[0021][0022]
其中,n
bt
为块主旨文本片段,n1为所述序数块的直属文本的前n1个字词,θ
bt
为预设的经验参数,p
bt
(i|i-1,i-2)是所述序数块的直属文本的前n1个字词中第i、i-1、i-2位置的字词分类别时输出的实数特征函数,v
bt
表示一个块主旨结束字词集合,是一个是指示器函数。
[0023]
在其中一个实施例中,所述开放抽取所述待抽取文本中无主体要素的要素信息并附着到所述第一块结构树上,得到第二块结构树,包括:
[0024]
锚定所述待抽取文本中出现分隔符的位置,得到锚定位置;
[0025]
基于所述锚定位置识别无主体要素的要素名及所述要素名对应的要素值,得到要素信息;
[0026]
确定所述要素信息来源文本所在的文本块,以所述文本块在所述第一块结构树中对应的节点为父节点创建所述要素信息节点,得到第二块结构树。
[0027]
在其中一个实施例中,基于所述锚定位置识别要素名及对应的要素值,得到要素信息,包括:
[0028]
从所述锚定位置之前确定满足要求的第一位置,将所述第一位置到所述锚定位置之间的文本片段作为要素名,第一位置的确定公式如下:
[0029][0030]
其中,n
key
为第一位置,n2表示所述待抽取文本中的字词位置,θ
key
为预设的经验参数,p
key
(i|i-1,i-2,i+1,i+2)是所述待抽取文本中第i、i-1、i-2、i+1、i+2位置的字词分类别时输出的实数特征函数,v
key
表示一个文本结束字词集合,是一个是指示器函数;
[0031]
基于所述要素名,从所述锚定位置之后确定满足要求的第二位置,将所述锚定位置到所述第二位置之间的文本片段作为所述要素名的要素值,第二位置的确定公式如下:
[0032]
[0033]
其中,n
val
为第二位置,n2表示文本中的字词位置,θ
val
为预设的经验参数,p
val
(i|i-1,i-2,i+1,i+2;n
key
)是给定了要素名n
key
的所述待抽取文本中第i、i-1、i-2、i+1、i+2位置的字词分类别时输出的实数特征函数,v
val
表示一个文本结束字词集合,是一个是指示器函数。
[0034]
在其中一个实施例中,所述要素主体包括动态主体和静态主体,所述对所述第二块结构树中的节点进行主体识别,确定要素主体,包括:
[0035]
根据所述层次有序列表中相邻序数信息之间头尾样式的相似度、各序数信息头尾样式与动态主体表述的相似度以及各序数信息的字面样式计算所述层次有序列表作为动态主体序列的可能性分值;
[0036]
当根据所述可能性分值确定所述层次有序列表为动态主体序列时,将所述层次有序列表的各序数信息在所述第二块结构树中对应的节点作为动态主体;
[0037]
根据所述第二块结构树中非动态主体节点的节点文本与各静态主体的称谓文本的相似度,确定与各所述静态主体关联的非动态主体节点。
[0038]
在其中一个实施例中,所述将所述无主体要素的要素信息与所述要素主体关联并与所述要素主体的标准要素对齐,包括:
[0039]
在所述第二结构树中以根节点为递归回溯方向确定从要素名到各节点回溯路径访问的访问节点,根据所述访问节点与所述要素名的相似度确定路径评分;
[0040]
根据要素名与所述标准要素的称谓文本的相似度、要素主体的称谓文本与出现文本的相似度以及所述路径评分,确定待关联要素主体和待对齐标准要素;
[0041]
将所述要素信息与所述待关联要素主体进行关联,并与所述待对齐标准要素进行对齐。
[0042]
在其中一个实施例中,所述识别文本中的层次有序列表结构之前,还包括:对获取的文本进行文本预处理,且将预处理后的文本进行自然语言处理。
[0043]
在其中一个实施例中,所述将所述无主体要素的要素信息与目标领域标准要素对齐并与所述要素主体进行关联之后,还包括:
[0044]
当所述要素信息中的要素名存在多个对应的要素值时,对所述要素名对应的多个要素值进行质量评估,得到要素值排序;
[0045]
根据所述要素值排序筛选所述要素名的最优要素值。
[0046]
一种要素抽取装置,包括:
[0047]
树结构形成模块,用于识别待抽取文本的层次有序列表并形成层次有序列表树,基于所述层次有序列表树对所述待抽取文本进行块划分形成第一块结构树;
[0048]
开放抽取模块,用于开放抽取所述待抽取文本中无主体要素的要素信息并附着到所述第一块结构树上,得到第二块结构树;
[0049]
主体识别模块,用于对所述第二块结构树中的节点进行主体识别,确定要素主体;
[0050]
对齐关联模块,用于将所述无主体要素的要素信息所述要素主体关联并与所述要素主体的标准要素对齐。
[0051]
本发明还提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器存储由计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的要素抽取方法的步骤。
[0052]
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的要素抽取方法的步骤。
[0053]
上述要素抽取方法、装置、计算机设备和存储介质,通过识别文本中的层次有序列表层次有序列表树,并基于层次有序列表树对文本进行块划分形成第一块结构树之后,开放抽取无主体要素的要素信息附着到第一块结构树上形成第二块结构树,进而对第二块结构树中的节点进行主体识别确定要素主体,最后将要素信息与主体关联并与目标领域的标准要素对齐。该方法通过树解析文本的结构,从而能够理解非结构化文本中所存在的内涵结构及自然句信息,且通过不限制领域的开放抽取方式和主体对齐关联等方式还能够进一步解决要素的多主体歧义问题,整体提升要素抽取能力范围和效果,从而提高了要素抽取的精准度。
附图说明
[0054]
图1为一个实施例中要素抽取方法的应用环境图。
[0055]
图2为一个实施例中要素抽取方法的流程示意图。
[0056]
图3为一个实施例中层次有序列表树的示意图。
[0057]
图4为一个实施例中要素抽取装置的结构框图。
具体实施方式
[0058]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0059]
本技术提供的要素抽取方法,可以应用于如图1所示的应用环境中,该应用环境涉及终端102和服务器104。其中,终端102通过网络与服务器104进行通信。终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和携带式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0060]
当终端102接收到要素抽取指令时,可以由终端102单独实现上述要素抽取方法。也可以由终端102将要素抽取指令发送给通信的服务器104,由服务器104实现上述要素抽取方法。以服务器104为例,具体的,服务器104识别待抽取文本的层次有序列表并形成层次有序列表树,基于层次有序列表树对文本进行块划分形成第一块结构树;服务器104开放抽取待抽取文本中无主体要素的要素信息并附着到第一块结构树上,得到第二块结构树;服务器104对第二块结构树中的节点进行主体识别,确定要素主体;服务器104将无主体要素的要素信息与所述要素主体关联并与所述要素主体的标准要素对齐。
[0061]
在一个实施例中,如图2所示,提供一种要素抽取方法,以该方法应用于服务器为例进行说明,包括以下步骤:
[0062]
步骤s201,识别待抽取文本的层次有序列表并形成层次有序列表树,基于层次有序列表树对待抽取文本进行块划分形成第一块结构树。
[0063]
其中,待抽取文本是指需要进行要素抽取的文本。层析有序列表是指文本中有层次关系的有序列表,比如文本按照格式“一、****(1)****(2)****、二****三”呈现时,其中的“一”“二”“三”章节为相同级别的序数信息,但是“三”章节是在“二”章节之后,“二”章节
在“一”章节之后,即后序的章节。而“(1)、(2)”章节是“一”章节之内的序数信息,即为“一”章节的下层。树是一种数据结构,是由有限节点组成的一个具有层次关系的集合。本实施例中的层次有序列表树则是基于有序列表之间的层次关系所形成的树,块结构树是基于层次有序列表树进行文本块划分之后所形成的新的树。
[0064]
具体的,当服务器获取到待抽取要素的文本之后,首先识别文本中的层次有序列表,识别方式可以采用现有任一种层次有序列表识别方式。比如采用词典映射的方法和基于词性的方法。词典映射主要是根据预先定义的词典识别出表达序数的字,然后将其转换为阿拉伯数字进行比较后排成有序列表。基于词性主要是通过自然语言处理工具对文本分词,同时标注出每个词的词性,之后找出词性为数词的词语转换为可比较阿拉伯数字后组织为有序列表。然后,服务器根据层次有序列表确定文本中序数信息的层级关系之后,按照层级关系将各序数信息形成树结构,得到层次有序列表树。最后,服务器以层次有序列表树中的节点为划分点对待抽取文本进行文本块的划分,进一步基于划分后的文本块形成第一块结构树。
[0065]
步骤s202,开放抽取待抽取文本中无主体要素的要素信息并附着到第一块结构树上,得到第二块结构树。
[0066]
其中,开放抽取是指抽取时不限定要素的种类,无主体要素是指没有要素主体的要素信息,即是一个包含要素名和要素值的二元组。
[0067]
具体的,当服务器形成第一块结构树之后,以开放抽取的方式从文本中抽取无主体要素的要素信息。然后,将无主体要素的要素信息作为新创建的节点附着到已经形成的第一块结构树上,从而得到新形成的第二块结构树。
[0068]
步骤s203,对第二块结构树中的节点进行主体识别,确定要素主体。
[0069]
其中,要素主体是指目标领域中包含多种领域要素的集合体,目标领域可以理解为实际所应用领域,比如以目标领域是招投标领域为例,那么文本中的“标、包、项目”等即为主体。对于文本中存在不定数量的主体,这一现象称之为动态主体现象,对应的序数信息即为动态主体,比如“第1包”、“第2包”等。另外,要素主体还包括静态主体,静态主体由事先定义。
[0070]
具体的,服务器得到第二块结构树之后,首先对第二块结构树中的节点进行主体识别确定其中属于动态主体的节点,确定该节点为识别出的动态主体。然后,对于第二块结构树中的非动态主体的节点进一步进行识别,将能够视为静态主体的节点与静态主体关联确定其为识别出的静态主体。如果某一个节点既不是动态主体也不是静态主体则不会与任何主体关联。
[0071]
步骤s204,将无主体要素的要素信息与要素主体关联并与要素主体的标准要素对齐。
[0072]
具体的,主体关联是将要素信息关联到目标领域中涉及的要素主体上,包括动态主体和静态主体,本实施例所要关联的动态主体和静态主体均已在前处理步骤中确定。而要素对齐是将开放抽取的要素信息对齐到所关联要素主体对应的标准要素上的过程。由于动态主体和静态主体都有对应的称谓文本,且同时也都有事先定义好的标准要素集,区别在于所有动态主体具有相同的事先定义好的标准要素集,不同的静态主体则分别事先定义有不同的标准要素集。该标准要素集中的各个标准要素也有相应的称谓文本,称谓文本可
以理解为是一种文本描述,用于描述对象的文本。因此,服务器在抽取到要素信息以及确定要素主体之后,可以根据要素信息与称谓文本之间的相似度确定关联的要素主体和对齐的标准要素。
[0073]
上述要素抽取方法,通过识别文本中的层次有序列表层次有序列表树,并基于层次有序列表树对文本进行块划分形成第一块结构树之后,开放抽取无主体要素的要素信息附着到第一块结构树上形成第二块结构树,进而对第二块结构树中的节点进行主体识别确定要素主体,最后将要素信息与要素主体关联并与目标领域的标准要素对齐。该方法通过树解析文本的结构,从而能够理解非结构化文本中所存在的内涵结构及自然句信息,且通过不限制领域的开放抽取方式和主体对齐关联等方式还能够进一步解决要素的多主体歧义问题,整体提升要素抽取能力范围和效果,从而提高了要素抽取的精准度。
[0074]
在一个实施例中,步骤s201包括:对待抽取文本进行层次有序列表识别,输出待抽取文本的层次信息和序数信息;以待抽取文本为根节点,根据层次信息将序数信息划分为子节点或叶子节点,形成层次有序列表树;将层次有序列表树中的节点作为序数块,且以序数块对应的序数信息为切分符对待抽取文本进行片段切分,得到序数块的直属文本;在序数块的直属文本中识别非序数块;将非序数块作为对应序数块的子节点形成新的树,得到第一块结构树。
[0075]
其中,序数信息即为文本中的“一、(1)、(2)、二、三”等用于表示章节段落的字符,除了数字外还可以其他用于表示章节段落的字符,比如“i”,可以是指英文字母序的第九个,也可以是希腊字母序的第一个。层次信息则是序数信息之间的层级关系,包括后序和下层两种关系。本实施例中的块是指一个文本区域,包括序数块和非序数块两种类型。序数块根据层次有序列表树划分而来,非序数块从序数块对应的直属文本中划分而来。可以理解为,根据层次有序列表树划分而来的是序数块,其他的是非序数块。一个序数信息的邻接后续文本片段为该序数信息的直属文本,也称为序数块的直属文本。本实施例中的子节点是度不为0的节点,叶子节点是度为0的节点。
[0076]
具体的,服务器通过层次有序列表识别方法对待抽取文本进行层析有序列表识别输出文本的层次信息和序数信息之后,以待抽取文本为根节点形成一颗树,树的子节点或叶子节点由序数信息形成,而序数信息具体是子节点还是叶子节点由序数信息之间的层次关系决定。如图3所示,提供一种层次有序列表树的示意图,参考图3,章节“一、二”即为子节点,章节“(1)、(2)”为叶子节点。然后,层次有序列表树中的一个节点即形成一个块,服务器则将层次有序列表树中的节点作为序数块,且以所有识别出的序数信息为切分标记符将待抽取文本切分为若干个片段,每个序数信息的邻接后续文本片段即直属文本,也就是该序数块的直属文本,比如以图3中“一”划分文本后所得到邻接后续文本为其直属文本。进一步的,以一个序数块的直属文本片段为处理范围,对所有序数块进行非序数块的识别,即从所有的直属文本中进一步识别出非序数块。最后将识别出的非序数块作为其对应序数块的子节点来形成新的树,从而得到第一块结构树。比如,当非序数块a是从序数块“一”的直属文本片中识别出来的,那么非序数块a则作为序数块“一”的子节点,此时相当于是层次有序列表树新增一个节点得到了第一块结构树。
[0077]
在一个实施例中,在序数块的直属文本中识别非序数块,包括:根据换行符和预设长度的连续空白字符将序数块的直属文本进行片段切分,得到子文本片段;对各子文本片
段进行块主旨识别,确定块主旨文本片段;将块主旨子文本片段作为非序数块,且块主旨子文本片段的后续片段为非序数块的直属文本。
[0078]
其中,块主旨中的所称主旨是指文本中的一个片段,代表一个块结构的核心表述,一个块有至多一个主旨。
[0079]
具体的,首先根据换行符、长为l
cw
的连续空白符将直属文本切分为若干片段,得到的文本片段作为子文本片段。其中l
cw
为整数参数,表示作为分割符的连续空白符的个数,本实施例优选大于1小于10的整数作为l
cw
。然后,构建一个二分类模型,利用其对各个子文本片段进行识别,判定其是否可以成为块主旨。当确定某一个子文本片段能够作为主旨时,确定其为块主旨文本片段。然后,块主旨文本片段视作序数块中的序数信息,将该块主旨文本片段作为非序数块,而以该块主旨文本片段为切分符进行切分得到的邻接后续片段为该非序数块的直属文本。
[0080]
在一个实施例中,对各子文本片段进行块主旨识别,确定块主旨文本片段的计算公式如下:
[0081][0082]
其中,n
bt
为块主旨文本片段,n1为所述序数块的直属文本的前n1个字词,log是自然对数函数,θ
bt
为预设的经验参数,p
bt
(i|i-1,i-2)是序数块的直属文本的前n1个字词中第i、i-1、i-2位置的字词分类别时输出的实数特征函数,v
bt
表示一个块主旨结束字词集合,块主旨结束字词可以由经验设定或有数据集统计而来。是一个是指示器函数,表示当直属文本中的前n1个字词中的第i位置的字词不在集合中v
bt
时取值1,否则取值0。根据公式可知,n
bt
由求得,即在直属文本中找出使得函数满足θ
bt
的最长的前n1个词,直属文本中的前n
bt
个字词所形成的文本即为该块的块主旨。可以理解为,序数块的块主旨识别是从其直属文本中找出前n
bt
个字符的过程。
[0083]
在一个实施例中,步骤s202,包括:锚定待抽取文本中出现分隔符的位置,得到锚定位置;基于锚定位置识别无主体要素的要素名及要素名对应的要素值,得到要素信息;确定要素信息来源文本所在的文本块,以文本块在第一块结构树中对应的节点为父节点创建要素信息节点,得到第二块结构树。
[0084]
具体的,在文本中寻找分隔符出现的位置,锚定其位置得到锚定位置n
kvs
。其中,分隔符为预设分隔符集合中所有包括的字词。然后,服务器基于每个锚定位置n
kvs
进行无主体要素的要素名识别、以及该要素名对应的要素值识别,从而得到要素信息。最后,确定所抽取得到的要素信息其抽取来源文本所在的文本块,进一步确定该文本块在第一块结构树中对应的节点,从而以该节点作为父节点为抽取出的要素信息创建节点附着到第一块结构树上,此时第一块结构树新增加了要素信息节点,从而得到第二块结构树。比如,要素信息a是从序数块“一”对应的直属文本中抽取而来,则以第一块结构树中的节点“一”为父节点创建要素信息节点。
[0085]
在一个实施例中,基于锚定位置识别无主体要素的要素名及要素名对应的要素值,得到要素信息,包括:
[0086]
具体的,对于一个给定的锚定位置n
kvs
,要素名识别是找出一个位于该锚定位置nkvs
之前且满足预设要求的第一位置n
key
,以n
key
到n
kvs
之间的字词所组合形成的文本片段为所识别的要素名。n
kvs
求解的计算公式如下:
[0087][0088]
其中,n
key
为第一位置,n2表示待抽取文本中的字词位置,n2不会大于锚定位置n
kvs
,log为自然对数函数,θ
key
为预设的经验参数,即第一位置n
key
需要满足的要求,p
key
(i|i-1,i-2,i+1,i+2)是待抽取文本中第i、i-1、i-2、i+1、i+2位置的字词分类别时输出实数特征函数,该函数可以基于构建的数据集中统计经验分布而得出,v
key
表示一个文本结束字词集合,文本结束字词可以由经验设定或由数据集统计而来,是一个是指示器函数,表示当待抽取文本中第i位置的字词不在文本结束字词集合v
key
中时取值1,否则取值0。根据公式可知,n
key
由求得,即在待抽取文本中找出使得函数满足θ
key
的最小的n2,该n2不会大于n
kvs
,待抽取文本中n
key
到的n
kvs
文本片段即为要素名。
[0089]
要素名对应要素值的识别是基于要素名n
key
和锚定位置n
kvs
,找到一个位置位于锚定位置n
kvs
之后且满足预设要求的第二位置n
val
形成文本片段的过程,即锚定位置n
kvs
到位置n
val
之间的文本片段为要素名n
key
对应的要素值,位置n
val
的计算公式如下:
[0090][0091]
其中,n2表示文本中的字词位置,此处n2不会大于待抽取文本的长度,θ
val
为预设的经验参数,即第二位置n
val
需要满足的要求,p
val
(i|i-1,i-2,i+1,i+2;n
key
)是已经给定了要素名n
key
的待抽取文本中第i、i-1、i-2、i+1、i+2位置的字词分类别时输出的实数特征函数,该函数可以基于构建的数据集中统计经验分布而得出,v
val
表示一个文本结束字词集合,可以由经验设定或由数据集统计而来,是一个是指示器函数,表示当给定文本第i位置的字词不在结束字词集合v
val
中时取值1,否则取值0。根据公式可知,n
val
由求得,即在待抽取文本中找出使得函数满足θ
val
的最大的n2,该n2不会大于待抽取文本长度,待抽取文本中n
kvs
到n
val
的文本片段即为要素名对应的要素值。
[0092]
在一个实施例中,步骤s203,包括:根据层次有序列表中相邻序数信息之间头尾样式的相似度、各序数信息头尾样式与动态主体表述的相似度以及各序数信息的字面样式计算层次有序列表作为动态主体序列的可能性分值;当根据可能性分值确定层次有序列表为动态主体序列时,将层次有序列表的各序数信息在第二块结构树中对应的节点作为动态主体;根据第二块结构树中非动态主体节点的节点文本与各静态主体的称谓文本的相似度,确定与各静态主体关联的非动态主体节点。
[0093]
具体的,一个文本能够被识别出多个层次有序列表,对于每一个层次有序列表,其是序数信息的一个序列,而一个序数信息包括头样式、尾样式、字面样式以及标准数等四个信息。头样式和尾样式是文本,本实施例中的头尾样式即是指头样式和尾样式的二元组。字面样式是一个从离散值集合中取值的标量,标准数是一个非负整数。因此,本实施例通过借助有层次序列表中该些信息来识别第二结构树中属于动态主体的节点,进而再在非动态主
体的节点中确定能够视为静态主体的节点。
[0094]
对于动态主体的识别,首先根据相邻序数信息之间头尾样式的相似度、各序数信息头尾样式与动态主体表述的相似度以及各序数信息的字面样式计算该层次有序列表作为动态主体序列的可能性分值s
dpr
,具体计算公式如下:
[0095][0096][0097]
其中,w
(slt)
是层次有序列表中所有序数信息的头尾样式的集合,|w
(slt)
|表示该集合中元素的数量,w(slt)i是第i个序数信息的头尾样式。s
cslt
是一个评估相邻序数信息的头尾样式的规范相似度函数,比如可以是要求相邻相同的指示器函数。s
pslt
是一个评估序数信息的头尾样式与动态主体表述的规范相似度函数,比如可以是要求头尾样式必须出现在指定集合的指示器函数。v
dpslt
是一个参数,表示可作为动态主体表述的头尾样式,可由经验预先设定或有数据集统计得出。f
fsty
表示层次有序列表的字面样式,v
dpsf
表示可接受的字面样式,可由经验预先设定或有数据集统计得出。是一个指示器函数,表示当f
fsty
在v
dpsf
时取值1,否则取值0。进而,当计算得出的可能性分值s
dpr
大于预设分值时,确定该层次有序列表为动态主体序列,将其各序数信息在第二块结构树中对应的节点作为动态主体。
[0098]
对于静态主体的识别,静态主体的识别是指找出文本片段将其视为静态主体的出现的过程。因此,对于第二结构树中除了属于动态主体的节点以外的非动态主体节点,通过其节点文本t(e1)g与各预设的静态主体的称谓文本的相似度确定可以视为静态主体e*s的节点。其中,块节点的节点文本是其块主旨,要素节点的节点文本为其要素名。静态主体e*s的确定公式如下:
[0099][0100]
其中,e
sta
是预设的静态主体集合,t(e1)n是静态主体e1的称谓文本,s
engs
是一个规范化的相似度函数,用于度量节点文本t(e1)g与称谓文本t(e1)n之间的相似度,θ
esa
是经验值。根据公式可知,静态主体e*s由求解出,即从静态主体集合e
sta
中找出使得函数值最大并且满足不等式条件的静态主体,然后将该静态主体与节点文本t(e1)g对应的非动态主体节点关联视为静态主体,如果不能满足条件则该节点不会关联任何主体。
[0101]
在一个实施例中,步骤s204,包括:在第二结构树中以根节点为递归回溯方向确定从要素名到各节点回溯路径访问的访问节点,根据访问节点与要素名的相似度确定路径评分;根据要素名与标准要素的称谓文本的相似度、要素主体的称谓文本与出现文本的相似度以及路径评分,确定待关联要素主体和待对齐标准要素;将要素信息与所述待关联要素主体进行关联,并与待对齐标准要素进行对齐。
[0102]
其中,要素主体中动态主体的称谓文本是识别出的动态主体名,比如图3中所示结构树中的节点“一”被识别为动态主体,那么其对应的称谓文本即为“一”。要素主体中静态主体的称谓文本则由事先定义或者数据集学习得到。本实施例中的出现是指经过要素主体
识别过程被识别为要素主体的节点,即被识别为动态主体的节点和通过识别确定与静态主体关联被视为静态主体的非动态主体节点。动态主体的出现文本同样为其动态主体名,静态主体的出现文本则是与其关联的节点的直属文本,比如节点“一”与某一静态主体关联被视为静态主体,那么“一”对应的直属文本就是该静态主体的出现文本。
[0103]
具体的,首先在第二结构树中以根节点为递归回溯方向确定从要素名到各节点回溯路径访问的访问节点,根据访问节点与要素名的相似度确定路径评分。然后根据要素名与标准要素的称谓文本的相似度、要素主体的称谓文本与出现文本的相似度以及路径评分,确定待关联要素主体和待对齐标准要素。路径评分以及待关联要素主体e*和待对齐标准要素p*e的计算公式分别如下:
[0104][0105][0106]
其中,e是所有要素主体的集合,pe是要素主体e的标准要素集,t(e)p是主体e的标准要素p的称谓文本,s
pans
函数是一个规范化的文本间相似度评估函数,本实施例用于评估要素名t
key
与标准要素的称谓文本t
p
之间的相似度。t(e)n是要素主体e的称谓文本,t(e)g是要素主体e的出现文本,s
engs
函数同样是一个规范化函数,用于度量要素主体出现文本与称谓文本的相似度。s
path
函数表示要素名t
key
与出现文本t(e)g之间的路径评分,其中[t
key

t(e)g]表示在第二结构树中以根节点为递归回溯方向所确定的从要素名到各节点回溯路径访问的访问节点,如果不存在路径s
path
则直接取值0。θ
pea
为预设的经验参数。通过公式可知,待关联主体e*与待对其标准要素p*由argmax e∈e,p∈pe求解出,即从所有可能的要素主体中找出一个要素主体以及从该要素主体的所有标准要素中找出一个标准要素使得公式值最大且满足不等式条件,将其作为要素信息的待关联主体和待对齐标准要素并进行关联对齐操作。
[0107]
在一个实施例中,步骤s201之前,还包括:对获取的文本进行文本预处理,且将预处理后的文本进行自然语言处理。
[0108]
具体的,预处理主要包括常规的文本预处理,比如清洗脏数据、繁简转换、去除停用词、词性还原等。清洗脏数据通过利用预设的规则、基于词表或其他现有任一种算法来实现,本实施例优选清洗的目标包括但不限于html标签、乱码字符、业务无关的字符性表情等。繁简转换则是将繁体文字转为简体文字的过程,繁简转换是否进行可以根据不同的业务目的决定是否使用。去除停用词则是利用给定停用词词表来去除文本中出现的停用词的过程。词型还原主要出现于对英文文本的处理过程中,由于语言特征,英文等语言中一个词存在多种形态,因此通过词型还原将不同形态规范到原型。自然语言处理(natural language processing,nlp)是指对预处理过后的文本进行一些基础性的语言处理操作,本实施例主要是一些基础性的自然语言处理,包括分词、词性标注和命名体识别三个过程。分词是对文本中的语句进行断句,讲一段文本切分为词的序列。本实施例在文本进入要素抽取处理之前通过预处理和基础nlp对文本进行预先的处理,能够减少文本中的噪音数据以
及便于后续基于词的分析,从而提高抽取的精准性。
[0109]
在一个实施例中,步骤s204之后,还包括:当要素信息中的要素名存在多个对应的要素值时,对要素名对应的多个要素值进行质量评估,得到要素值排序;根据要素值排序筛选要素名的最优要素值。
[0110]
具体的,质量评估是为要素对齐以及主体关联后的要素值进行信息质量评估的过程,要素抽取时可能会为一种要素抽出多个要素值,因此质量评估可以用于要素值排序,以达到择优而取的目的。本实施例优选采用“交叉熵”的方式实现质量评估,交叉熵越小的要素值的质量越高,要素值的交叉熵公式如下:
[0111][0112]
其中,q(e)p是待评估的要素值所对应的主体e的标准要素p的要素值关于字词的真实分布,可由数据集中统计得出;是待评估的要素值关于字词的分布,直接从要素值中统计得出;v
tral
是从要素值中获取的非重复字词集合。
[0113]
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0114]
在一个实施例中,如图4所示,提供一种要素抽取装置,包括:
[0115]
树结构形成模块401,用于识别待抽取文本的层次有序列表并形成层次有序列表树,基于层次有序列表树对待抽取文本进行块划分形成第一块结构树
[0116]
开放抽取模块402,用于开放抽取待抽取文本中无主体要素的要素信息并附着到第一块结构树上,得到第二块结构树。
[0117]
主体识别模块403,用于对第二块结构树中的节点进行主体识别,确定要素主体。
[0118]
对齐关联模块404,用于将无主体要素的要素信息要素主体关联并与要素主体的标准要素对齐。
[0119]
在一个实施例中,树结构形成模块401还用于对待抽取文本进行层次有序列表识别,输出待抽取文本的层次信息和序数信息;以待抽取文本为根节点,根据层次信息将序数信息划分为子节点或叶子节点,形成层次有序列表树;将层次有序列表树中的节点作为序数块,且以序数块对应的序数信息为切分符对待抽取文本进行片段切分,得到序数块的直属文本;在序数块的直属文本中识别非序数块;将非序数块作为对应序数块的子节点形成新的树,得到第一块结构树。
[0120]
在一个实施例中,树结构形成模块401还用于根据换行符和预设长度的连续空白字符将序数块的直属文本进行片段切分,得到子文本片段;对各子文本片段进行块主旨识别,确定块主旨文本片段;将块主旨子文本片段作为非序数块,且块主旨子文本片段的后续
片段为非序数块的直属文本。
[0121]
在一个实施例中,开放抽取模块402还用于锚定待抽取文本中出现分隔符的位置,得到锚定位置;基于锚定位置识别无主体要素的要素名及要素名对应的要素值,得到要素信息;确定要素信息来源文本所在的文本块,以文本块在第一块结构树中对应的节点为父节点创建要素信息节点,得到第二块结构树。
[0122]
在一个实施例中,开放抽取模块402还用于从锚定位置之前确定满足要求的第一位置,将第一位置到锚定位置之间的文本片段作为要素名;基于要素名,从锚定位置之后确定满足要求的第二位置,将锚定位置到第二位置之间的文本片段作为要素名的要素值。
[0123]
在一个实施例中,主体识别模块403还用于根据层次有序列表中相邻序数信息之间头尾样式的相似度、各序数信息头尾样式与动态主体表述的相似度以及各序数信息的字面样式计算层次有序列表作为动态主体序列的可能性分值;当根据可能性分值确定层次有序列表为动态主体序列时,将层次有序列表的各序数信息在第二块结构树中对应的节点作为动态主体;根据第二块结构树中非动态主体节点的节点文本与各静态主体的称谓文本的相似度,确定与各静态主体关联的非动态主体节点。
[0124]
在一个实施例中,对齐关联模块404还用于在第二结构树中以根节点为递归回溯方向确定从要素名到各节点回溯路径访问的访问节点,根据访问节点与要素名的相似度确定路径评分;根据要素名与标准要素的称谓文本的相似度、要素主体的称谓文本与出现文本的相似度以及路径评分,确定待关联要素主体和待对齐标准要素;将要素信息与所述待关联要素主体进行关联,并与待对齐标准要素进行对齐。
[0125]
在一个实施例中,要素抽取装置还包括预处理模块,用于对获取的文本进行文本预处理,且将预处理后的文本进行自然语言处理。
[0126]
在一个实施例中,要素抽取装置还包括筛选模块,用于当要素信息中的要素名存在多个对应的要素值时,对要素名对应的多个要素值进行质量评估,得到要素值排序;根据要素值排序筛选要素名的最优要素值。
[0127]
关于要素抽取装置的具体限定可以参见上文中对于要素抽取方法的限定,在此不再赘述。上述要素抽取装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个要素抽取方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。
[0128]
在一个实施例中,提供一种计算机设备,该计算机设备可以是服务器,包括处理器,存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种要素抽取方法。示例性的,计算
机程序可以被分割成一个或多个模块,一个或者多个模块被存储在存储器中,并由处理器执行以完成本发明。一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在计算机装置中的执行过程。
[0129]
所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
[0130]
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述计算机装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0131]
本领域技术人员可以理解,本实施例中所示出的计算机设备结构,仅仅是与本发明方案相关的部分结构,并不构成对本发明所应用于其上的计算机设备的限定,具体的计算机设备可以包括更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0132]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0133]
识别待抽取文本的层次有序列表并形成层次有序列表树,基于层次有序列表树对待抽取文本进行块划分形成第一块结构树
[0134]
开放抽取待抽取文本中无主体要素的要素信息并附着到第一块结构树上,得到第二块结构树;
[0135]
对第二块结构树中的节点进行主体识别,确定要素主体;
[0136]
将无主体要素的要素信息要素主体关联并与要素主体的标准要素对齐。
[0137]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对待抽取文本进行层次有序列表识别,输出待抽取文本的层次信息和序数信息;以待抽取文本为根节点,根据层次信息将序数信息划分为子节点或叶子节点,形成层次有序列表树;将层次有序列表树中的节点作为序数块,且以序数块对应的序数信息为切分符对待抽取文本进行片段切分,得到序数块的直属文本;在序数块的直属文本中识别非序数块;将非序数块作为对应序数块的子节点形成新的树,得到第一块结构树。
[0138]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据换行符和预设长度的连续空白字符将序数块的直属文本进行片段切分,得到子文本片段;对各子文本片段进行块主旨识别,确定块主旨文本片段;将块主旨子文本片段作为非序数块,且块主旨子文本片段的后续片段为非序数块的直属文本。
[0139]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:锚定待抽取文本中出现分隔符的位置,得到锚定位置;基于锚定位置识别无主体要素的要素名及要素名对应的要素值,得到要素信息;确定要素信息来源文本所在的文本块,以文本块在第一块结构树中对应的节点为父节点创建要素信息节点,得到第二块结构树。
[0140]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:从锚定位置之前确定满足要求的第一位置,将第一位置到锚定位置之间的文本片段作为要素名;基于要素名,从锚定位置之后确定满足要求的第二位置,将锚定位置到第二位置之间的文本片段作为要素名的要素值。
[0141]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据层次有序列表中相邻序数信息之间头尾样式的相似度、各序数信息头尾样式与动态主体表述的相似度以及各序数信息的字面样式计算层次有序列表作为动态主体序列的可能性分值;当根据可能性分值确定层次有序列表为动态主体序列时,将层次有序列表的各序数信息在第二块结构树中对应的节点作为动态主体;根据第二块结构树中非动态主体节点的节点文本与各静态主体的称谓文本的相似度,确定与各静态主体关联的非动态主体节点。
[0142]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在第二结构树中以根节点为递归回溯方向确定从要素名到各节点回溯路径访问的访问节点,根据访问节点与要素名的相似度确定路径评分;根据要素名与标准要素的称谓文本的相似度、要素主体的称谓文本与出现文本的相似度以及路径评分,确定待关联要素主体和待对齐标准要素;将要素信息与所述待关联要素主体进行关联,并与待对齐标准要素进行对齐。
[0143]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对获取的文本进行文本预处理,且将预处理后的文本进行自然语言处理。
[0144]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当要素信息中的要素名存在多个对应的要素值时,对要素名对应的多个要素值进行质量评估,得到要素值排序;根据要素值排序筛选要素名的最优要素值。
[0145]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0146]
识别待抽取文本的层次有序列表并形成层次有序列表树,基于层次有序列表树对待抽取文本进行块划分形成第一块结构树
[0147]
开放抽取待抽取文本中无主体要素的要素信息并附着到第一块结构树上,得到第二块结构树;
[0148]
对第二块结构树中的节点进行主体识别,确定要素主体;
[0149]
将无主体要素的要素信息要素主体关联并与要素主体的标准要素对齐。
[0150]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对待抽取文本进行层次有序列表识别,输出待抽取文本的层次信息和序数信息;以待抽取文本为根节点,根据层次信息将序数信息划分为子节点或叶子节点,形成层次有序列表树;将层次有序列表树中的节点作为序数块,且以序数块对应的序数信息为切分符对待抽取文本进行片段切分,得到序数块的直属文本;在序数块的直属文本中识别非序数块;将非序数块作为对应序数块的子节点形成新的树,得到第一块结构树。
[0151]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据换行符和预
设长度的连续空白字符将序数块的直属文本进行片段切分,得到子文本片段;对各子文本片段进行块主旨识别,确定块主旨文本片段;将块主旨子文本片段作为非序数块,且块主旨子文本片段的后续片段为非序数块的直属文本。
[0152]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:锚定待抽取文本中出现分隔符的位置,得到锚定位置;基于锚定位置识别无主体要素的要素名及要素名对应的要素值,得到要素信息;确定要素信息来源文本所在的文本块,以文本块在第一块结构树中对应的节点为父节点创建要素信息节点,得到第二块结构树。
[0153]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:从锚定位置之前确定满足要求的第一位置,将第一位置到锚定位置之间的文本片段作为要素名;基于要素名,从锚定位置之后确定满足要求的第二位置,将锚定位置到第二位置之间的文本片段作为要素名的要素值。
[0154]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据层次有序列表中相邻序数信息之间头尾样式的相似度、各序数信息头尾样式与动态主体表述的相似度以及各序数信息的字面样式计算层次有序列表作为动态主体序列的可能性分值;当根据可能性分值确定层次有序列表为动态主体序列时,将层次有序列表的各序数信息在第二块结构树中对应的节点作为动态主体;根据第二块结构树中非动态主体节点的节点文本与各静态主体的称谓文本的相似度,确定与各静态主体关联的非动态主体节点。
[0155]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在第二结构树中以根节点为递归回溯方向确定从要素名到各节点回溯路径访问的访问节点,根据访问节点与要素名的相似度确定路径评分;根据要素名与标准要素的称谓文本的相似度、要素主体的称谓文本与出现文本的相似度以及路径评分,确定待关联要素主体和待对齐标准要素;将要素信息与所述待关联要素主体进行关联,并与待对齐标准要素进行对齐。
[0156]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对获取的文本进行文本预处理,且将预处理后的文本进行自然语言处理。
[0157]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当要素信息中的要素名存在多个对应的要素值时,对要素名对应的多个要素值进行质量评估,得到要素值排序;根据要素值排序筛选要素名的最优要素值。
[0158]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
[0159]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0160]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1