问答系统的测试数据处理方法、装置及终端与流程

文档序号:18545827发布日期:2019-08-27 21:38阅读:175来源:国知局
问答系统的测试数据处理方法、装置及终端与流程

本发明涉及数据处理技术领域,尤其涉及一种问答系统的测试数据处理方法、装置及终端。



背景技术:

随着智能问答技术的发展,越来越多的平台(例如,QQ、Skype、电商客服系统、MSN平台、微信平台、短消息服务平台等)都在采用智能问答系统。智能问答系统可以基于用户的问题从知识库输出相对应的答案。

为了保证输出答案的准确性,现有技术一般是枚举足够多的测试问对智能问答系统进行测试;或者,通过人工去写语义规则来捕捉对于同一答案的足够多的问法。

但是,通过枚举足够多的测试问的方式耗时耗力;采用人工去写语义规则的方式对写语义规则的人(通常是知识建设人员)有比较高的要求,例如,需要了解语义规则如何编写、有哪些语法符号、词类名会是什么、相似度计算逻辑是什么等;而且不同的知识建设人员对语义规则的理解和写法可能会有偏差。上述两种方式均会导致测试问差异性大,重复性大,进而影响对知识库测试的准确性。



技术实现要素:

本发明解决的技术问题是如何优化问答系统的测试数据,进而提高对知识库测试的准确性。

为解决上述技术问题,本发明实施例提供一种问答系统的测试数据处理方法,问答系统的测试数据处理方法包括:

接收待测试问答系统的测试数据,每一测试数据包括测试问和其对应的期待问题,其中,所述待测试问答系统包括知识库,所述知识库中包括所述期待问题;对于每一测试问,生成对应的语义表达式,所述语义表达式用以表征所述测试问的语义;根据不同测试问的语义表达式之间的比较结果,对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。

可选的,所述对于每一测试问,生成对应的语义表达式包括:对所述每一测试问进行分词处理,以得到多个词;分别对所述多个词中的每个词进行词性标注处理,以得到所述每个词的词性信息;根据所述词性信息对所述多个词进行过滤处理,保留词性信息为预设词性的词;判断过滤保留的每个词所属的词类,所述语义表达式包括所述过滤保留的每个词的词类,其中,每一词类包括多个词语。

可选的,采用以下方式确定不同测试问的语义表达式之间的比较结果:计算所述不同测试问的语义表达式的语义相似度;根据所述语义相似度确定所述比较结果。

可选的,所述对于每一测试问,生成对应的语义表达式还包括:在所述多个词包含预设重点词时,对所述预设重点词所属的词类增加权重标注;其中,所述词类包括初始权重,在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在权重标注,则在所述初始权重基础上的增加所述词类的语义权重。

可选的,所述对于每一测试问,生成对应的语义表达式还包括:在所述多个词包含有序词语组合时,对所述有序词语组合所属的多个词类增加有序标注;其中,在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在有序标注,则根据所述有序标注指示的顺序计算所述语义相似度。

可选的,所述根据所述词性信息对所述多个词进行过滤处理时,还保留权重大于设定值的词。

可选的,所述测试数据处理方法还包括:对所述权重大于设定值的词所属的词类增加疑问标注;其中,在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在疑问标注,则将所述语义表达式展开成为包含所述词类和不包含所述词类的两个子表达式。

可选的,所述根据所述语义相似度确定所述比较结果包括:当所述语义相似度达到设定阈值时,则确定所述比较结果为所述不同测试问一致,否则确定所述比较结果为所述不同测试问不一致。

可选的,所述根据所述语义表达式的比较结果对所述测试问进行处理包括:如果对应同一期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,则将所述不同测试问删减为一个测试问。

可选的,所述根据所述语义表达式的比较结果对所述测试问对应的期待问题进行处理包括:如果对应不同期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,则发送提示信息,以提示所述不同期待问题是语义近似的重复期待问题。

可选的,所述知识库包括多个知识点,每一知识点包括标准问和所述标准问对应的扩展问,所述不同期待问题均为所述知识库中的不同标准问。

可选的,所述发送提示信息的同时,还包括:提示用户选择所述知识库中的所述不同标准问对应的知识点中一个知识点,将所述知识库中的所述不同标准问以及所述不同标准问对应的扩展问合并至选中的知识点,并提示用户将所述选中的知识点中的标准问之外的其他标准问作为所述选中的知识点的扩展问。

可选的,所述测试数据处理方法还包括:将所述语义表达式、所述测试问及其对应的期待问题进行存储,以用于在所述词类包括的所述多个词发生变化时,重新生成所述语义表达式。

可选的,所述预设词性包括名词、动词、副词和预设重点疑问词的一种或多种。

为解决上述技术问题,本发明实施例还公开了一种问答系统的测试数据处理装置,问答系统的测试数据处理装置包括:

接收模块,用以接收待测试问答系统的测试数据,每一测试数据包括测试问和其对应的期待问题,其中,所述待测试问答系统包括知识库,所述知识库中包括所述期待问题;语义表达式生成模块,用以对于每一测试问,生成对应的语义表达式,所述语义表达式用以表征所述测试问的语义;处理模块,用以根据不同测试问的语义表达式之间的比较结果,对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。

可选的,所述语义表达式生成模块包括:分词单元,用以对所述每一测试问进行分词处理,以得到多个词;词性标注单元,用以分别对所述多个词中的每个词进行词性标注处理,以得到所述每个词的词性信息;过滤单元,用以根据所述词性信息对所述多个词进行过滤处理,保留词性信息为预设词性的词;词类判断单元,用以判断过滤保留的每个词所属的词类,所述语义表达式包括所述过滤保留的每个词的词类,其中,每一词类包括多个词语。

可选的,所述处理模块包括:相似度计算单元,用以计算所述不同测试问的语义表达式的语义相似度;比较结果确定单元,用以根据所述语义相似度确定所述比较结果。

可选的,所述语义表达式生成模块还包括:权重标注增加单元,用以在所述多个词包含预设重点词时,对所述预设重点词所属的词类增加权重标注;其中,所述词类包括初始权重,所述相似度计算单元在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在权重标注,则在所述初始权重基础上的增加所述词类的语义权重。

可选的,所述语义表达式生成模块还包括:有序标注增加单元,用以在所述多个词包含有序词语组合时,对所述有序词语组合所属的多个词类增加有序标注;其中,所述相似度计算单元在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在有序标注,则所述相似度计算单元根据所述有序标注指示的顺序计算所述语义相似度。

可选的,所述过滤单元根据所述词性信息对所述多个词进行过滤处理时,还保留权重大于设定值的词。

可选的,所述语义表达式生成模块还包括:疑问标注增加单元,用以对所述权重大于设定值的词所属的词类增加疑问标注;其中,所述相似度计算单元在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在疑问标注,则将所述语义表达式展开成为包含所述词类和不包含所述词类的两个子表达式。

可选的,所述比较结果确定单元在所述语义相似度达到设定阈值时,确定所述比较结果为所述不同测试问一致,否则确定所述比较结果为所述不同测试问不一致。

可选的,所述处理模块包括:第一处理单元,用以在对应同一期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致时,则将所述不同测试问删减为一个测试问。

可选的,所述处理模块包括:第二处理单元,用以在对应不同期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致时,则发送提示信息,以提示所述不同期待问题是语义近似的重复期待问题。

可选的,所述知识库包括多个知识点,每一知识点包括标准问和所述标准问对应的扩展问,所述不同期待问题均为所述知识库中的不同标准问。

可选的,所述处理模块包括:提示单元,用以提示用户选择所述知识库中的所述不同标准问对应的知识点中一个知识点,将所述知识库中的所述不同标准问以及所述不同标准问对应的扩展问合并至选中的知识点,并提示用户将所述选中的知识点中的标准问之外的其他标准问作为所述选中的知识点的扩展问。

可选的,所述测试数据处理装置还包括:存储模块,用以将所述语义表达式、所述测试问及其对应的期待问题进行存储,以用于在所述词类包括的所述多个词发生变化时,重新生成所述语义表达式。

可选的,所述预设词性包括名词、动词、副词和预设重点疑问词的一种或多种。

为解决上述技术问题,本发明实施例还公开了一种终端,所述终端包括所述问答系统的测试数据处理装置。

与现有技术相比,本发明实施例的技术方案具有以下有益效果:

本发明技术方案接收待测试问答系统的测试数据,每一测试数据包括测试问和其对应的期待问题,其中,所述待测试问答系统包括知识库,所述知识库中包括所述期待问题;对于每一测试问,生成对应的语义表达式,所述语义表达式用以表征所述测试问的语义;根据不同测试问的语义表达式之间的比较结果,对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。由于在智能问答系统的知识库建设初期,提供了期待问题、标准答案以及对应的多个测试问,因此本发明技术方案通过对接收到的测试问生成对应的语义表达式,并根据不同测试问的语义表达式之间的比较结果自动完成对所有测试问的分析,进而可以实现优化问答系统的测试数据,进而提高对知识库测试的准确性;进一步地,测试问的语义表达式还可以在问答系统测试时用于捕捉更多的问法,从而加快智能问答系统知识库建设的效率。

进一步,对于每一测试问,生成对应的语义表达式可以包括:对所述每一测试问进行分词处理,以得到多个词;分别对所述多个词中的每个词进行词性标注处理,以得到所述每个词的词性信息;根据所述词性信息对所述多个词进行过滤处理,保留词性信息为预设词性的词;判断过滤保留的每个词所属的词类,所述语义表达式包括所述过滤保留的每个词的词类,其中,每一词类包括多个词语。本发明技术方案通过在测试问中,将词性信息为预设词性的词的词类,构建形成所述测试问的语义表达式,使得所述语义表达式可以表征所述测试问的语义的同时,还可以捕捉到具备相同语义的其他问题;实现了对问答系统的测试数据的优化,进一步提高对知识库测试的准确性。

进一步,根据所述语义表达式的比较结果对所述测试问进行处理可以包括:如果对应同一期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,则将所述不同测试问删减为一个测试问。如果对应不同期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,则发送提示信息,以提示所述不同期待问题是语义近似的重复期待问题。本发明技术方案通过不同测试问生成的所述语义表达式的比较结果,以及不同测试问是否对应相同的期待问题,来对测试问进行删减处理,或提示不同期待问题是语义近似的重复期待问题,从而实现了对测试数据的优化,进一步提高对知识库测试的准确性。

附图说明

图1是本发明实施例一种问答系统的测试数据处理方法的流程图;

图2是本发明实施例另一种问答系统的测试数据处理方法的流程图;

图3是本发明实施例一种问答系统的测试数据处理装置的结构示意图;

图4是本发明实施例另一种问答系统的测试数据处理装置的结构示意图。

具体实施方式

如背景技术中所述,通过枚举足够多的测试问的方式耗时耗力;人工去写语义规则的方式对写语义规则的人(通常是知识建设人员)有比较高的要求,例如,需要了解语义规则如何编写、有哪些语法符号、词类名会是什么、相似度计算逻辑是什么等;而且不同的知识建设人员对语义规则的理解和写法都会有偏差。上述两种方式均会导致测试问差异性大,重复性大,进而影响对知识库测试的准确性。

由于在智能问答系统的知识库建设初期,只提供了期待问题、标准答案以及对应的多个测试问,因此本发明实施例通过对接收到的测试问生成对应的语义表达式,并根据不同测试问的语义表达式之间的比较结果自动完成对所有测试问的分析,进而可以实现优化问答系统的测试数据,进而提高对知识库测试的准确性;进一步地,测试问的语义表达式还可以在问答系统测试时用于捕捉更多的问法,从而加快智能问答系统知识库建设的效率。

为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

图1是本发明实施例一种问答系统的测试数据处理方法的流程图。

图1所示的问答系统的测试数据处理方法可以包括以下步骤:

步骤S101:接收待测试问答系统的测试数据,每一测试数据包括测试问和其对应的期待问题,其中,所述待测试问答系统包括知识库,所述知识库中包括所述期待问题;

步骤S102:对于每一测试问,生成对应的语义表达式,所述语义表达式用以表征所述测试问的语义;

步骤S103:根据不同测试问的语义表达式之间的比较结果,对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。

本实施例中,测试数据及其对应的答案可以是预先配置的。也就是说,待测试问答系统可以包括知识库,在知识库建设初期,提供了期待问题、答案以及对应的多个测试问。其中,期待问题是知识库中的问题,具体而言,知识库中可以包括知识点,每一知识点可以包括问题以及对应的答案。

问答系统在正式上线工作之前,需要利用测试数据对问答系统的知识库进行测试,测试是否能够对用户的问题做出正确的回答,如果准确率达到一定阈值,则问答系统可以上线工作,否则需要对知识库进行修改和完善;本发明实施例的测试数据处理方法则是基于这样的前提,通过对测试数据进行处理,提高测试的效率。

具体实施中,在步骤S101中,首先接收待测试问答系统的测试数据。本领域技术人员应当理解的是,由于不同应用平台内的问答系统具有差异性,对于每一问答系统,可以单独执行图1所示的问答系统的测试数据处理方法。

具体实施中,在步骤S102中,对于每一测试问可以生成对应的语义表达式。那么,对于测试数据中的多个测试问,可以得到对应多个测试问的多个语义表达式。具体而言,测试问的语义表达式用以表征该测试问的语义;那么,如果某一问题的语义与语义表达式表征的语义一致,则利用该语义表达式可以捕捉到该问题。换言之,通过测试问的语义表达式可以实现对该测试问的其他问法的扩展。

具体实施中,在步骤S103中,对于不同的测试问,其对应的不同表达式可以用以比较不同测试问之间的语义。也就是说,通过不同语义表达式的比较结果,可以确定不同测试问之间的语义的比较结果。具体而言,不同语义表达式之间的比较结果可以是不同语义表达式是否一致;也可以是,不同测试问是否一致。

本实施例所称“一致”可以是相同或语义相近(例如误差在预设范围内,下文都写为语义重复),本发明实施例对此不做限制。

具体实施中,在步骤S103中,通过语义表达式之间的比较结果,确定对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。具体而言,测试数据之间语义不重复可以是测试数据的测试问之间语义不重复,也可以是测试数据的期待问题之间语义不重复。本实施例通过语义表达式的比较结果可以确定语义重复的测试数据,然后对语义重复的测试数据进行处理,使得测试数据之间语义不重复,进而提高了测试数据的整体质量,以在利用测试数据对待测问答系统进行测试时,避免对语义重复的测试数据反复测试,提高测试效率,节约计算资源。进一步地,通过语义表达式的比较结果判断测试问是否一致,相较于直接通过测试问判断测试问是否一致,可以提高对测试问判断的准确性。

本发明技术方案通过对接收到的测试问生成对应的语义表达式,并根据不同测试问的语义表达式之间的比较结果自动完成对所有测试问的分析,进而可以实现优化问答系统的测试数据,进而提高对知识库测试的准确性;进一步地,测试问的语义表达式还可以在问答系统测试时用于捕捉更多的问法,从而加快智能问答系统知识库建设的效率。

优选地,可以采用以下方式确定不同测试问的语义表达式之间的比较结果:计算所述不同测试问的语义表达式的语义相似度;根据所述语义相似度确定所述比较结果。也就是说,对不同测试问的语义表达式进行比较是对语义的比较。首先计算语义表达式的语义相似度,计算语义相似度可以采用任意可实施的算法,例如词频逆向文件频率(Term Frequency-Inverse Document Frequency,TF-IDF)、编辑距离等,本发明实施例对此不做限制。然后根据语义相似度的大小确定比较结果。

进一步地,当所述语义相似度达到设定阈值时,则确定所述比较结果为所述不同测试问一致,否则确定所述比较结果为所述不同测试问不一致。换言之,不同语义表达式的语义相似度达到设定阈值,表明不同语义表达式语义相近或相同,那么不同语义表达式对应的不同测试问语义也相近或相同,则确定比较结果为所述不同测试问一致;相应地,不同语义表达式的语义相似度未达到设定阈值,表明不同语义表达式语义差异大,那么不同语义表达式对应的不同测试问语义差异大,则确定比较结果为所述不同测试问不一致。本实施例通过语义表达式的比较结果判断测试问是否一致,相较于直接通过测试问判断测试问是否一致,可以提高判断的准确性。

图2是本发明实施例另一种问答系统的测试数据处理方法的流程图。

图2所示的问答系统的测试数据处理方法可以包括以下步骤:

步骤S201:接收待测试问答系统的测试数据,每一测试数据包括测试问和其对应的期待问题;

步骤S202:对所述每一测试问进行分词处理,以得到多个词;

步骤S203:分别对所述多个词中的每个词进行词性标注处理,以得到所述每个词的词性信息;

步骤S204:根据所述词性信息对所述多个词进行过滤处理,保留词性信息为预设词性的词;

步骤S205:判断过滤保留的每个词所属的词类,所述语义表达式包括所述过滤保留的每个词的词类,其中,每一词类包括多个词语;

步骤S206:在所述多个词包含预设重点词时,对所述预设重点词所属的词类增加权重标注;

步骤S207:在所述多个词包含有序词语组合时,对所述有序词语组合所属的多个词类增加有序标注;

步骤S208:对所述权重大于设定值的词所属的词类增加疑问标注;

步骤S209:如果对应同一期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,则将所述不同测试问删减为一个测试问;

步骤S210:如果对应不同期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,则发送提示信息,以提示所述不同期待问题是语义近似的重复期待问题。

本发明实施例的步骤S201的具体实施方式可参照图1所示的步骤S101,此处不再赘述。

本实施例中,步骤S202至步骤S205可以是步骤“对于每一测试问,生成对应的语义表达式”的具体实施方式。

具体实施中,在步骤S202中,对测试问进行分词处理。具体而言,可以采用分词词典对测试问进行分词,分词词典可以是预先配置的,可以与待测问答系统的领域相同或相近,以提高分词的准确性。例如,对于测试问“如何用手机开一下信用卡”,进行分词后得到“如何”、“用”、“手机”、“开”、“一下”、“信用卡”多个词。

具体实施中,在步骤S203中,分别对分词处理得到的所述多个词中的每个词进行词性标注处理,以得到所述每个词的词性信息。例如,对于多个词“如何”、“用”、“手机”、“开”、“一下”、“信用卡”进行词性标注处理后,得到“如何/疑问代词”、“用/介词”、“手机/名词”、“开/动词”、“一下/数词”、“信用卡/名词”。需要说明的是,对于词性标注可以采用任意可实施的方式,本发明实施例对此不做限制。

具体实施中,在步骤S204中,根据词性标注处理得到的所述词性信息对所述多个词进行过滤处理,保留词性信息为预设词性的词。例如,在预设词性为名词、动词时,对词性标注处理后的多个词进行过滤后得到“手机”、“开”和“信用卡”。

具体实施中,在步骤S205中,判断过滤保留的每个词所属的词类,所述语义表达式包括所述过滤保留的每个词的词类,其中,每一词类包括多个词语。例如,对于过滤后得到的词语“手机”、“开”和“信用卡”,确定词语“手机”所属的词类为[手机],词语“开”所属的词类为[开通],词语“信用卡”所属的词类为[信用卡],则测试问“如何用手机开一下信用卡”对应的语义表达式为“[手机][开通][信用卡]”。

具体而言,每一词类可以包括多个词语,词类可以是按照词语的语义进行划分的,把一组语义相关的词组织在一起形成词类。具体地,词类可以由词类名和一组语义相关词语所组成。词类名可以在这组相关词中具有标签作用的词,即词类的代表。一个词类中至少包括一个词(即词类名本身)。例如,词类名为“手机”的词类可以包括多个词语“手机”、“mobile”、“mobilephone”、“电话”等。本实施例的语义表达式可以包括所述过滤保留的每个词所述词类的词类名。

优选地,所述预设词性包括名词、动词、副词和预设重点疑问词的一种或多种。换言之,词性为名词、动词、副词的词语在表征语义时,重要性比较高,所以在过滤时,通常会保留词性为名词、动词、副词的词语。对于预设重点疑问词,在某些应用场景中也比较重要,例如,“为什么”、“多少钱”,所以在过滤时,通常会保留词性为预设重点疑问词的词语,以作为语义表达式的重要的来源。对于词性为其他词性的词语,例如介词、代词、连词,其对语义没有贡献,故可以剔除。例如,测试问“如何用手机开一下信用卡”中的“用”和“一下”。

本发明实施例利用测试问中词性信息为预设词性的词的词类,构建形成所述测试问的语义表达式,使得所述语义表达式可以表征所述测试问的语义,同时还可以捕捉到具备相同语义的其他问题。采用这样的方案,实现了优化问答系统的测试数据,进一步提高对知识库测试的准确性。

优选地,还可以执行步骤S206,在所述多个词包含预设重点词时,对所述预设重点词所属的词类增加权重标注。其中,所述词类可以包括初始权重,在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在权重标注,则在所述初始权重基础上的增加所述词类的语义权重。例如,权重标注可以是“&”符号,则可以在相似度计算中提高语义表达式内该词类的权重。本实施例通过增加权重标注,可以在计算语义表达式的相似度时,忽略语义表达式中其他的词,匹配范围可以更广泛。例如,语义表达式为:“&[手机视频][优惠包]”、“&[全网音乐盒][星光熠熠][套餐]”,则在计算相似度时,可以在“[手机视频]”、“[全网音乐盒]”的初始权重基础上的增加该词类的语义权重。

需要说明的是,增加权重标注的词类在计算相似度时,权重提高可以是全局的,例如,在通信运营商领域,“彩铃”这个词非常重要,那么词类[彩铃]如果有权重标注,则在任一语义表达式中计算相似度时,都增加词类[彩铃]的语义权重。

优选地,还可以执行步骤S207,在所述多个词包含有序词语组合时,对所述有序词语组合所属的多个词类增加有序标注。其中,在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在有序标注,则根据所述有序标注指示的顺序计算所述语义相似度。具体而言,测试问的多个词按照不同的顺序排列组合在一起后所表达的语义可能会相同的,也可能是完全不同的。例如,测试问“怎么办理彩铃”和测试问“彩铃怎么办理”所表达的语义都是“彩铃的办理方法”。由此,语义表达式可以是“[怎么][办理][彩铃]”,该语义表达式可以包含上述的两种测试问的问法。但是测试问“美元兑换人民币汇率”和测试问“人民币兑换美元汇率”包括同样的词,但是所表达的语义却是不同的。此时可以使用有序标注,例如“()”,来表示有序词语组合。由此,测试问“美元兑换人民币汇率”的语义表达式可以为“([美元][兑换][人民币])[汇率]”,测试问“人民币兑换美元汇率”的语义表达式可以为“([人民币][兑换][美元])[汇率]”。

优选地,在步骤S203中,在根据所述词性信息对所述多个词进行过滤处理时,还可以保留权重大于设定值的词。可以理解的是,多个词的权重可以是预先设定的,例如可以存储在权重表中;在每次过滤时,对于词性为预设词性的词语之外的其他词,可以从权重表中调取所述其他词的权重,以确定是否保留。

进一步,还可以执行步骤S208,对所述权重大于设定值的词所属的词类增加疑问标注。具体而言,词类具备疑问标注则表示该词类对语义表达式的语义贡献不确定。例如,可以在词类的方括号中加入符号“?”:[什么?],以表示该词类在计算语义相似度时可以出现也可以不出现,即非必要的关系。这种非必要关系的词类也同样会在计算相似度的时候以“展开”的方式单独计算。也就是说,在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在疑问标注,则将所述语义表达式展开成为包含所述词类和不包含所述词类的两个子表达式。

例如:语义表达式“[介绍][手机视频][军事栏目][内容][什么?]”可以展开成子表达式“[介绍][手机视频][军事栏目][内容]”和子表达式“[介绍][手机视频][军事栏目][内容][什么]”。

需要说明的是,权重标注、有序标注和疑问标注可以采用任意可实施的方式或符号来表示,本发明实施例对此不做限制。

本实施例中,步骤S209和步骤S210可以是步骤“根据不同测试问的语义表达式之间的比较结果,对所述测试问或其对应的期待问题进行处理”的具体实施方式。

具体实施中,当所述语义相似度达到设定阈值时,则确定所述比较结果为所述不同测试问一致,否则确定所述比较结果为所述不同测试问不一致。那么在步骤S209中,如果对应同一期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,则表明该不同的测试问的语义是重复的,那么可以将所述不同测试问删减为一个测试问,以使得所述测试数据的测试问之间语义不重复。

那么在步骤S210中,如果对应不同期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,由于期待问题与测试问的对应关系是正确的,因此,这种情况下,表明该两个期待问题是语义重复的,因此可以发送提示信息,以提示所述不同期待问题是语义近似的重复期待问题,以便于用户对该不同的期待问题进行后续处理。

本发明实施例通过不同测试问生成的所述语义表达式的比较结果,以及不同测试问是否对应相同的期待问题,来对测试问进行删减处理,或提示不同期待问题是语义近似的重复期待问题,从而实现了对测试数据的优化,进一步提高对知识库测试的准确性。

具体实施中,所述知识库可以包括多个知识点,每一知识点包括标准问,也可以包括所述标准问对应的扩展问,所述不同期待问题均为所述知识库中的不同标准问。即每一知识点的问题包括标准问和所述标准问对应的扩展问。标准问为用来表示某个知识点的文字,主要目标是表达清晰,便于维护。如“彩铃的资费”就是表达清晰的标准问描述。扩展问是用来表示某个知识点语义的语义表达式和自然语句集合。

优选地,在执行步骤S210之后,还可以执行以下步骤:“提示用户选择所述知识库中的所述不同标准问对应的知识点中一个知识点,将所述知识库中的所述不同标准问以及所述不同标准问对应的扩展问合并至选中的知识点,并提示用户将所述选中的知识点中的标准问之外的其他标准问作为所述选中的知识点的扩展问”。合并后的知识点中的标准问可以基于不同标准问以及不同标准问对应的扩展问进行重新定义,也可以延用原知识点的标准问。本实施例通过对不同知识点的合并,可以使得所述测试数据之间语义不重复,进而可以在后续对问答系统进行测试时,提高测试效率。

优选地,在步骤S205或步骤S208之后还可以执行以下步骤“将所述语义表达式、所述测试问及其对应的期待问题进行存储,以用于在所述词类包括的所述多个词发生变化时,重新生成所述语义表达式”。本发明实施例通过存储语义表达式的方式,可以在词类发生变化时,及时更新语义表达式,进一步实现优化问答系统的测试数据,进而提高对知识库测试的准确性。

图3是本发明实施例一种问答系统的测试数据处理装置的结构示意图。

图3所示的问答系统的测试数据处理装置30可以包括接收模块301、语义表达式生成模块302和处理模块303。

其中,接收模块301用以接收待测试问答系统的测试数据,每一测试数据包括测试问和其对应的期待问题,其中,所述待测试问答系统包括知识库,所述知识库中包括所述期待问题;语义表达式生成模块302用以对于每一测试问,生成对应的语义表达式,所述语义表达式用以表征所述测试问的语义;处理模块303用以根据不同测试问的语义表达式之间的比较结果,对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。

本实施例中,测试数据及其对应的答案可以是预先配置的。也就是说,待测试问答系统可以包括知识库,在知识库建设初期,只提供了期待问题、答案以及对应的多个测试问。其中,期待问题是知识库中的问题,。具体而言,知识库中可以包括知识点,每一知识点可以包括问题以及对应的答案。

问答系统在正式上线工作之前,需要利用测试数据对问答系统的知识库进行测试,测试是否能够对用户的问题做出正确的回答,如果准确率达到一定阈值,则问答系统可以上线工作,否则需要对知识库进行修改和完善;本发明实施例的测试数据处理方法则是基于这样的前提,通过对测试数据进行处理,提高测试的效率。

具体实施中,接收模块301首先接收待测试问答系统的测试数据。本领域技术人员应当理解的是,由于不同应用平台内的问答系统具有差异性,对于每一问答系统,可以单独执行图1所示的问答系统的测试数据处理方法。

具体实施中,语义表达式生成模块302对于每一测试问可以生成对应的语义表达式。那么,对于测试数据中的多个测试问,可以得到对应多个测试问的多个语义表达式。具体而言,测试问的语义表达式用以表征该测试问的语义;那么,如果某一问题的语义与语义表达式表征的语义一致,则利用该语义表达式可以捕捉到该问题。换言之,通过测试问的语义表达式可以实现对该测试问的其他问法的扩展。

具体实施中,处理模块303对于不同的测试问,其对应的不同表达式可以用以比较不同测试问之间的语义。也就是说,通过不同语义表达式的比较结果,可以确定不同测试问之间的语义的比较结果。具体而言,不同语义表达式之间的比较结果可以是不同语义表达式是否一致;也可以是,不同测试问是否一致。

本实施例所称“一致”可以是相同或语义相近,本发明实施例对此不做限制。

具体实施中,处理模块303通过语义表达式之间的比较结果,确定对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。具体而言,测试数据之间语义不重复可以是测试数据的测试问之间语义不重复,也可以是测试数据的期待问题之间语义不重复。本实施例通过语义表达式的比较结果可以确定语义重复的测试数据,然后对语义重复的测试数据进行处理,使得测试数据之间语义不重复,进而提高了测试数据的整体质量,以在利用测试数据对待测问答系统进行测试时,避免对语义重复的测试数据反复测试,提高测试效率,节约计算资源。进一步地,通过语义表达式的比较结果判断测试问是否一致,相较于直接通过测试问判断测试问是否一致,可以提高对测试问判断的准确性。

本发明技术方案通过对接收到的测试问生成对应的语义表达式,并根据不同测试问的语义表达式之间的比较结果自动完成对所有测试问的分析,进而可以实现优化问答系统的测试数据,进而提高对知识库测试的准确性;进一步地,测试问的语义表达式还可以在问答系统测试时用于捕捉更多的问法,从而加快智能问答系统知识库建设的效率。

图4是本发明实施例另一种问答系统的测试数据处理装置的结构示意图

图4所示的问答系统的测试数据处理装置40可以包括接收模块401、语义表达式生成模块402和处理模块403。

其中,接收模块401用以接收待测试问答系统的测试数据,每一测试数据包括测试问和其对应的期待问题,其中,所述待测试问答系统包括知识库,所述知识库中包括所述期待问题;语义表达式生成模块402用以对于每一测试问,生成对应的语义表达式,所述语义表达式用以表征所述测试问的语义;处理模块403用以根据不同测试问的语义表达式之间的比较结果,对所述测试问或其对应的期待问题进行处理,以使得所述测试数据之间语义不重复。

接收模块401、语义表达式生成模块402和处理模块403的具体实施方式可参照图3所示的接收模块301、语义表达式生成模块302和处理模块303,此处不再赘述。

具体实施中,语义表达式生成模块402可以包括分词单元4021、词性标注单元4022、过滤单元4023和词类判断单元4024。

其中,分词单元4021用以对所述每一测试问进行分词处理,以得到多个词;词性标注单元4022用以分别对所述多个词中的每个词进行词性标注处理,以得到所述每个词的词性信息;过滤单元4023用以根据所述词性信息对所述多个词进行过滤处理,保留词性信息为预设词性的词;词类判断单元4024用以判断过滤保留的每个词所属的词类,所述语义表达式包括所述过滤保留的每个词的词类,其中,每一词类包括多个词语。

具体实施中,分词单元4021可以对测试问进行分词处理。具体而言,分词单元4021可以采用分词词典对测试问进行分词,分词词典可以是预先配置的,可以与待测问答系统的领域相同或相近,以提高分词的准确性。例如,对于测试问“如何用手机开一下信用卡”,进行分词后得到“如何”、“用”、“手机”、“开”、“一下”、“信用卡”多个词。

具体实施中,词性标注单元4022分别对分词处理得到的所述多个词中的每个词进行词性标注处理,以得到所述每个词的词性信息。例如,对于多个词“如何”、“用”、“手机”、“开”、“一下”、“信用卡”进行词性标注处理后,得到“如何/疑问代词”、“用/介词”、“手机/名词”、“开/动词”、“一下/数词”、“信用卡/名词”。需要说明的是,对于词性标注可以采用任意可实施的方式,本发明实施例对此不做限制。

具体实施中,过滤单元4023根据词性标注处理得到的所述词性信息对所述多个词进行过滤处理,保留词性信息为预设词性的词。例如,在预设词性为名词、动词、副词和预设重点疑问词时,对词性标注处理后的多个词进行过滤后得到“手机”、“开”和“信用卡”。

具体实施中,词类判断单元4024判断过滤保留的每个词所属的词类,所述语义表达式包括所述过滤保留的每个词的词类,其中,每一词类包括多个词语。例如,对于过滤后得到的词语“手机”、“开”和“信用卡”,确定词语“手机”所属的词类为[手机],词语“开”所属的词类为[开通],词语“信用卡”所属的词类为[信用卡],则测试问“如何用手机开一下信用卡”对应的语义表达式为“[手机][开通][信用卡]”。

具体而言,每一词类可以包括多个词语,词类可以是按照词语的语义进行划分的,把一组语义相关的词组织在一起形成词类。具体地,词类可以由词类名和一组语义相关词语所组成。词类名可以在这组相关词中具有标签作用的词,即词类的代表。一个词类中至少包括一个词(即词类名本身)。例如,词类名为“手机”的词类可以包括多个词语“手机”、“mobile”、“mobilephone”、“电话”等。本实施例的语义表达式可以包括所述过滤保留的每个词所述词类的词类名。

优选地,所述预设词性包括名词、动词、副词和预设重点疑问词的一种或多种。换言之,词性为名词、动词、副词的词语在表征语义时,重要性比较高,所以过滤单元4023在过滤时,通常会保留词性为名词、动词、副词的词语。对于预设重点疑问词,在某些应用场景中也比较重要,例如,“为什么”、“多少钱”,所以在过滤时,通常会保留词性为预设重点疑问词的词语,以作为语义表达式的重要的来源。对于词性为其他词性的词语,例如介词、代词、连词,其对语义没有贡献,故可以剔除。例如,测试问“如何用手机开一下信用卡”中的“用”和“一下”。

本发明实施例通过在测试问中,词性信息为预设词性的词的词类,构建形成所述测试问的语义表达式,使得所述语义表达式可以表征所述测试问的语义的同时,还可以捕捉到具备相同语义的其他问题;实现了优化问答系统的测试数据,进一步提高对知识库测试的准确性。

优选地,处理模块403可以包括相似度计算单元4031和比较结果确定单元4032:相似度计算单元4031计算所述不同测试问的语义表达式的语义相似度;比较结果确定单元4032根据所述语义相似度确定所述比较结果。也就是说,对不同测试问的语义表达式进行比较是对语义的比较。首先计算语义表达式的语义相似度,计算语义相似度可以采用任意可实施的算法,例如词频逆向文件频率(Term Frequency-Inverse Document Frequency,TF-IDF)、编辑距离等,本发明实施例对此不做限制。然后根据语义相似度的大小确定比较结果。

进一步地,比较结果确定单元4032在所述语义相似度达到设定阈值时,则确定所述比较结果为所述不同测试问一致,否则确定所述比较结果为所述不同测试问不一致。换言之,不同语义表达式的语义相似度达到设定阈值,表明不同语义表达式语义相近或相同,那么不同语义表达式对应的不同测试问语义也相近或相同,则确定比较结果为所述不同测试问一致;相应地,不同语义表达式的语义相似度未达到设定阈值,表明不同语义表达式语义差异大,那么不同语义表达式对应的不同测试问语义差异大,则确定比较结果为所述不同测试问不一致。本实施例通过语义表达式的比较结果判断测试问是否一致,相较于直接通过测试问判断测试问是否一致,可以提高对测试问判断的准确性。

优选地,语义表达式生成模块402还可以包括权重标注增加单元4025,用以在所述多个词包含预设重点词时,对所述预设重点词所属的词类增加权重标注;其中,所述词类包括初始权重,相似度计算单元4031在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在权重标注,则在所述初始权重基础上的增加所述词类的语义权重。例如,权重标注可以是“&”符号,则可以在相似度计算中提高语义表达式内该词类的权重。本实施例通过增加权重标注,可以在计算语义表达式的相似度时,忽略语义表达式中其他的词,匹配范围可以更广泛。例如,语义表达式为:“&[手机视频][优惠包]”、“&[全网音乐盒][星光熠熠][套餐]”,则在计算相似度时,可以在“[手机视频]”、“[全网音乐盒]”的初始权重基础上的增加该词类的语义权重。

需要说明的是,增加权重标注的词类的在计算相似度时权重提高可以是全局的,例如,在通信运营商领域,“彩铃”这个词非常重要,那么词类[彩铃]如果有权重标注,则在任一语义表达式中计算相似度时,增加词类[彩铃]的语义权重。

优选地,语义表达式生成模块402还可以包括有序标注增加单元4026,用以在所述多个词包含有序词语组合时,对所述有序词语组合所属的多个词类增加有序标注;其中,相似度计算单元4031在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在有序标注,则根据所述有序标注指示的顺序计算所述语义相似度。具体而言,测试问的多个词按照不同的顺序排列组合在一起后所表达的语义可能会相同的,也可能是完全不同的。例如,测试问“怎么办理彩铃”和测试问“彩铃怎么办理”所表达的语义都是“彩铃的办理方法”。那么可以语义表达式可以是“[怎么][办理][彩铃]”,该语义表达式可以包含上述的两种测试问的问法。但是测试问“美元兑换人民币汇率”和测试问“人民币兑换美元汇率”包括同样的词,但是所表达的语义却是不同的。此时可以使用有序标注,例如“()”,来表示有序词语组合。那么,测试问“美元兑换人民币汇率”的语义表达式可以为“([美元][兑换][人民币])[汇率]”,测试问“人民币兑换美元汇率”的语义表达式可以为“([人民币][兑换][美元])[汇率]”。

具体实施中,过滤单元4023在根据所述词性信息对所述多个词进行过滤处理时,还可以保留权重大于设定值的词。可以理解的是,多个词的权重可以是预先设定的,并存储在权重表中;在每次过滤时,对于词性为预设词性的词语之外的其他词,可以从权重表中调取所述其他词的权重,以确定是否保留。

优选地,语义表达式生成模块402还可以包括疑问标注增加单元4027,用以对所述权重大于设定值的词所属的词类增加疑问标注;其中,相似度计算单元4031在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在疑问标注,则将所述语义表达式展开成为包含所述词类和不包含所述词类的两个子表达式。

具体而言,词类具备疑问标注则表示该词类对语义表达式的语义贡献不确定。例如,可以在词类的方括号中加入符号“?”:[什么?],以表示该词类在计算语义相似度时可以出现也可以不出现,即非必要的关系。这种非必要关系的词类也同样会在计算相似度的时候以“展开”的方式单独计算。也就是说,在计算所述不同测试问的语义表达式的语义相似度时,如果所述词类存在疑问标注,则将所述语义表达式展开成为包含所述词类和不包含所述词类的两个子表达式。

例如:语义表达式“[介绍][手机视频][军事栏目][内容][什么?]”可以展开成子表达式“[介绍][手机视频][军事栏目][内容]”和子表达式“[介绍][手机视频][军事栏目][内容][什么]”。

优选地,处理模块403还可以包括第一处理单元4033和第二处理单元4034。

其中,第一处理单元4033用以在对应同一期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致时,则将所述不同测试问删减为一个测试问。第二处理单元4034用以在对应不同期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致时,则发送提示信息,以提示所述不同期待问题是语义近似的重复期待问题。

具体实施中,当所述语义相似度达到设定阈值时,比较结果确定单元4032则确定所述比较结果为所述不同测试问一致,否则确定所述比较结果为所述不同测试问不一致。那么在对应同一期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致时,则表明该不同的测试问的语义是重复的,那么第一处理单元4033可以将所述不同测试问删减为一个测试问,以使得所述测试数据的测试问之间语义不重复。

那么如果对应不同期待问题的不同测试问生成的所述语义表达式的比较结果为所述不同测试问一致,由于期待问题与测试问的对应关系是正确的,因此,这种情况下,表明该两个期待问题是语义重复的,因此第二处理单元4034可以发送提示信息,以提示所述不同期待问题是语义近似的重复期待问题,以便于用户对该不同的期待问题进行后续处理。

本发明实施例通过不同测试问生成的所述语义表达式的比较结果,以及不同测试问是否对应相同的期待问题,来对测试问进行删减处理,或提示不同期待问题是语义近似的重复期待问题,从而实现了对测试数据的优化,进一步提高对知识库测试的准确性。

具体实施中,所述知识库可以包括多个知识点,每一知识点包括标准问和所述标准问对应的扩展问,所述不同期待问题均为所述知识库中的不同标准问。即每一知识点的问题包括标准问和所述标准问对应的扩展问。标准问为用来表示某个知识点的文字,主要目标是表达清晰,便于维护。如“彩铃的资费”就是表达清晰的标准问描述。扩展问是用来表示某个知识点语义的语义表达式和自然语句集合。

优选地,处理模块403还可以包括提示单元4035,提示单元4035用以提示用户选择所述知识库中的所述不同标准问对应的知识点中一个知识点,将所述知识库中的所述不同标准问以及所述不同标准问对应的扩展问合并至选中的知识点,并提示用户将所述选中的知识点中的标准问之外的其他标准问作为所述选中的知识点的扩展问。合并后的知识点中的标准问可以基于不同标准问以及不同标准问对应的扩展问进行重新定义,也可以延用原知识点的标准问。本实施例通过对不同知识点的合并,可以使得所述测试数据之间语义不重复,进而可以在后续对问答系统进行测试时,提高测试效率。

优选地,图4所示的问答系统的测试数据处理装置40可以包括存储模块404,存储模块404用以将所述语义表达式、所述测试问及其对应的期待问题进行存储,以用于在所述词类包括的所述多个词发生变化时,重新生成所述语义表达式。本发明实施例通过存储语义表达式的方式,可以在词类发生变化时,及时更新语义表达式,进一步实现优化问答系统的测试数据,进而提高对知识库测试的准确性。

本发明实施例还公开了一种终端,所述终端可以包括图3所示的问答系统的测试数据处理装置30或图4所示的问答系统的测试数据处理装置40。所述终端可以是具备智能问答系统的智能软件产品,例如,各种人际交互平台QQ、微信等;也可以是具备智能问答系统的硬件设备,例如电脑、手机、平板电脑等。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于以计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1