一种文本数据的信息抽取方法及装置
技术领域
本发明涉及条件知识抽取技术,尤其涉及一种文本数据的信息抽取方法、装置及计算机可读存储介质。
背景技术
由于互联网拥有数量巨大的用户,使其成为目前可用的规模最大、内容最丰富的信息源。但是由于互联网数据缺乏语义相关的信息,使得这些丰富的数据资源仅为人类所理解,而机器或程序则无法自动理解数据的含义。虽然语义互联网理论为解决该问题提供了契机,但语义互联网远景尚未实现,其主要障碍仍然是对现有互联网数据的语义识别,尤其是对无结构的自然语言文档的语义识别。知识抽取研究如何根据给定本体从物寓意标注的信息中识别并抽取与本体匹配的事实知识。该技术既可以抽取出事实知识用于构建基于知识的服务,也能够为语义互联网的实现提供必要的语义内容。但是,在知识抽取体系中,如何构建一个大规模文本中的条件知识抽取系统成为了一个亟待解决的技术难题。
传统的知识抽取方法需要预先定义实体关系类型体系,针对预先定义好的每一类实体关系人工标注训练预料,然后利用机器学习的方法训练分类器进行新的关系实例识别和关系元组抽取。然而,预先定义一个全面实体关系类型体系是很困难的,并且人工构建大规模的语料库是及其耗时耗力的。所以,开放式知识抽取技术应运而生。开放式知识抽取技术使用实体对上下文中的一些词语来描述实体之间的语义关系,从而避免了构建关系类型的体系。
现有的开放式知识抽取中,大多数的关系是针对二元实体,同时也是不需要条件的。但是,现实生活中往往存在大量的条件式知识。换而言之,实体关系并不是无条件的,其中包含了对关系的限制条件。导致现有的开放式知识抽取技术无法准确的抽取条件式知识。
发明内容
有鉴于此,本发明实施例期望提供一种文本数据的信息抽取方法、装置及计算机可读存储介质,能够利用文本自身信息进行抽取,在少量的人工标注的前提下得到相对高质量的抽取结果,使抽取结果依赖原有的文本库特征,同时对模板设计合理的可信度计算。
为达到上述目的,本发明实施例提供了一种文本数据的信息抽取方法:
根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
基于字符词性标注抽取所述文本数据中的关系短语,生成短语种子模板;
将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
计算所述结构数据中短语种子模板的可信度,将可信度大于等于设定可信度阈值的短语种子模板输出。
其中,上述根据文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据,包括:
根据文本数据中字符的上下文字符数据,确定出所述文本数据中兼类词字符的词性,并标注所述兼类词字符的词性。
其中,上述抽取所述包含有字符词性标注的文本数据中的关系短语,生成短语种子模板,包括:
将所述文本数据中满足V|VP|VW*P语法关系式的短语确定为关系短语,其中,V=verb particle?adv?;其中,?表示条件运算符,verb particle表示动词小品词,adv表示副词;
W=(noun|adj|adv|pron|det);其中,|表示或运算,noun表示名词,adj表示形容词,adv表示副词,pron表示代词,det表示限定词;
P=(prep|particle|inf.marker);其中,prep表示介词,particle表示小品词,inf.marker表示不定词标注;
统计所述确定出的关系短语在所述文本数据中的数量,保留所述关系短语数量大于等于预设阈值的关系短语,滤除所述关系短语数量小于预设阈值的关系短语;
将所述保留的关系短语以及所述保留的关系短语上文和下文最近的两个名词短语组成三元组关系短语;
根据预设的权重模型对所述组成的三元组关系短语进行分类,确定出分类后的三元组关系短语;
根据预设的连词特征,对所述确分类后的三元组关系短语进行筛选,筛选出符合预设的连词特征的三元组关系短语,生成短语种子模板。
其中,上述将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据,包括:
对所述短语种子模板的每一个数据位进行递归匹配运算;其中,
当所述短语种子模板的数据位为普通数据位时,则将所述文本数据与短语种子模板进行匹配;
当所述短语种子模板的数据位为特殊数据位时,则根据所述特数据位的数据类型,枚举所述特殊数据位的每一个数据位,将所述特殊数据位的每一个数据位与所述文本数据进行匹配;
当匹配成功后,记录所述短语种子模板与所述文本数据中短语的对应关系。
其中,上述计算所述结构数据中短语种子模板的可信度,包括:
根据下述公式计算所述结构数据中短语种子模板的可信度:
Confidence(Pattern)=SeedMatch[Pattern]/log(1+CorpusMatch[Pattern]);
其中,Confidence(Pattern)表示可信度的数值,SeedMatch[Pattern]表示种子模板所对应的所有短语中匹配于该短语种子模板的短语的数量,CorpusMatch[Pattern]表示所述文本数据中匹配于该短语种子模板的短语的数量。
本发明实施例提供了一种文本数据的信息抽取装置,所述装置包括:确定模块,标注模块,生成模块,匹配模块,可信度计算模块,排序模块,输出模块,其中,
标注模块,用于根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
生成模块,用于抽取所述包含有字符词性标注的文本数据中的关系短语,生成短语种子模板;
匹配模块,用于将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
可信度计算模块,用于计算所述结构数据中短语种子模板的可信度;
输出模块,用于将可信度大于等于设定可信度阈值的短语种子模板输出。
其中,上述标注模块,用于根据文本数据中字符的上下文字符数据,确定出所述文本数据中兼类词字符的词性,并标注所述兼类词字符的词性,其中,所述兼类词字符的词性至少包括:名词、动词、代词、形容词、副词、数词、冠词、介词、连词、感叹词。
其中,上述生成模块,用于将所述文本数据中满足V|VP|VW*P语法关系式的短语确定为关系短语,其中,V=verb particle?adv?;其中,?表示条件运算符,verb particle表示动词小品词,adv表示副词;
W=(noun|adj|adv|pron|det);其中,|表示或运算,noun表示名词,adj表示形容词,adv表示副词,pron表示代词,det表示限定词;
P=(prep|particle|inf.marker);其中,prep表示介词,particle表示小品词,inf.marker表示不定词标注;
统计所述确定出的关系短语在所述文本数据中的数量,保留所述关系短语数量大于等于预设阈值的关系短语,滤除所述关系短语数量小于预设阈值的关系短语;
将所述保留的关系短语以及所述保留的关系短语上文和下文最近的两个名词短语组成三元组关系短语;
根据预设的权重模型对所述组成的三元组关系短语进行分类,确定出分类后的三元组关系短语;
根据预设的连词特征,对所述确分类后的三元组关系短语进行筛选,筛选出符合预设的连词特征的三元组关系短语,生成短语种子模板。
其中,上述匹配模块,用于对所述短语种子模板的每一个数据位进行递归匹配运算;其中,
当所述短语种子模板的数据位为普通数据位时,则将所述文本数据与短语种子模板进行匹配;
当所述短语种子模板的数据位为特殊数据位时,则根据所述特数据位的数据类型,枚举所述特殊数据位的每一个数据位,将所述特殊数据位的每一个数据位与所述文本数据进行匹配;
当匹配成功后,记录所述短语种子模板与所述文本数据中短语的对应关系。
其中,上述可信度计算模块,用于根据下述公式计算所述结构数据中短语种子模板的可信度:
Confidence(Pattern)=SeedMatch[Pattern]/log(1+CorpusMatch[Pattern]);
其中,Confidence(Pattern)表示可信度的数值,SeedMatch[Pattern]表示种子模板所对应的所有短语中匹配于该短语种子模板的短语的数量,CorpusMatch[Pattern]表示所述文本数据中匹配于该短语种子模板的短语的数量。
本发明实施例提供了一种电子设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行:
根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
基于字符词性标注抽取所述文本数据中的关系短语,生成短语种子模板;
将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
计算所述结构数据中短语种子模板的可信度,将可信度大于等于设定可信度阈值的短语种子模板输出。
本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现:
根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
基于字符词性标注抽取所述文本数据中的关系短语,生成短语种子模板;
将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
计算所述结构数据中短语种子模板的可信度,将可信度大于等于设定可信度阈值的短语种子模板输出。
本发明实施例提供的一种文本数据的信息抽取方法、装置及计算机可读存储介质,根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;基于字符词性标注抽取所述文本数据中的关系短语,生成短语种子模板;将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;计算所述结构数据中短语种子模板的可信度,将可信度大于等于设定可信度阈值的短语种子模板输出。如此,通过本发明实施例所提出的文本数据的信息抽取方法,在实现知识抽取与验证的过程中,几乎少有人工标注的工作。本发明实施例提供的方法仅仅基于知识本身来定义推理的方法,实现了针对大规模的自然语言文本中的条件性进行抽取和评价,不同于以往仅仅抽取实体关系的开放性信息抽取,不再把条件知识局限在特定的领域对话文本中;并针对条件知识,在非监督学习的情况下可以从大规模文本中自动学习可能的POS-Tag模板,从而自动抽取条件知识并进行评价,不同于以往通过人工标注进行的信息抽取工作;在选择可靠的模板结果中,提出了一种更有针对性的可信度评价。模板本身是从语料库中学习而来,用语料自身的统计结果计算模板的可信度是相对可靠的,不同于以往准确率和召回率的衡量标准。
附图说明
图1为本发明第一实施例文本数据的信息抽取方法的实现流程示意图;
图2为本发明第二实施例文本数据的信息抽取装置的结构示意图;
图3为本发明第三实施例从大规模文本中条件知识抽取方法流程图;
图4为本发明第三实施例中进行可信度计算时所需使用的二分图的示意图。
具体实施方式
为了能够更加详尽地了解本发明实施例的特点与技术内容,下面对本发明实施例的实现进行详细阐述。
实施例一
图1为本发明第一实施例文本数据的信息抽取方法的实现流程示意图,如图1所示,本发明实施例本发明实施例文本数据的信息抽取方法的实现流程包括:
步骤101:根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
在实际应用中,可以使用POS-Tag解析方法对对文本数据所包含的字符的词性进行标注,通过POS-Tag解析方法可以将将句子中兼类词的词性唯一地确定下来,即为每个词的词性加上标注,以确定该词所属的词法范畴,如名词、动词、代词或其他词性,并且可以为后续抽取关系短语的步骤中输入词性标注和名词语识别后的句子,具体地,根据文本数据中字符的上下文字符数据,确定出所述文本数据中兼类词字符的词性,并标注所述兼类词字符的词性,其中,所述兼类词字符的词性至少包括:名词、动词、代词、形容词、副词、数词、冠词、介词、连词、感叹词。例如,“In the summer of 2005the school board decided toclose the arch to auto traffic due to safety concerns despite opposition fromthe student body.”。通过美国宾西法尼亚大学POS-Tag Treebank标注解析上述语句为:“IN DT NN IN CD DT NN NN VBD TO V DT NN TO NN NN JJ TO NN NNS IN NN IN DT NNNN”。
步骤102:抽取所述包含有字符词性标注的文本数据中的关系短语,生成短语种子模板;
在实际应用中,为了选择可信的条件知识模板,可以从语料库自身出发生成一个具有高准确率的种子条件知识库。一方面,条件知识模板来自语料库自身,可准确的反映语料库的模板特点,提供可靠的模板;另一方面,可避免人工的标注,减少人力需求,提供了一种无监督学习的思路。因此,利用开放式信息抽取工具Reverb对文本信息进行三元组[实体1(Entity1,关系(Relation),实体2(Entity2)]的抽取,具体地,将所述文本数据中满足V|VP|VW*P语法关系式的短语确定为关系短语,其中,V=verb particle?adv?;其中,?表示条件运算符,verb particle表示动词小品词,adv表示副词;
W=(noun|adj|adv|pron|det);其中,|表示或运算,noun表示名词,adj表示形容词,adv表示副词,pron表示代词,det表示限定词;
P=(prep|particle|inf.marker);其中,prep表示介词,particle表示小品词,inf.marker表示不定词标注;
统计所述确定出的关系短语在所述文本数据中的数量,保留所述关系短语数量大于等于预设阈值的关系短语,滤除所述关系短语数量小于预设阈值的关系短语;
将所述保留的关系短语以及所述保留的关系短语上文和下文最近的两个名词短语组成三元组关系短语;
根据预设的权重模型对所述组成的三元组关系短语进行分类,确定出分类后的三元组关系短语;
根据预设的连词特征,对所述确分类后的三元组关系短语进行筛选,筛选出符合预设的连词特征的三元组关系短语,生成短语种子模板。
其中,可通过上述语法关系式,可以确定出句子“Hudson was born inHampstead,which is suburb of London”中的两个候选短语“was born in”和“is asuburb of”。
统计利用上述语法关系式确定出的候选短语在大规模文本数据中出现的三元组数据;当三元组短语出现的次数少于预设的阈值时,将该短语丢弃,将出现的次数大于等于预设的阈值的短语保留。
对上述保留的短语进行三元组识别:
(1)找出短语上文和下文最近的两个名词短语,构成一个三元组。
例如:句子“Hudson was born in Hampstead,which is suburb of London”中可以识别出有两个三元组(Hudson,was born in,Hampstead)和(Hampstead,is suburb of,London)。
(2)利用现有的加权模型对识别出的三元组进行分类。
在实际应用中,加权模型可以使用现有的加权评分模型或方法,例如熵值法、离差及均方差法、多目标规划法等,本发明实施例对此不做限定。
在实际应用中,对于开放式的信息抽取中往往存在关系并不是无条件的,而在文本描述中包含了对关系的限制条件;例如:在PubMed医学语料库中,很多的症状和征兆往往是基于一定的医学条件或者外在影响所导致的。因此,对于上述状况,本发明实施例在Reverb抽取的基础上,选择了包含有“if,unless,even if,until,as long as,in case,only if,after,when”等连词作为条件特征,对短语种子模板进行筛选。而对于条件语句,其并非完全是显性的表示,也有部分是隐式的条件表示,例如:句子“[Last year]condition,[byu]entity1[defeated]relation[tcu]entity[in force worth on their way to the2006title]condition.”中并无明显的特征连词,但显然存在有对关系的限定以及描述。因此,短语种子模板库虽然是整个文本数据中较小的一部分,但是可以覆盖大量可能的结果。在维基百科的语料中,找到了7270个种子语句模板,合并所有的模板之后,可得到5903种不同的模板,过滤只出现一次的的模板之后剩余116个模板,其中,出现次数最多的模板是|Entity1|Relation|Entity2|Condition|的结构,达到了420次,而对于出现多于一次的模板|Entity1|Relation|Entity2|和|CC|VBD|RB|Condition|,仅仅出现过两次,通过分析可以确定是,短语模板的分布情况是符合长尾分布的。在通过对于Entity1,Entity2和Relation进行POS-Tag统计后,也得到了类似的结果,最多的Entity1对应的POS-Tag是NNP,出现了1257次,Entity2也是NNP出现了842次,而Relation则是VBD|VBN|IN出现了1281次。最长的Entity1是长度为8的DT|JJ|NN|IN|DT|NNP|NNP|NNP共出现4次,最长的Entity2是长度为8的DT|JJ|NN|IN|DT|NNP|IN|NNP出现两次,最长的Relation是长度为7的VBD|RB|RB|VB|DT|NN|IN等,都出现过两次,最长的模板是长度为11的Entity1|Relation|Entity2|CC|VBD|VBN|IN|NNP|NNP|Condition|出现过两次。可以确定的是,越长越复杂的短语模板出现的次数越少,其短语模板本身也呈现出少量高频模版和大量的低频复杂模板的长尾特点。
通过上述分析,对于Entity1、Entity2和Relation而言,其结构相对固定,表达的内容基本类似,因此,可以假设最后的结构就和之前的某一些结果相同。但是,对于Condition而言却是不一样的,Condition结构灵活而且种子语料库中是非常有限的结构,因此,本发明实施对条件特征的限制仅仅是不包含标点符号的连续内容。
步骤103:将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
其中,对所述短语种子模板的每一个数据位进行递归匹配运算;其中,
当所述短语种子模板的数据位为普通数据位时,则将所述文本数据与短语种子模板进行匹配;
当所述短语种子模板的数据位为特殊数据位时,则根据所述特数据位的数据类型,枚举所述特殊数据位的每一个数据位,将所述特殊数据位的每一个数据位与所述文本数据进行匹配;
当匹配成功后,记录所述短语种子模板与所述文本数据中短语的对应关系。
在获得短语种子模板的分布,以及Entity1、Entity2和Relation的分布的前提下,需考虑如何进行匹配和挑选最合适的匹配。因此,本发明实施例提出了回溯试错模版匹配算法来进行匹配,对整个模板和各个模块的模板进行分层匹配,包括:
(1)在得到短语种子模板后,需将文本信息替换为POS-Tag结构,才能实现种子语料与文本信息的匹配。在步骤302的POS-Tag解析和Reverb抽取的过程中,还可以把文本信息替换成POS-Tag结构。例如,将语句“[In the summer of 2005]condition,[the schoolboard]entity1[decided to close]relation[the arch to auto traffic]entity2[dueto safety concerns despite opposition from the student body]condition.”转换为“[IN DT NN IN CD]condition,[DT NN NN]entity1[VBD TO VB]relation[DT NN TO NN]entity2[NN JJ TO NN NNS IN NN IN DT NN NN]condition.”POS-Tag结构化的语句。
(2)在匹配算法过程中,对所有的模板进行枚举。对于每一种模板,递归处理模板的每一位,如果是普通数据位的POS-Tag,则直接进行比较匹配;如果是特殊数据位,则对先该特殊数据位进行枚举,再进行递归处理。例如,Entity1可以枚举是哪一种模板,如果是Condition则枚举其长度。枚举之后递归处理之后的部分,如果比较完了就返回结果,有不符合就返回错误,完全匹配则返回正确。其中,在合并结果时可以用一个字典数据包合并处理所有的匹配结果,只要能够得到对应匹配的位置即可。对于所有的匹配成功的模板,记录匹配的结果。
对于一个模板的匹配过程中往往会出现这样的情况,例如,经常会匹配到一个单独的a,the,that这样的指示代词,而不是完整的一个Entity,经过观察发现,在枚举模块Entity1、Entity2的结构时,因为长度的选择是从小到大的,因此,容易选择比较小的作为答案,导致结构不完整。因此,本发明实施例需从大到小枚举了Entity的长度来确定最后的结构。
步骤104:计算所述结构数据中短语种子模板的可信度,根据计算出的短语种子模板的可信度的数值对所述结构数据中短语种子模板进行排序;
在实际应用中,基于步骤103可以获得由关系短语和短语种子模板的二分图,由于所有的句子信息和模板都进行了匹配,因此,句子信息会连向所有能够匹配的模板而所有的模板会被连向所有能匹配的句子信息。此时,需对每个句子信息的所有匹配进行排序。
具体地,根据下述公式计算所述结构数据中短语种子模板的可信度:
Confidence(Pattern)=SeedMatch[Pattern]/log(1+CorpusMatch[Pattern]);
其中,Confidence(Pattern)表示可信度的数值,SeedMatch[Pattern]表示种子模板所对应的所有短语中匹配于该短语种子模板的短语的数量,CorpusMatch[Pattern]表示所述文本数据中匹配于该短语种子模板的短语的数量。
步骤105:根据排序结果确定出可信度阈值,输出可信度大于等于所述可信度阈值的短语种子模板。
在实际应用中,如果在种子语料库中存在大量的成功匹配,即说明这个模板是可靠的,在整个语料库中匹配的越多,说明这个模板具有一般性。因此,上述可信度计算公式设计了分母来惩罚过于宽泛的模板。本发明实施例所提出的计算方法的可靠性在于:模板本身都是从语料库当中学习而来,用语料库自身的统计结果来计算模板的可信度是相对可靠的。
基于图1所述的方法,本发明实施例所涉及的通过POS-Tag解析文本数据信息,并利用OpenIE工具筛选出具有条件知识的种子文本;然后,在文本信息解析后,将文本数据替换成POS-Tag结构,并与种子模板进行匹配,选出可信度最佳的模板;最后,抽取文本中对应的结构化信息方法,利用了文本自身信息进行抽取,使确定出的模板原有的文本库特征有较高匹配度,并设计出了合理的模板可信度计算。相比于现有技术,本发明实施例所提出的信息抽取方法具有以下优点:
1、无监督抽取技术。在实现知识抽取与验证的过程中,几乎少有人工标注的工作。本发明仅仅基于知识本身来定义推理的方法,通过产生一些具有高可信度的种子生成模板以及匹配学习出其可信程度。
2、泛化能力强。不同领域的特征不尽相同,较难使用手工生成的模板概括可能存在的抽取类型,也较难使用预先训练好的抽取模板进行抽取。而本发明主要依赖于原有的文本库特征,能够在不同的大规模文本库中进行迁移。
实施例二
图2为本发明第二实施例文本数据的信息抽取装置的结构示意图,如图2所示,本发明实施例文本数据的信息抽取装置包括:标注模块201,生成模块202,匹配模块203,可信度计算模块204,输出模块205,其中,
标注模块201,用于根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
生成模块202,用于抽取所述包含有字符词性标注的文本数据中的关系短语,生成短语种子模板;
匹配模块203,用于将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
可信度计算模块204,用于计算所述结构数据中短语种子模板的可信度,根据计算出的短语种子模板的可信度的数值对所述结构数据中短语种子模板进行排序;
输出模块205,根据排序结果确定出可信度阈值,输出可信度大于等于所述可信度阈值的短语种子模板。
其中,所述标注模块201,用于根据文本数据中字符的上下文字符数据,确定出所述文本数据中兼类词字符的词性,并标注所述兼类词字符的词性,其中,所述兼类词字符的词性至少包括:名词、动词、代词、形容词、副词、数词、冠词、介词、连词、感叹词。
其中,所述生成模块202,用于将所述文本数据中满足V|VP|VW*P语法关系式的短语确定为关系短语,其中,V=verb particle?adv?;其中,?表示条件运算符,verbparticle表示动词小品词,adv表示副词;
W=(noun|adj|adv|pron|det);其中,|表示或运算,noun表示名词,adj表示形容词,adv表示副词,pron表示代词,det表示限定词;
P=(prep|particle|inf.marker);其中,prep表示介词,particle表示小品词,inf.marker表示不定词标注;
统计所述确定出的关系短语在所述文本数据中的数量,保留所述关系短语数量大于等于预设阈值的关系短语,滤除所述关系短语数量小于预设阈值的关系短语;
将所述保留的关系短语以及所述保留的关系短语上文和下文最近的两个名词短语组成三元组关系短语;
根据预设的权重模型对所述组成的三元组关系短语进行分类,确定出分类后的三元组关系短语;
根据预设的连词特征,对所述确分类后的三元组关系短语进行筛选,筛选出符合预设的连词特征的三元组关系短语,生成短语种子模板。
其中,所述匹配模块203,用于对所述短语种子模板的每一个数据位进行递归匹配运算;其中,
当所述短语种子模板的数据位为普通数据位时,则将所述文本数据与短语种子模板进行匹配;
当所述短语种子模板的数据位为特殊数据位时,则根据所述特殊数据位的数据类型,枚举所述特殊数据位的每一个数据位,将所述特殊数据位的每一个数据位与所述文本数据进行匹配;
当匹配成功后,记录所述短语种子模板与所述文本数据中短语的对应关系。
其中,所述可信度计算模块204,用于根据下述公式计算所述结构数据中短语种子模板的可信度:
Confidence(Pattern)=SeedMatch[Pattern]/log(1+CorpusMatch[Pattern]);
其中,Confidence(Pattern)表示可信度的数值,SeedMatch[Pattern]表示种子模板所对应的所有短语中匹配于该短语种子模板的短语的数量,CorpusMatch[Pattern]表示所述文本数据中匹配于该短语种子模板的短语的数量。
在图4的文本数据的信息抽取装置的结构中,数据准备用于文本信息的收集阶段,例如,维基百科和美国医学PubMed的语料库;数据处理接口用于噪声数据的清洗;结构化数据展示结构用于输出抽取的文本信息的接口;结果的读取可以采用基于文本文档方式和知识图谱方式显示数据。
下面对本发明实施例文本数据的信息抽取装置的功能实现进行详细阐述。
本发明实施例文本数据的信息抽取的电子设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行:
根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
抽取所述包含有字符词性标注的文本数据中的关系短语,生成短语种子模板;
将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
计算所述结构数据中短语种子模板的可信度,根据计算出的短语种子模板的可信度的数值对所述结构数据中短语种子模板进行排序;
根据排序结果确定出可信度阈值,输出可信度大于等于所述可信度阈值的短语种子模板。
本发明实施例基于文本数据的信息抽取装置的计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现:
根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;
抽取所述包含有字符词性标注的文本数据中的关系短语,生成短语种子模板;
将所述包含有字符词性标注的文本数据与所述短语种子模板进行匹配,确定出文本数据中与所述短语种子模板匹配的短语,生成包含有所述匹配的短语与所述短语种子模板对应关系的结构数据;
计算所述结构数据中短语种子模板的可信度,根据计算出的短语种子模板的可信度的数值对所述结构数据中短语种子模板进行排序;
根据排序结果确定出可信度阈值,输出可信度大于等于所述可信度阈值的短语种子模板。
需要说明的是,上述标注模块201,生成模块202,匹配模块203,可信度计算模块204,输出模块205的功能实现可具体参考本发明实施例一中的关于文本数据的信息抽取方法,本发明实施例中不再赘述。
上述标注模块201,生成模块202,匹配模块203,可信度计算模块204,输出模块205可以由任何类型的易失性或非易失性存储设备、或者它们的组合来实现。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,ProgrammableRead-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically ErasableProgrammable Read-Only Memory)、磁性随机存取存储器(FRAM,Ferromagnetic RandomAccess Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,StaticRandom Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static RandomAccess Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic RandomAccess Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced SynchronousDynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLinkDynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct RambusRandom Access Memory)。本发明实施例描述的标注模块201,生成模块202,匹配模块203,可信度计算模块204,输出模块205旨在包括但不限于这些和任意其它适合类型的存储器。
在示例性实施例中,所述标注模块201,生成模块202,匹配模块203,可信度计算模块204,输出模块205可以被一个或多个应用专用集成电路(ASIC,Application SpecificIntegrated Circuit)、数字信号处理(DSP,Digital Signal Processing)、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。
下面以从大规模文本中条件知识抽取方法为例,对本发明实施例所提出的文本数据的信息抽取方法作进一步详细阐述。
实施例三
图3为本发明第三实施例从大规模文本中条件知识抽取方法流程图,如图3所示,本发明实施例从大规模文本中条件知识抽取方法包括以下步骤:
步骤301:对大规模文本数据进行POS-Tag解析;
在实际应用中,POS-Tag解析的目的是通过词语的上下文将句子中兼类词的词性唯一地确定下来,即为每个词的词性加上标注,以确定该词所属的词法范畴,如名词、动词、代词或其他词性。例如,“In the summer of 2005the school board decided to closethe arch to auto traffic due to safety concerns despite opposition from thestudent body.”。通过美国宾西法尼亚大学POS-Tag Treebank标注解析上述语句确定出“IN DT NN IN CD DT NN NN VBD TO V DT NN TO NN NN JJ TO NN NNS IN NN IN DT NNNN”。因此,POS-Tag解析可以为后续步骤Reverb输入词性标注和名词语识别后的句子。
步骤302:对POS-Tag解析后的大规模文本数据进行Reverb抽取,确定出短语种子模块;
在实际应用中,为了选择可信的条件知识模板,可以从语料库自身出发生成一个具有高准确率的种子条件知识库。一方面,条件知识模板来自语料库自身,可准确的反映语料库的模板特点,提供可靠的模板;另一方面,可避免人工的标注,减少人力需求,提供了一种无监督学习的思路。因此,利用开放式信息抽取工具Reverb对文本信息进行三元组(实体1,关系,实体2)的抽取,具体地,
1、依次使用两种限制方法识别文本数据中的关系短语:
(1)语法限制:将所述文本数据中满足V|VP|VW*P语法关系式的短语确定为关系短语,其中,V=verb particle?adv?;其中,?表示条件运算符,verb particle表示动词小品词,adv表示副词;
W=(noun|adj|adv|pron|det);其中,|表示或运算,noun表示名词,adj表示形容词,adv表示副词,pron表示代词,det表示限定词;
P=(prep|particle|inf.marker);其中,prep表示介词,particle表示小品词,inf.marker表示不定词标注;
例如:可通过上述语法关系式,可以确定出句子“Hudson was born inHampstead,which is suburb of London”中的两个候选短语“was born in”和“is asuburb of”。
(2)词汇限制:统计利用上述(1)中的语法关系式确定出的候选短语在大规模文本数据中出现的三元组数据;当三元组短语出现的次数少于预设的阈值时,将该短语丢弃,将出现的次数大于等于预设的阈值的短语保留。
2、对上述(2)中保留的短语进行三元组识别:
(1)找出短语上文和下文最近的两个名词短语,构成一个三元组。
例如:句子“Hudson was born in Hampstead,which is suburb of London”中可以识别出有两个三元组(Hudson,was born in,Hampstead)和(Hampstead,is suburb of,London)。
(2)利用现有的加权模型对识别出的三元组进行分类。
在实际应用中,加权模型可以使用现有的加权评分模型或方法,例如熵值法、离差及均方差法、多目标规划法等,本发明实施例对此不做限定。
步骤303:对短语种子模板进行条件特征筛选;
在实际应用中,对于开放式的信息抽取中往往存在关系并不是无条件的,而在文本描述中包含了对关系的限制条件;例如:在PubMed医学语料库中,很多的症状和征兆往往是基于一定的医学条件或者外在影响所导致的。因此,对于上述状况,本发明实施例在Reverb抽取的基础上,选择了包含有“if,unless,even if,until,as long as,in case,only if,after,when”等连词作为条件特征,对短语种子模板进行筛选。而对于条件语句,其并非完全是显性的表示,也有部分是隐式的条件表示,例如:句子“[Last year]condition,[byu]entity1[defeated]relation[tcu]entity[in force worth on their way to the2006title]condition.”中并无明显的特征连词,但显然存在有对关系的限定以及描述。因此,短语种子模板库虽然是整个文本数据中较小的一部分,但是可以覆盖大量可能的结果。在维基百科的语料中,找到了7270个种子语句模板,合并所有的模板之后,可得到5903种不同的模板,过滤只出现一次的的模板之后剩余116个模板,其中,出现次数最多的模板是|Entity1|Relation|Entity2|Condition|的结构,达到了420次,而对于出现多于一次的模板|Entity1|Relation|Entity2|和|CC|VBD|RB|Condition|,仅仅出现过两次,通过分析可以确定是,短语模板的分布情况是符合长尾分布的。在通过对于Entity1,Entity2和Relation进行POS-Tag统计后,也得到了类似的结果,最多的Entity1对应的POS-Tag是NNP,出现了1257次,Entity2也是NNP出现了842次,而Relation则是VBD|VBN|IN出现了1281次。最长的Entity1是长度为8的DT|JJ|NN|IN|DT|NNP|NNP|NNP共出现4次,最长的Entity2是长度为8的DT|JJ|NN|IN|DT|NNP|IN|NNP出现两次,最长的Relation是长度为7的VBD|RB|RB|VB|DT|NN|IN等,都出现过两次,最长的模板是长度为11的Entity1|Relation|Entity2|CC|VBD|VBN|IN|NNP|NNP|Condition|出现过两次。可以确定的是,越长越复杂的短语模板出现的次数越少,其短语模板本身也呈现出少量高频模版和大量的低频复杂模板的长尾特点。
通过上述分析,对于Entity1、Entity2和Relation而言,其结构相对固定,表达的内容基本类似,因此,可以假设最后的结构就和之前的某一些结果相同。但是,对于Condition而言却是不一样的,Condition结构灵活而且种子语料库中是非常有限的结构,因此,本发明实施对条件特征的限制仅仅是不包含标点符号的连续内容。
步骤304:对筛选后的短语种子模板进行匹配,确定出匹配成功的短语种子模板;
在获得短语种子模板的分布,以及Entity1、Entity2和Relation的分布的前提下,需考虑如何进行匹配和挑选最合适的匹配。因此,本发明实施例提出了回溯试错模版匹配算法来进行匹配,对整个模板和各个模块的模板进行分层匹配,包括:
(1)在得到短语种子模板后,需将文本信息替换为POS-Tag结构,才能实现种子语料与文本信息的匹配。在步骤302的POS-Tag解析和Reverb抽取的过程中,还可以把文本信息替换成POS-Tag结构。例如,将语句“[In the summer of 2005]condition,[the schoolboard]entity1[decided to close]relation[the arch to auto traffic]entity2[dueto safety concerns despite opposition from the student body]condition.”转换为“[IN DT NN IN CD]condition,[DT NN NN]entity1[VBD TO VB]relation[DT NN TO NN]entity2[NN JJ TO NN NNS IN NN IN DT NN NN]condition.”POS-Tag结构化的语句。
(2)在匹配算法过程中,对所有的模板进行枚举。对于每一种模板,递归处理模板的每一位,如果是普通数据位的POS-Tag,则直接进行比较匹配;如果是特殊数据位,则对先该特殊数据位进行枚举,再进行递归处理。例如,Entity1可以枚举是哪一种模板,如果是Condition则枚举其长度。枚举之后递归处理之后的部分,如果比较完了就返回结果,有不符合就返回错误,完全匹配则返回正确。其中,在合并结果时可以用一个字典数据包合并处理所有的匹配结果,只要能够得到对应匹配的位置即可。对于所有的匹配成功的模板,记录匹配的结果。
对于一个模板的匹配过程中往往会出现这样的情况,例如,经常会匹配到一个单独的a,the,that这样的指示代词,而不是完整的一个Entity,经过观察发现,在枚举模块Entity1、Entity2的结构时,因为长度的选择是从小到大的,因此,容易选择比较小的作为答案,导致结构不完整。因此,本发明实施例需从大到小枚举了Entity的长度来确定最后的结构。
步骤305:对所述匹配成功的短语种子模板进行可信度排序,选择可信度最高的短语种子模板。
在实际应用中,基于步骤304中对模板进行匹配得到的是一张二分图,如图4所示,所述二分图由所有句子S和短语种子模板P构成的二分图,由于所有的句子和模板都进行了匹配,因此,句子信息会连向所有能够匹配的模板而所有的模板会被连向所有能匹配的句子信息。此时,需对每个句子信息的所有匹配进行排序。因此,本发明实施例提出了一个短语种子模板可信度打分方法,用来筛选最终的抽取方案。
由于本发明实施例所提出的方法是基于无监督学习,并且没有人工标注的。因此,可以获得的信息是匹配的情况以及种子库中所有模板的分布。因此,利用图4的二分图上的点度对可信度进行计算,公式如下:
Confidence(Pattern)=SeedMatch[Pattern]/log(1+CorpusMatch[Pattern]);
其中,Confidence(Pattern)表示可信度的数值,SeedMatch[Pattern]表示种子语料库中有多少的句子匹配该模板,CorpusMatch[Pattern]表示整个语料库中有多少句子匹配该模板。
对于上述计算公式,如果在种子语料库中存在大量的成功匹配,即说明这个模板是可靠的,在整个语料库中匹配的越多,说明这个模板具有一般性。因此,上述可信度计算公式设计了分母来惩罚过于宽泛的模板。同时,本发明实施例所提出的计算方法的可靠性在于:模板本身都是从语料库当中学习而来,用语料库自身的统计结果来计算模板的可信度是相对可靠的。
综上所述,本发明实施例所提出的文本数据信息的抽取方法、装置及计算机可读存储介质,根据获取的文本数据中字符的上下文字符数据,对文本数据所包含的字符的词性进行标注,确定出包含有字符词性标注的文本数据;抽取所述包含有字符词性标注的文本数据中的关系短语,生成短语种子模板;计算所述结构数据中短语种子模板的可信度,根据计算出的短语种子模板的可信度的数值对所述结构数据中短语种子模板进行排序;根据排序结果确定出可信度阈值,输出可信度大于等于所述可信度阈值的短语种子模板。如此,实现了针对大规模的自然语言文本中的条件性进行抽取和评价,不同于以往仅仅抽取实体关系的开放性信息抽取,不再把条件知识局限在特定的领域对话文本中;并针对条件知识,在非监督学习的情况下可以从大规模文本中自动学习可能的POS-Tag模板,从而自动抽取条件知识并进行评价,不同于以往通过人工标注进行的信息抽取工作;在选择可靠的模板结果中,提出了一种更有针对性的可信度评价。模板本身是从语料库中学习而来,用语料自身的统计结果计算模板的可信度是相对可靠的,不同于以往准确率和召回率的衡量标准。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。