一种智能问答方法及装置与流程

文档序号:12837132阅读:153来源:国知局
一种智能问答方法及装置与流程

本发明涉及计算机技术,尤指一种智能问答方法及装置。



背景技术:

随着计算机技术的不断发展,用户可以与计算机进行智能问答,也就是说,通过一问一答的形式,计算机可以精确的定位用户所提问题的答案。

在现有的智能问答系统中,用户向计算机提出一个问题,计算机可以从知识库中正确选择出用户所提问题的答案,接着,用户向计算机提出一个新问题,计算机继续从知识库中正确选择出用户所提新问题的答案。

然而,用户提出的新问题可能是非完整问句,例如,用户提出的第一个问题是:4008业务是什么?第二个问题是:怎么办理?计算机将无法处理非完整问句,从而导致无法为用户提供精确的答案。



技术实现要素:

为了解决上述技术问题,本发明提供了一种智能问答方法及装置,用以解决计算机无法为用户提供精确答案的问题。

为了达到本发明目的,本发明提供了一种智能问答方法,包括:

获取当前问句,所述当前问句包括用户当前输入的问句;

根据所述当前问句,确定所述当前问句是否为非完整问句,所述非完整问句存在省略词,所述省略词包括缺少检索所述当前问句答案的关键词;

若确定所述当前问句为非完整问句,则将所述当前问句进行完整性恢复 操作,以获得完整问句,所述完整问句包括不存在省略词的的问句;

根据所述完整问句,在数据库中检索所述完整问句的答案。

进一步的,所述将所述当前问句进行完整性恢复操作,以获得完整问句之前,还包括:

获取所述当前问句中省略词的至少一省略判定结果特征向量,所述省略判定结果特征向量包括根据以下任一信息或其组合获得的特征向量:省略类型、代词类型、省略成分位置、省略成分语法角色。

进一步的,所述将所述当前问句进行完整性恢复操作,以获得完整问句之前,还包括:

获取前问句的至少一个第一关键词,所述前问句包括在所述当前问句之前获取的,与所述当前问句同一用户标识输入的问句;

根据所述第一关键词,获取一省略候选词特征值向量,所述省略候选词特征值向量包括根据以下任一信息或其组合获得的特征向量:实体类别、实体在所述前问句的语法角色、间隔距离,所述间隔距离包括所述第一关键词所在的所述前问句距离所述当前问句的距离。

进一步的,所述将所述当前问句进行完整性恢复操作,以获得完整问句,还包括:

将所述省略候选词特征值向量与所述省略判定结果特征向量相乘,获得相乘结果;

根据所述相乘结果,确定所述相乘结果对应在第一列表的分值;

将所有分值按照从大到小的顺序排序,确定前n个分值对应的关键词为候补关键词;

将所述候补关键词补充到所述当前问句,获得恢复问句;

将所述恢复问句进行句法分析,获得所述句法分析的打分结果;

根据所述打分结果,将所述打分结果最高的所述恢复问句作为所述当前问句的所述完整问句。

进一步的,所述获取前问句的至少一个第一关键词之前,还包括:

确定所述前问句与所述当前问句是否存在相关性;

若存在相关性,则执行所述获取前问句的至少一个第一关键词;

若不存在相关性,则执行在数据库中检索所述当前问句的答案。

本发明还提供了一种智能问答装置,包括:

获取模块,用于获取当前问句,所述当前问句包括用户当前输入的问句;

确定模块,用于根据所述当前问句,确定所述当前问句是否为非完整问句,所述非完整问句存在省略词,所述省略词包括缺少检索所述当前问句答案的关键词;

完整性恢复模块,用于若确定所述当前问句为非完整问句,则将所述当前问句进行完整性恢复操作,以获得完整问句,所述完整问句包括不存在省略词的的问句;

检索模块,用于根据所述完整问句,在数据库中检索所述完整问句的答案。

进一步的,所述获取模块,具体用于获取所述当前问句中省略词的至少一省略判定结果特征向量,所述省略判定结果特征向量包括根据以下任一信息或其组合获得的特征向量:省略类型、代词类型、省略成分位置、省略成分语法角色。

进一步的,所述获取模块,还用于获取前问句的至少一个第一关键词,所述前问句包括在所述当前问句之前获取的,与所述当前问句同一用户标识输入的问句;根据所述第一关键词,获取一省略候选词特征值向量,所述省略候选词特征值向量包括根据以下任一信息或其组合获得的特征向量:实体类别、实体在所述前问句的语法角色、间隔距离,所述间隔距离包括所述第一关键词所在的所述前问句距离所述当前问句的距离。

进一步的,所述完整性恢复模块,还用于将所述省略候选词特征值向量与所述省略判定结果特征向量相乘,获得相乘结果;根据所述相乘结果,确定所述相乘结果对应在第一列表的分值;将所有分值按照从大到小的顺序排 序,确定前n个分值对应的关键词为候补关键词;将所述候补关键词补充到所述当前问句,获得恢复问句;将所述恢复问句进行句法分析,获得所述句法分析的打分结果;根据所述打分结果,将所述打分结果最高的所述恢复问句作为所述当前问句的所述完整问句。

进一步的,还包括:处理模块;

所述处理模块,用于确定所述前问句与所述当前问句是否存在相关性;若存在相关性,则执行所述获取前问句的至少一个第一关键词;若不存在相关性,则执行在数据库中检索所述当前问句的答案。

现有技术相比,本发明包括:获取当前问句,所述当前问句包括用户当前输入的问句;根据所述当前问句,确定所述当前问句是否为非完整问句,所述非完整问句存在省略词,所述省略词包括缺少检索所述当前问句答案的关键词;若确定所述当前问句为非完整问句,则将所述当前问句进行完整性恢复操作,以获得完整问句,所述完整问句包括不存在省略词的的问句;根据所述完整问句,在数据库中检索所述完整问句的答案。实现了对非完整问句的完整性恢复,从而可以在数据库中检索到精确的答案。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明智能问答方法一实施例的流程示意图;

图2为本发明智能问答装置一实施例的结构示意图;

图3为本发明智能问答装置二实施例的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

本发明实施例提供的智能问答方法具体可以应用于计算机提供智能回答时。本实施例提供的智能问答方法具体可以通过智能问答装置来执行,该智能问答装置可以集成在移动终端,计算机,或者单独设置,其中,该智能问答装置可以采用软件和/或硬件的方式来实现。以下对本实施例提供的智能问答方法及装置进行详细地说明。

图1为本发明智能问答方法一实施例的流程示意图;如图1所示,本实施例的执行主体可以是智能问答装置,本发明提供的智能问答方法,包括:

步骤101、获取当前问句。

在本实施例中,所述当前问句包括用户当前输入的问句。

步骤102、根据所述当前问句,确定所述当前问句是否为非完整问句。

在本实施例中,所述非完整问句存在省略词,所述省略词包括缺少检索所述当前问句答案的关键词。

具体的,首先判别当前问句中是否有省略的现象,如果有,根据其上文内容和实体识别结果对省略成分进行恢复。此处的省略指省略了关键成分或关键成分用代词指代。在省略现象的判别工作中,需要先标注语料,提取有效特征,训练省略判定模型,利用这个模型来判断句子中的词是否存在省略现象,并对存在省略的情况,判定出省略成分的位置、语法角色等信息。

举例来讲,可以将当前问句通过省略判定模型,确定所述当前问句是否为非完整问句。其中,该省略判定模型训练方式包括:将多个问句进行预处理,即标注问句中的词语词性、词序、省略特征等,举例来讲,该省略特征可以是省略主语、动词等。接着,读取预处理后的语料,提取特征值,进行模型的离线训练;特征值包括代词成分、省略特征、语义特征、实体词信息等。然后,进行离线训练生成省略恢复模型。

步骤103、若确定所述当前问句为非完整问句,则将所述当前问句进行完整性恢复操作,以获得完整问句。

在本实施例中,所述完整问句包括不存在省略词的的问句。

具体的,确定了省略成分位置后,接下来最重要的就是确定恢复内容。

恢复候选词为同一用户的前几句问句中,通过实体识别提取出来一个或多个实体词。通过算法计算和句法分析,选取出最佳候选词,作为省略恢复词。

步骤104、根据所述完整问句,在数据库中检索所述完整问句的答案。

需要说明的是,该数据库可以是传统关系型数据库,或者,索引的数据库,在此不做限制。

在本实施例中,获取当前问句,所述当前问句包括用户当前输入的问句;根据所述当前问句,确定所述当前问句是否为非完整问句,所述非完整问句存在省略词,所述省略词包括缺少检索所述当前问句答案的关键词;若确定所述当前问句为非完整问句,则将所述当前问句进行完整性恢复操作,以获得完整问句,所述完整问句包括不存在省略词的的问句;根据所述完整问句,在数据库中检索所述完整问句的答案。实现了对非完整问句的完整性恢复,从而可以在数据库中检索到精确的答案。

在上述实施例的基础上,所述根据所述当前问句,确定所述当前问句是否为非完整问句,还包括:

若确定所述当前问句不是非完整问句,则在数据库中检索所述当前问句的答案。

在上述实施例的基础上,所述将所述当前问句进行完整性恢复操作,以获得完整问句之前,还包括:

获取所述当前问句中省略词的至少一省略判定结果特征向量,所述省略判定结果特征向量包括根据以下任一信息或其组合获得的特征向量:省略类型、代词类型、省略成分位置、省略成分语法角色。

在上述实施例的基础上,所述将所述当前问句进行完整性恢复操作,以 获得完整问句之前,还包括:

获取前问句的至少一个第一关键词,所述前问句包括在所述当前问句之前获取的,与所述当前问句同一用户标识输入的问句;

根据所述第一关键词,获取一省略候选词特征值向量,所述省略候选词特征值向量包括根据以下任一信息或其组合获得的特征向量:实体类别、实体在所述前问句的语法角色、间隔距离,所述间隔距离包括所述第一关键词所在的所述前问句距离所述当前问句的距离。

进一步的,在上述实施例的基础上,所述将所述当前问句进行完整性恢复操作,以获得完整问句,还包括:

将所述省略候选词特征值向量与所述省略判定结果特征向量相乘,获得相乘结果;

根据所述相乘结果,确定所述相乘结果对应在第一列表的分值;

将所有分值按照从大到小的顺序排序,确定前n个分值对应的关键词为候补关键词;

将所述候补关键词补充到所述当前问句,获得恢复问句;

将所述恢复问句进行句法分析,获得所述句法分析的打分结果;

根据所述打分结果,将所述打分结果最高的所述恢复问句作为所述当前问句的所述完整问句。

需要说明的是,所述获取前问句的至少一个第一关键词之前,还包括:

确定所述前问句与所述当前问句是否存在相关性;

若存在相关性,则执行所述获取前问句的至少一个第一关键词;

若不存在相关性,则执行在数据库中检索所述当前问句的答案。

举例来讲,用户user:乐享4g套餐是什么?智能客服iqa:乐享4g套餐是中国电信的某一种套餐。接着,用户user:怎么办理?智能客服iqa在回答之前,可以进行如下操作:

步骤1,准备领域语料并标注,离线训练模型。分别训练语境识别模型、实体识别模型、省略判定模型;

步骤2,判断用户是否存在缓存,若存在继续执行步骤3语境识别,否则执行步骤7搜索;本例存在缓存;

步骤3,调用语境识别模型判断是否为同一语境,如果是,继续执行步骤4省略判定,否则执行步骤7搜索;本例为同一语境;

步骤4,调用省略判定模型判断是否存在省略,如果存在,确定省略位置和成分,获得省略判定结果特征向量a,并继续执行步骤5实体识别。否则执行步骤7搜索;本例存在省略,并且缺少主语,省略位置在“怎么”前面

步骤5,调用实体识别模型识别出可用于省略恢复的实体;继续执行步骤6省略恢复;本例实体识别模型识别出前一问句实体“乐享4g套餐”

步骤6,对于每一个实体,提取出一组省略候选词特征值向量,包括实体类别、实体在原句中的语法角色、间隔距离等,其中,间隔距离指与当前问句的距离,以问句作为距离单位;通过省略候选词特征值向量计算候选实体词的得分,根据得分选取恢复词。其中步骤4中得到的省略判定结果特征向量a为候选词特征向量的权重系数;本例识别出的实体在前一问句中是主语,且与当前问句间隔距离为1,经计算为最佳恢复词;恢复后,当前问句为:乐享4g套餐怎么办理?

步骤7,搜索语料库,进行结果后处理,筛选查询结果(若命中多条,则用相似度计算选取最佳答案,该部分不在本发明范围之内)并缓存用户的查询条件;

步骤8,将最终结果返回给用户。

再举例来讲,本实施例适用于生活服务app。用户user:北京的天气怎么样?智能客服iqa:北京的天气情况:多云转晴。user:南京呢?智能客服iqa在回答之前,可以进行如下操作:

步骤1,准备领域语料并标注,离线训练模型。分别训练语境识别模型、实体识别模型、省略判定模型;

步骤2,判断用户是否存在缓存,若存在继续执行步骤3语境识别,否则执行步骤7搜索;本例存在缓存;

步骤3,调用语境识别模型判断是否为同一语境,如果是,继续执行步骤4省略判定,否则执行步骤7搜索;本例为同一语境;

步骤4,调用省略判定模型判断是否存在省略,如果存在,确定省略位置和成分,获得省略判定结果特征向量a,并继续执行步骤5实体识别。否则执行步骤7搜索;本例存在省略,并且已有地区词主语”南京”,缺少宾语,省略位置在主语后面

步骤5,调用实体识别模型识别出可用于省略恢复的实体;继续执行步骤6省略恢复;本例实体识别模型识别出前一问句实体有“南京”和“天气”

步骤6,对于每一个实体,提取出一组省略候选词特征值向量,包括实体类别、实体在原句中的语法角色、间隔距离(这里指与当前问句的距离,以问句作为距离单位)等;通过省略候选词特征值向量计算候选实体词的得分,根据得分选取恢复词。其中步骤4中得到的省略判定结果特征向量a为候选词特征向量的权重系数;本例识别出的实体在前一问句中是主语和宾语,与当前问句间隔距离为1,当前问句缺少宾语,经计算“天气”为最佳恢复词;恢复后,当前问句为:南京天气呢?

步骤7,搜索语料库,进行结果后处理,筛选查询结果(若命中多条,则用相似度计算选取最佳答案,该部分不在本发明范围之内)并缓存用户的查询条件;

步骤8,将最终结果返回给用户。

图2为本发明智能问答装置一实施例的结构示意图;如图2所示,本发明提供的智能问答装置,包括:获取模块21、确定模块22、完整性恢复模块23和检索模块24。其中,

获取模块21,用于获取当前问句,所述当前问句包括用户当前输入的问句;

确定模块22,用于根据所述当前问句,确定所述当前问句是否为非完整问句,所述非完整问句存在省略词,所述省略词包括缺少检索所述当前问句答案的关键词;

完整性恢复模块23,用于若确定所述当前问句为非完整问句,则将所述当前问句进行完整性恢复操作,以获得完整问句,所述完整问句包括不存在省略词的的问句;

检索模块24,用于根据所述完整问句,在数据库中检索所述完整问句的答案。

在本实施例中,获取当前问句,所述当前问句包括用户当前输入的问句;根据所述当前问句,确定所述当前问句是否为非完整问句,所述非完整问句存在省略词,所述省略词包括缺少检索所述当前问句答案的关键词;若确定所述当前问句为非完整问句,则将所述当前问句进行完整性恢复操作,以获得完整问句,所述完整问句包括不存在省略词的的问句;根据所述完整问句,在数据库中检索所述完整问句的答案。实现了对非完整问句的完整性恢复,从而可以在数据库中检索到精确的答案。

进一步的,在上述实施例的基础上,所述获取模块21,具体用于获取所述当前问句中省略词的至少一省略判定结果特征向量,所述省略判定结果特征向量包括根据以下任一信息或其组合获得的特征向量:省略类型、代词类型、省略成分位置、省略成分语法角色。

进一步的,在上述实施例的基础上,所述获取模块21,还用于获取前问句的至少一个第一关键词,所述前问句包括在所述当前问句之前获取的,与所述当前问句同一用户标识输入的问句;根据所述第一关键词,获取一省略候选词特征值向量,所述省略候选词特征值向量包括根据以下任一信息或其组合获得的特征向量:实体类别、实体在所述前问句的语法角色、间隔距离,所述间隔距离包括所述第一关键词所在的所述前问句距离所述当前问句的距离。

进一步的,在上述实施例的基础上,所述完整性恢复模块23,还用于将所述省略候选词特征值向量与所述省略判定结果特征向量相乘,获得相乘结 果;根据所述相乘结果,确定所述相乘结果对应在第一列表的分值;将所有分值按照从大到小的顺序排序,确定前n个分值对应的关键词为候补关键词;将所述候补关键词补充到所述当前问句,获得恢复问句;将所述恢复问句进行句法分析,获得所述句法分析的打分结果;根据所述打分结果,将所述打分结果最高的所述恢复问句作为所述当前问句的所述完整问句。

图3为本发明智能问答装置二实施例的结构示意图;如图3所示,在上述实施例的基础上,本发明提供的智能问答装置,还可以包括:处理模块25;

所述处理模块25,用于确定所述前问句与所述当前问句是否存在相关性;若存在相关性,则执行所述获取前问句的至少一个第一关键词;若不存在相关性,则执行在数据库中检索所述当前问句的答案。

在本实施例中,实现了对非完整问句的完整性恢复,并获取多词组成的实体,从而可以在数据库中检索到精确的答案,提高了答案的准确性。虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

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