语义分析问答方法和装置、计算机设备和存储介质与流程

文档序号:17862165发布日期:2019-06-11 22:56阅读:157来源:国知局
语义分析问答方法和装置、计算机设备和存储介质与流程

本发明涉及人机交互技术领域,尤其涉及一种语义分析问答方法和装置、计算机设备和存储介质。



背景技术:

人机交互(human-computerinteraction,hci)是研究系统与用户之间的交互关系的科学。系统可以是各种各样的机器,也可以是计算机化的系统和软件。例如,通过人机交互可以实现诸如智能客服系统、语音控制系统等各种人工智能系统。

智能问答系统是人机交互的一种典型应用。传统的智能问答系统是将用户提出的问题直接与知识库中存储的大量问题进行相似度计算,得到与该问题相匹配的答案。但是,由于这种方法针对每个问题都要完整地进行相似度计算,因此,计算量非常大,导致计算效率低。另外,上述方法仅能够对单意图问题或者可以有效断句的多意图问题进行答复,且答案回复的准确率低,因此,导致用户体验差。



技术实现要素:

有鉴于此,本发明的一个目的在于提供一种语义分析问答方法和装置、计算机设备和存储介质,能够提高计算效率及答案回复的准确率。

本发明的一个方面提供一种语义分析问答方法,包括:接收用户的问题,所述问题包含至少一个意图和与所述至少一个意图中的每个意图相关的至少一个必要条件;

对所述问题进行分词处理,得到多个词语;

对所述多个词语进行过滤处理,得到至少一个关键词,所述过滤处理采用以下任一种或两种方式:去除前后缀和去除停用词;

分别对所述至少一个关键词进行语义解析,得到所述多个词语的语义信息;

分别对所述多个词语进行语义解析,得到所述多个词语的语义信息;

将所述语义信息与所述多个预设的意图知识点进行匹配以确定匹配的至少一个意图知识点;以及

获取与所述匹配的至少一个意图知识点对应的所述至少一个意图,得到与所述至少一个意图中的每个意图相关的至少一个必要条件,其中所述至少一个意图中的每个意图对应所述多个词语中的至少一个词语,所述至少一个必要条件对应所述多个词语中除所述至少一个词语之外的词语,所述语义信息包括所述词语的同义词和/或同义词组合、所述词语的同类词和/或同类词组合、与所述词语具有相同或相似结构的实体中的至少一个;

根据所述至少一个意图和与所述至少一个意图中的每个意图相关的至少一个必要条件,获取所述问题对应的答案;以及

将所述答案发送给所述用户。

本发明的另一个方面提供一种语义分析问答装置,包括:接收模块,用于接收用户的问题,所述问题包含至少一个意图和与所述至少一个意图中的每个意图相关的至少一个必要条件;

分词模块,用于对所述问题进行分词处理,得到多个词语;

过滤模块,用于对所述多个词语进行过滤处理,得到至少一个关键词,所述过滤处理采用以下任一种或两种方式:去除前后缀和去除停用词;

语义解析模块,用于分别对所述至少一个关键词进行语义解析,得到所述多个词语的语义信息;

意图知识点匹配模块,用于将所述语义信息与所述多个预设的意图知识点进行匹配以确定匹配的至少一个意图知识点;以及

意图匹配模块,用于获取与所述匹配的至少一个意图知识点对应的所述至少一个意图,得到与所述至少一个意图中的每个意图相关的至少一个必要条件,其中所述至少一个意图中的每个意图对应所述多个词语中的至少一个词语,所述至少一个必要条件对应所述多个词语中除所述至少一个词语之外的词语,所述语义信息包括所述词语的同义词和/或同义词组合、所述词语的同类词和/或同类词组合、与所述词语具有相同或相似结构的实体中的至少一个;

答案获取模块,用于根据所述至少一个意图和与所述至少一个意图中的每个意图相关的至少一个必要条件,获取所述问题对应的答案;

以及答案发送模块,用于将所述答案发送给所述用户。

本发明的再一个方面提供一种计算机设备,包括:存储器、处理器及存储在存储器中并可在处理器中运行的可执行指令,处理器执行可执行指令时实现如上所述的任一种语义分析问答方法。

本发明的又一个方面提供一种计算机可读存储介质,其上存储有计算机可执行指令,可执行指令被处理器执行时实现如上所述的任一种语义分析问答方法。

根据本发明实施例提供的技术方案,通过接收用户的问题,该问题包含至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件;对问题进行分词、过滤前后缀和停用词得到关键词,并对关键词进行语义分析,最终得到匹配的至少一个意图知识点,从而得到意图和意图相关的至少一个必要条件,得到至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件;根据至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件,获取问题对应的答案;以及将答案发送给用户,能够提高计算效率及答案回复的准确率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1是根据本发明一示例性实施例示出的一种语义分析问答方法的流程图。

图2是根据本发明另一示例性实施例示出的一种语义分析问答方法的流程图。

图3是根据本发明另一示例性实施例示出的一种语义分析问答方法的流程图。

图4是根据本发明另一示例性实施例示出的一种语义分析问答方法的流程图。

图5是根据本发明一示例性实施例示出的一种语义分析问答装置的框图。

图6是根据本发明另一示例性实施例示出的一种语义分析问答装置的框图。

图7是根据本发明另一示例性实施例示出的一种语义分析问答装置的框图。

图8是根据本发明一示例性实施例示出的用于问答交互的装置700的框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。根据本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是根据本发明一示例性实施例示出的一种语义分析问答方法的流程图。图1的语义分析问答方法可以由人机交互装置(例如,智能问答系统等)执行,如图1所示,该语义分析问答方法包括:

110:接收用户的问题,该问题包含至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件。

在本发明实施例中,用户的问题中可以包含一个或多个意图,意图中可以包含一个或多个必要条件,而问题中可能仅包含一个必要条件或对应意图的一部分必要条件。

进一步地,用户的问题可以是用户通过键盘或触摸屏等输入的文本信息,也可以是用户通过话筒等输入的语音信息,或者还可以是用户通过交互终端输入的文本消息、数据链接、语音消息、图片消息、图像消息和视频消息等,本发明对此不作限制。

这里,交互终端是能够与智能问答系统进行信息交互的设备,例如,智能手机、平板电脑、个人电脑或其他智能终端等。举例来说,用户可以一边通过语音或视频向智能问答系统提问,一边通过交互终端向智能问答系统发送相应的数据链接。

需要说明的是,当接收到的问题为语音消息、图片消息、图像消息或视频消息时,智能问答系统可以通过语音识别模块、图片识别模块或视频识别模块等将语音消息、图片消息、图像消息或视频消息转换为文本消息。

120:对问题进行分词处理,得到多个词语。

在本发明实施例中,根据预设的分词规则和预设的分词词典对用户的问题进行分词处理,得到多个词语。这里,分词规则可以包括但不限于正向最大匹配法、逆向最大匹配法、逐词遍历法或词频统计法、最少切分法、双相匹配法等。分词处理可以采用双向最大匹配法、维特比算法、隐马尔可夫模型算法和条件随机场算法中的一种或多种。

词汇组合是将多个词语排列组合在一起,并且这些词语在排列组合后所表达的意图可以是一个,也可以是多个。

130:对多个词语进行过滤处理,得到至少一个关键词,过滤处理采用以下任一种或两种方式:去除前后缀和去除停用词。

过滤处理采用的方法可以为根据词性等对多个词语进行过滤,去除前后缀;也可以为根据频次对多个词语进行过滤,去除停用词;或者还可以先去除前后缀、再去除停用词等,本发明对此不作限制。这里,去除停用词是指去除问题中识别意义不大但出现频率高的词,例如,“这”、“的”、“和”等,这些词在计算相似度的过程中会引入较大的误差,可以看成是一种噪音。需要说明的是,过滤处理还可以去除部分无意义词语,例如,“我”、“想”、“吗”等。

140:分别对至少一个关键词进行语义解析,得到多个词语的语义信息。

150:分别对多个词语进行语义解析,得到多个词语的语义信息;

160:将语义信息与多个预设的意图知识点进行匹配以确定匹配的至少一个意图知识点;

170:获取与匹配的至少一个意图知识点对应的至少一个意图,得到与至少一个意图中的每个意图相关的至少一个必要条件,其中至少一个意图中的每个意图对应多个词语中的至少一个词语,至少一个必要条件对应多个词语中除至少一个词语之外的词语,语义信息包括词语的同义词和/或同义词组合、词语的同类词和/或同类词组合、与词语具有相同或相似结构的实体中的至少一个;

在160和170中,进一步地,将语义信息与知识库中预先存储的多个意图知识点进行语义相似度计算,并将语义相似度最高的意图知识点作为匹配的至少一个意图知识点。这里,语义相似度是指多个词语的语义信息与知识库中的多个预设的意图知识点和必要条件知识点之间基于字与词语上的匹配程度,以及语义的高度相似性。语义相似度计算可以采用基于向量空间模型(vectorspacemodel,vsm)的计算方法、基于隐形语义索引模型(latentsemanticindexing,lsi)的计算方法、基于属性论的语义相似度计算方法和基于汉明距离的语义相似度计算方法中的一种或多种方法的结合。需要说明的是,语义相似度计算方法还可以为其他的语义相似度的计算方法。

最后,获取与匹配的至少一个意图知识点对应的至少一个意图。

180:根据至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件,获取问题对应的答案。

在本发明实施例中,根据至少一个意图进入相应的意图流程,并进一步根据与至少一个意图中的每个意图相关的至少一个必要条件执行相应的必要条件流程,从而得到与问题对应的答案。

需要说明的是,意图流程和必要条件流程是预先设定好的。具体地,以导医问诊的智能问答系统为例,假设用户的问题为“我头和颈椎都疼,还有点感冒,发烧39度,应该怎么办?”,通过意图分析可以得到用户问题中的意图为“感冒了,该怎么办”,必要条件为“头和颈椎都疼”和“发烧38度以上”,则智能问答系统自动进入与“感冒”相关的意图流程,并进一步执行与必要条件“头和颈椎都疼”和“发烧38度以上”相关的必要条件流程,从而得到相关答案和建议。

190:将答案发送给用户。

在本发明实施例中,可以通过文本、语音、图片、图像或视频中的一种或多种方式将答案发送给用户。

具体地,以招商银行的智能在线客服系统为例,如果用户以文本方式输入“招商银行的信用卡如何还款”,则招商银行的智能在线客服系统以文本方式回复为“您可以在招商银行的柜台或atm机还款,也可以通过网上银行、自动转账等方式还款”,同时,智能在线客服系统的用户界面上会显示用户当前所在位置周边的招商银行的信息,用户可以通过点击该信息导航前往附近的招商银行进行还款。

根据本发明实施例提供的技术方案,通过接收用户的问题,该问题包含至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件;对问题进行分词、过滤前后缀和停用词得到关键词,并对关键词进行语义分析,最终得到匹配的至少一个意图知识点,从而得到意图和意图相关的至少一个必要条件,得到至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件;根据至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件,获取问题对应的答案;以及将答案发送给用户,能够提高计算效率及答案回复的准确率。

进一步地,问题包括以下一种或多种:文本消息、语音消息、图片消息、图像消息和视频消息,所述语义分析问答方法还包括:

在110之后,120之前,还包括210:将问题转换为文本消息。

如图2所示,在本发明一实施例中,180包括:

1801:将至少一个必要条件与知识库中的多个预设的必要条件知识点进行匹配以确定匹配的至少一个必要条件知识点;

在本发明实施例中,意图为通过自然语言处理的方法与预先设定在数据库中的意图匹配得到的,这里,数据库即为存储有意图知识点的知识库。可以根据分词处理对用户的问题进行意图分析,进一步地,也可以根据分词处理的结果对分词后的多个词语进行排列组合,并基于词汇组合的结果对用户的问题进行意图分析。

1802:根据匹配的至少一个必要条件知识点执行对应的预设分支流程,得到所述分支流程对应的答案,其中预先存储有每个意图对应的必要条件分支流程,所述预设分支流程为每个意图知识点对应的至少一组必要条件知识点连接而成,每组必要条件知识点包括至少一个必要条件知识点,每个必要条件知识点流程指向其他组必要条件知识点或答案。

需要说明的是,意图流程和必要条件流程是预先设定好的。这里,预设分支流程为每个意图知识点对应的至少一组必要条件知识点连接而成,至少一组必要条件知识点中的每组必要条件知识点可以包括同一语义条件的肯定的必要条件知识点和否定的必要条件知识点,分别用于执行肯定的必要条件知识点对应的分支流程和否定的必要条件知识点对应的分支流程。

举例来说,离婚流程的必要条件知识点可以包括第一组必要条件知识点“是否愿意离婚”、第二组必要条件知识点“是否有财产争议”、第三组必要条件知识点“是否有抚养权争议”等。进一步地,第一组必要条件知识点“是否愿意离婚”包括肯定的必要条件知识点“对方愿意离婚”和否定的必要条件知识点“对方不愿意离婚”,第二组必要条件知识点“是否有财产争议”包括肯定的必要条件知识点“有财产争议”和否定的必要条件知识点“没有财产争议”,第三组必要条件知识点“是否有抚养权争议”包括肯定的必要条件知识点“有抚养权争议”和否定的必要条件知识点“没有抚养权争议”。

具体地,以导医问诊的智能问答系统为例,假设用户的问题为“我头和颈椎都疼,还有点感冒,发烧39度,应该怎么办?”,通过意图分析可以得到用户问题中的意图为“感冒了,该怎么办”,必要条件为“头和颈椎都疼”和“发烧38度以上”,则智能问答系统自动进入与“感冒”相关的意图流程,并进一步执行与必要条件“头和颈椎都疼”和“发烧38度以上”相关的必要条件流程,从而得到相关答案和建议。

在本发明实施例中,根据至少一个意图进入相应的意图流程,并进一步根据与至少一个意图中的每个意图相关的至少一个必要条件执行相应的必要条件流程,从而得到与问题对应的答案。

如附图4所示,1802中执行分支流程的过程包括:

1821:确定至少一个意图中的至少一个意图的必要条件是否足以触发答案。

1822:如果至少一个意图中的至少一个意图的必要条件足以触发答案,则输出对应的答案。或者

如果至少一个意图中的至少一个意图的必要条件不足以触发答案,则以反问的形式要求用户补全用于触发答案的必要条件。

具体地,确定与至少一个意图中的至少一个意图相关的必要条件是否满足分支流程的触发条件,如果满足分支流程的触发条件,则执行该分支流程并输出必要条件对应的答案;如果不满足分支流程的触发条件,则提示用户需要将用于触发答案的必要条件补充完整。

在本发明的另一个实施例中,将至少一个必要条件与多个预设的必要条件知识点进行匹配以确定匹配的至少一个必要条件知识点,包括:将至少一个必要条件与多个预设的必要条件知识点进行语义相似度计算,其中至少一个意图中的每个意图对应多个词语中的至少一个词语,至少一个必要条件对应多个词语中除至少一个词语之外的词语;以及将语义相似度最高的必要条件知识点作为匹配的至少一个必要条件知识点。

具体地,将问题中的至少一个必要条件与知识库中预先存储的多个必要条件知识点进行语义相似度计算,并将语义相似度最高的必要条件知识点作为匹配的至少一个必要条件知识点。这里,语义相似度计算可以采用基于向量空间模型的计算方法、基于隐形语义索引模型的计算方法、基于属性论的语义相似度计算方法和基于汉明距离的语义相似度计算方法中的一种或多种方法的结合。需要说明的是,语义相似度计算方法还可以为其他的语义相似度的计算方法。

下文将以法律咨询的智能问答系统的离婚流程为例对上述基于必要条件的问答方法进行详细描述。

具体地,智能问答系统接收用户的问题“我想要办离婚,我老婆不愿意,而且我们有财产分配争议,应该怎么办?”,并根据预设的分词规则和预设的分词词典通过去除前后缀、停用词等方法对上述问题进行分词处理,得到多个词语“我要离婚”、“老婆不愿意”、“有财产分配争议”、“怎么办”。

接着,将分词处理后的词语与知识库中预存的知识点(例如,“我要离婚”、“对方愿意离婚”、“对方不愿意离婚”、“有财产争议”、“没有财产争议”等)进行语义相似度计算,得到上述问题中的意图为“我要离婚”,必要条件为“对方不愿意”和“有财产争议”。

进一步地,基于意图“我要离婚”执行离婚流程,并基于必要条件“对方不愿意”和“有财产争议”执行对应的分支流程,得到上述问题所对应的法律意见,并将该法律意见以文本、语音等方式呈现给用户。

图4是根据本发明另一示例性实施例示出的一种基于必要条件的问答方法的流程图。如图3所示,该基于必要条件的问答方法包括:

310:接收用户的问题,该问题包含多个意图。

在本发明实施例中,用户的问题可以包含多个意图,也可以仅包含一个意图,本发明对此不作限制。例如,用户的问题为“请告诉我北京和上海的天气”,则该问题中包含两个意图,即“北京的天气”和“上海的天气”。又如,用户的问题为“我的信用卡丢了,请问该怎么挂失?”,则该问题中仅包含一个意图,即“信用卡挂失”。

需要说明的是,用户的问题可以为文本消息、语音消息、图片消息、图像消息和视频消息中的一种或多种。此外,还需要说明的是,用户的问题中可以包含标点符号,也可以不包含标点符号。

320:对问题进行分词处理,得到多个词语。

在本发明实施例中,根据预设的分词规则和预设的分词词典对用户的问题进行分词得到分词结果,并通过去除前后缀、停用词等方法对用户的问题的分词结果进行过滤处理。

需要说明的是,对问题进行处理的方法不限于如上的分词处理,而是可以包括基于标点符号的断句处理、基于语义信息或固定字词的拆分处理等,本发明对此不作限制。

330:对多个词语进行语义解析,得到多个词语的语义信息。

在本发明实施例中,语义信息可以包括但不限于词语的同义词和/或同义词组合、词语的同类词和/或同类词组合、与词语具有相同或相似结构的实体。

340:根据语义信息对多个词语进行组合,得到待匹配词组,该待匹配词组中均包含多个意图中的一个意图。

在本发明实施例中,根据多个词语中的每个词语的语义信息对多个词语进行组合,得到待匹配词组,待匹配词组中均包含至少一个意图。例如,多个词语为“信用卡”、“还款”、“时间”、“地点”、“分期”,则组合后得到的待匹配词组,其中包括多个意图为:为“信用卡还款时间”、“信用卡还款地点”和“信用卡还款能否分期”。

350:按在问句中的前后顺序将待匹配词组中的至少两个词语组合与知识库中的多个预设的扩展问进行语义相似度计算,并将语义相似度最高的扩展问的意图知识点作为用户的意图。

在本发明实施例中,语义相似度计算可以采用基于向量空间模型的计算方法、基于隐形语义索引模型的计算方法、基于属性论的语义相似度计算方法和基于汉明距离的语义相似度计算方法中的一种或多种方法的结合。例如:“信用卡”、“还款”、“时间”、“地点”,则从前到后顺序与知识库中的扩展问匹配,知识库中扩展问有“信用卡还款时间”“信用卡还款地点”,则“信用卡还款”没有与知识库中的知识点匹配,则顺序取“信用卡”、“还款”、“时间”与知识库中扩展问“信用卡还款时间”匹配。

360:消除问题的待匹配词组中已匹配到意图的词语,并将已消除的词语暂时存储在已消除词语集中。

在本发明实施例中,当得到待匹配词组之后,按照从左到右的消费原则将已匹配的词语从用户的问题中消除,并将已消除的词语暂时保存在已消除词语集中。

370:判断问题中剩余的词语组成的待匹配词组是否与知识库中预设的扩展问完全匹配。

在本发明实施例中,将问题中的剩余的待匹配词组进行排列组合,并分别与知识库中多个预设的扩展问进行匹配。

380:如果问题的剩余的待匹配词组中的至少两个词语的组合与知识库中预设的扩展问完全匹配,则获取与匹配的扩展问对应的意图知识点作为问题中的又一个意图。

在本发明实施例中,如果用户的问题中没有剩余词语,则表明问题中的词语组成的至少一个扩展问均与多个预设的扩展问完全匹配,这时,将与匹配的扩展问对应的答案发送给用户。

需要说明的是,答案可以以文本、语音、图片、图像和视频中的一种或多种形式发送。

390:如果问题的剩余的待匹配词组未与多个预设的扩展问完全匹配,则从已消除词语集中补入缺少的词语,并返回350。

在本发明实施例中,如果用户的问题的剩余的待匹配词组中仍有剩余词语,则表明问题的剩余的待匹配词语中部分或全部词语组成的至少一个待匹配词组并未与知识库中预设的扩展问完全匹配,且缺少的词正好在已消除词语集中,这时,需要根据多个预设的扩展问从已消除词语集中补入缺少的词语,以使与预设的扩展问完整匹配;进一步地,继续执行350,直到用户问题中的所有词语全部被消除或无法与知识库中的扩展问匹配。

根据本发明实施例提供的技术方案,通过对包含多意图的用户问题进行分词处理、语义解析、排列组合及语义信息共享,能够提高答案回复的速度和准确率,并因此提升用户体验。

下文将以酒店的智能问答系统为例对上述基于必要条件的问答方法进行详细描述。

具体地,智能问答系统接收用户的问题“酒店早餐几点开始?是自助餐吗?在哪里吃?是免费的吗?”,并根据预设的分词规则和预设的分词词典通过对上述问题进行分词处理得到分词结果,再去除前后缀、停用词等方法对分词结果进行过滤上述问题进行分词处理,得到多个词语“酒店”、“早餐”、“几点”、“开始”、“自助餐”、“哪里”、“吃”、“免费”。进一步地,根据上述词语的语义信息对上述词语进行排列组合,得到与知识库中多个扩展问匹配:“酒店早餐几点开始”、“酒店早餐是自助餐吗”、“酒店早餐在哪里吃”等,多个扩展问中的每个扩展问仅包含一个意图。

接着,按照从左到右的消费原则,将待匹配词组中的至少两个词语的组合与知识库中的预设扩展问(即,表达式[酒店][早餐][何时][开始]、[酒店][早餐][是否][自助餐]、[酒店][早餐][哪里][吃]、[酒店][早餐][是否][免费|收费]等)进行语义相似度计算,得到第一个匹配的表达式为[酒店][早餐][何时][开始]。这时,将已匹配的词语“酒店”、“早餐”、“几点”、“开始”暂时保存在已消费的词语集中,并继续对用户问题中的剩余词语进行处理。

进一步地,将用户问题中的剩余词语“自助餐”、“哪里”、“吃”、“免费”与知识库中的表达式进行语义相似度计算。由于知识库中存储的表达式为[酒店][早餐][是否][自助餐],但用户问题中的剩余词语仅有“自助餐”,因此,缺少了两个必须的词语“酒店”和“早餐”,这时,从已消费的词语集中找到缺少的两个词语,并将这两个词语与“自助餐”一起组成一个完整的表达式[酒店][早餐][是否][自助餐],以便将该表达式消费完全,以此类推,直到用户问题中的词语全部被消费。

下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。

图5是根据本发明一示例性实施例示出的一种基于必要条件的问答装置400的框图。如图4所示,该基于必要条件的问答装置400包括:

接收模块410,用于接收用户的问题,问题包含至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件;

分词模块420,用于对问题进行分词处理,得到多个词语;

过滤模块430,用于对多个词语进行过滤处理,得到至少一个关键词,过滤处理采用以下任一种或两种方式:去除前后缀和去除停用词;

语义解析模块440,用于分别对至少一个关键词进行语义解析,得到多个词语的语义信息;

意图知识点匹配模块450,用于将语义信息与多个预设的意图知识点进行匹配以确定匹配的至少一个意图知识点;以及

意图匹配模块460,用于获取与匹配的至少一个意图知识点对应的至少一个意图,得到与至少一个意图中的每个意图相关的至少一个必要条件,其中至少一个意图中的每个意图对应多个词语中的至少一个词语,至少一个必要条件对应多个词语中除至少一个词语之外的词语,语义信息包括词语的同义词和/或同义词组合、词语的同类词和/或同类词组合、与词语具有相同或相似结构的实体中的至少一个;

答案获取模块470,用于根据至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件,获取问题对应的答案;以及

答案发送模块480,用于将答案发送给用户。

进一步的,对问题进行分词处理,得到多个词语,包括:

根据预设的分词规则和预设的分词词典对问题进行分词处理,得到多个词语。

在本发明的一实施例中,过滤模块430的述过滤处理采用以下任一种或两种方式:去除前后缀和去除停用词。

如附图6所示,在本发明的一实施例中,答案获取模块470,包括:必要知识点匹配单元471,用于将至少一个必要条件与知识库中的多个预设的必要条件知识点进行匹配以确定匹配的至少一个必要条件知识点;以及

分支执行单元472,用于根据匹配的至少一个必要条件知识点执行对应的预设分支流程,得到分支流程对应的答案,其中预先存储有每个意图对应的必要条件分支流程,预设分支流程为每个意图知识点对应的至少一组必要条件知识点连接而成,每组必要条件知识点包括至少一个必要条件知识点,每个必要条件知识点流程指向其他组必要条件知识点或答案。

如附图7所示,在本发明的一实施例中,分支执行单元472中还包括:确定子单元4721,用于确定至少一个意图中的至少一个意图的必要条件是否足以触发答案;

条件判决子单元4722,用于如果至少一个意图中的至少一个意图的必要条件足以触发答案,则输出对应的答案;或者如果至少一个意图中的至少一个意图的必要条件不足以触发答案,则以反问的形式要求用户补全用于触发答案的必要条件。

在本发明的一实施例中,至少一组必要条件知识点中的每组必要条件知识点包括同一语义条件的肯定的必要条件知识点和否定的必要条件知识点。

根据本发明实施例提供的技术方案,通过对包含多意图的用户问题进行分词处理、语义解析、排列组合及语义信息共享,能够提高答案回复的速度和准确率,并因此提升用户体验。

图8是根据本发明一示例性实施例示出的用于问答交互的装置700的框图。

参照图7,装置700包括处理组件710,其进一步包括一个或多个处理器,以及由存储器720所代表的存储器资源,用于存储可由处理组件710的执行的指令,例如应用程序。存储器720中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件710被配置为执行指令,以执行上述语义分析问答方法。

装置700还可以包括一个电源组件730被配置为执行装置700的电源管理,一个有线或无线网络接口740被配置为将装置700连接到网络,和一个输入输出(i/o)接口750。装置700可以操作基于存储在存储器720的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

一种非临时性计算机可读存储介质,当存储介质中的指令由上述装置700的处理器执行时,使得上述装置700能够执行一种语义分析问答方法,包括:接收用户的问题,该问题包含至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件;对问题进行意图分析,得到至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件;根据至少一个意图和与至少一个意图中的每个意图相关的至少一个必要条件,获取问题对应的答案;以及将答案发送给用户。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序校验码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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