一种交互式动态推理方法及装置与流程

文档序号:16359324发布日期:2018-12-22 08:04阅读:207来源:国知局
一种交互式动态推理方法及装置与流程

本发明涉及自动问答技术领域,特别是涉及一种交互式动态推理方法及装置。

背景技术

当前的智能问答系统,主要有一问一答和多轮会话两种形式。其中,一问一答是通过定位网站用户所需要的提问知识,为网站用户提供简单服务,当网站用户提出问题时,系统不仅将问题答案推送出来,而且会将与这个问题相关的知识也都推送出来供用户查询;而多轮会话则通过把常见问题整理成若干流程诊断型的知识,通过引导用户进行交互式问答,最终为用户提供服务。

然而,目前一问一答的会话形式,受问答形式与轮次限制,仅能解决简单的知识普及问题,无法更好地利用知识解决复杂的用户个人问题;多轮会话的问答形式,通过形成决策树形成诊断型知识组织,最终能够解决普通的用户个人问题,但应用无参数学习,沿着树根向下一直走到叶子节点,也就是决策结果,但其不能提供用户定制化的服务,无法提供用户经过精确计算的决策结果。



技术实现要素:

为克服上述现有技术存在的不足,本发明之目的在于提供一种交互式动态推理方法及装置,其可以识别用户问题中决策因子,省去重复向用户提问的麻烦,提升用户的体验,并可解决用户的复杂问题。

为达上述及其它目的,本发明提出一种交互式动态推理方法,包括如下步骤:

步骤s1,识别用户问题,根据识别的用户问题确定并触发相应的场景,联动触发场景的信息抽取模型和决策模型;

步骤s2,抽取用户问题中的决策因子,判断用户问题的决策因子中是否含有影响决策模型的决策因子,根据判断结果进入步骤s3或直接存储该决策因子;

步骤s3,引导用户提供必要的信息,抽取用户输入中的决策因子进行内部存储,将内部存储的决策因子逐一发送至决策模型,并通过决策模型判断是否确定下一个决策因子,当判断结果为是时,确定下一个决策因子;

步骤s4,触发并运行该决策模型;

步骤s5,获取并输出该决策模型中输出的决策结果与运算结果。

优选地,步骤s1进一步包括:

检查场景入口条件,接收用户的自然语言数据,并对所述自然语言数据进行语义理解,以生成问题请求,根据所述问题请求,获取场景入口候选集,并对场景入口候选集进行综合评分排序,选择评分最高的场景作为场景入口。

优选地,步骤s3进一步包括:

向用户发出获取决策因子的询问;

获取用户对询问的反馈,抽取用户反馈中的决策因子;

将抽取的决策因子进行内部存储;

将内部存储的决策因子逐一发送至决策模型;

通过决策模型判断是否确定下一个决策因子,当判断结果为是时,根据抽取的决策因子确定下一个决策因子,当判断结果为否时,则进入步骤s5。

优选地,步骤s2进一步包括:

利用信息抽取模型抽取用户问题中的决策因子;

判断该用户问题的决策因子中是否含有影响决策模型的决策因子;

若该用户问题的决策因子中含有影响决策模型的决策因子,则抽取该决策因子,并将该决策因子进行内部存储;若该用户问题的决策因子中不含有或缺少影响决策模型的决策因子,则进入向用户发出获取决策因子的询问的步骤。

优选地,于所述将抽取的决策因子进行内部存储步骤前,还包括如下步骤:

将抽取的用户反馈中的决策因子与内部存储的决策因子进行比较;

若内部存储的决策因子中含有该问题的决策因子,则跳过该问题,继续该问题的下一个问题;若内部存储的决策因子中不含有该问题的决策因子,则启用该问题,将抽取的用户反馈中含有的决策因子进行内部存储。

优选地,于步骤s4之前,还包括如下步骤:

判断该决策模型用于输出一决策结果的预设必要信息是否已抽取完整;

若用于输出任一决策结果的预设必要信息已抽取完整,则进入步骤s4运行该决策模型,否则跳转至步骤s3引导用户提供必要的信息。

优选地,于步骤s4中,所述决策模型的运行包括:

步骤s400,判断决策模型是否含有数学计算或逻辑运算,有则进行数学或逻辑运算,进入步骤s401,无则进行直接进入步骤s401;

步骤s401,将决策模型中的决策结果和运算结果传送至结果节点,由结果节点对决策模型传送的决策结果与计算结果进行整合。

为达到上述目的,本发明还提供一种交互式动态推理装置,包括:

入口节点,用于识别用户问题,根据识别的用户问题确定并触发相应的场景,联动触发场景的信息抽取模型和决策模型;

决策因子抽取及判断单元,用于抽取用户问题中的决策因子,判断用户问题的决策因子中是否含有影响决策模型的决策因子,根据判断结果启动追问节点或直接进行存储;

追问节点,用于引导用户提供必要的信息,抽取用户输入中的决策因子进行存储,将内部存储的决策因子逐一发送至决策模型,并通过决策模型判断是否确定下一个决策因子,当判断结果为是时,确定下一个决策因子;

决策模型运行单元,用于触发并运行决策模型;

结果节点,用于获取并输出决策模型中输出的决策结果与运算结果。

优选地,所述装置还包括条件节点,用于将所述追问节点抽取的决策因子与内部存储的决策因子进行比较;如果内部存储的决策因子中含有该问题的决策因子时,则跳过该问题,继续该问题的下一个问题,如果内部存储的决策因子中不含有该问题的决策因子时启用该问题,并将抽取的用户反馈中含有的决策因子进行内部存储。

优选地,所述装置还包括跳转节点,用于判断该决策模型用于输出一决策结果的预设必要信息是否已抽取完整,并于判断结果为用于输出任一决策结果的预设必要信息已抽取完整,则启动所述决策模型运行单元,否则跳转至所述追问节点引导用户提供必要的信息。

与现有技术相比,本发明一种交互式动态推理方法及装置通过抽取用户问题中的决策因子,并于判断出该用户问题的决策因子中不含有或缺少影响决策模型的决策因子时,引导用户提供必要的信息,抽取用户输入中的决策因子,并通过运行决策模型输出决策结果与运算结果,本发明不仅可以识别用户问题中决策因子,省去了重复向用户提问的麻烦,提升了用户的体验,而且可解决用户的复杂问题。

附图说明

图1为本发明一种交互式动态推理方法的步骤流程图;

图2为本发明一种交互式动态推理装置的系统架构图;

图3为本发明具体实施例中入口节点202的细部结构图;

图4为本发明具体实施例中追问节点203的细部结构图;

图5为本发明一种交互式动态推理装置具体实施例的系统架构图

图6为本发明实施例之交互式动态推理方法的流程图。

具体实施方式

以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。

图1为本发明一种交互式动态推理方法的步骤流程图。如图1所示,本发明一种交互式动态推理方法,包括如下步骤:

步骤s1,识别用户问题,根据识别的用户问题确定并触发相应的场景,并联动触发场景的信息抽取模型和决策模型。

具体地说,步骤s1进一步包括:

步骤s100,检查场景入口条件,接收用户的自然语言数据,并对所述自然语言数据进行语义理解,以生成问题请求;

步骤s101,根据所述问题请求,获取场景入口候选集,并对场景入口候选集进行综合评分排序,选择评分最高的场景作为场景入口。

步骤s102,触发评分最高的场景,并联动触发该场景的信息抽取模型和决策模型。

由于不同场景所针对的问题不同,因此要根据用户问题选择针对性最强的场景进入。比如,识别出用户问题为“我要买大卡车轮胎”,获取的场景入口候选集包括场景1与场景2,场景1为汽车轮胎购买场景,场景2为家用电器购买场景,则会根据识别的用户问题“我要买大卡车轮胎”,将其与场景1及场景2入口预设问题综合评分,选择评分最高的场景作为场景入口。由于综合评分场景1的综合评分最高,所以触发场景1,进入汽车轮胎购买场景。

步骤s2,抽取用户问题中的决策因子,判断用户问题的决策因子中是否含有影响决策模型的决策因子,根据判断结果进入引导用户提供必要的信息的步骤或直接存储该决策因子。

具体地,步骤s2进一步包括:

步骤s200,利用信息抽取模型抽取用户问题中的决策因子,并且判断该用户问题的决策因子中是否含有影响决策模型的决策因子。在本步骤中,调用场景的信息抽取模型抽取用户问题中的决策因子,并判断用户问题中“我要买大卡车轮胎”是否含有决策模型的决策因子,所述信息抽取模型则用于挖掘、发现、抽取用户请求、反馈中含有的决策因子;

步骤s201,如果该用户问题的决策因子中含有影响决策模型的决策因子,则抽取该决策因子,并将该决策因子进行内部存储;例如用户问题为“我要买大卡车轮胎”假设抽取的该用户问题的决策因子为“大卡车”,假如影响决策模型的决策因子中也含有“大卡车”,则将该决策因子“大卡车”进行内部存储;

步骤s202,如果该用户问题的决策因子中不含有或缺少影响决策模型的决策因子,则进入引导用户提供必要的信息的步骤。

优选地,于步骤s200之前,还包括如下步骤:

判断该用户问题中有无决策因子,若有,则进入步骤s200,否则直接进入步骤s3。

步骤s3,引导用户提供必要的信息,抽取用户输入中的决策因子进行存储,将内部存储的决策因子逐一发送至决策模型,并通过决策模型判断是否确定下一个决策因子,当判断结果为是时,确定下一个决策因子。

具体地,步骤s3进一步包括:

步骤s300,向用户发出获取决策因子的询问。

步骤s301,获取用户对询问的反馈,抽取用户反馈中的决策因子;具体地,于步骤301中,利用信息抽取模型抽取用户反馈信息中的决策因子。

步骤s302,将抽取的决策因子进行内部存储。也就是说当步骤s2中判断出抽取用户问题中的决策因子中没有决策模型可用决策因子,进入场景第一个问题进行追问“您有没有什么品牌要求”,用户可通过语音或文本进行回答,用户回答“没有”,将“没有”存到内部存储单元a。

步骤s303,将内部存储的决策因子逐一发送至决策模型;即于步骤s303中,将内部存储单元a存储的决策因子逐一传送至决策模型。

决策模型又称决策表或判断表,是一种呈表格状的图形工具,适用于描述处理判断条件较多,各条件又相互组合、有多种决策方案的情况,其采用精确而简洁描述复杂逻辑的方式,将多个条件与这些条件满足后要执行动作相对应,但不同于传统程序语言中的控制语句,决策表能将多个独立的条件和多个动作直接的联系清晰的表示出来。

步骤s304,通过决策模型判断是否确定下一个决策因子,当判断结果为是时,确定下一个决策因子。也就是说,将抽取的决策因子先进入决策模型,判断是否出决策结果,不出决策结果的时候再确定下一个决策因子,如果可以出决策结果,则直接进入下一步步骤s4。

优选地,于步骤302之前,还包括如下步骤:

将步骤301抽取的决策因子与内部存储的决策因子进行比较;

如果内部存储的决策因子中含有该问题的决策因子,则跳过该问题,继续该问题的下一个问题;

如果内部存储的决策因子中不含有该问题的决策因子,则启用该问题,进入步骤s302将抽取的用户反馈中含有的决策因子进行内部保存。

步骤s4,运行决策模型。

具体地,所述决策模型的运行包括如下步骤:

步骤s400,判断决策模型是否含有数学计算或逻辑运算,有则进行数学或逻辑运算,进入步骤s401,无则直接进入步骤s401;

步骤s401,将决策模型中的决策结果和运算结果传送至结果节点,由结果节点对决策模型传送的决策结果与计算结果进行整合。

优选地,于步骤s401之前,还包括如下步骤:

判断决策模型是否有显示格式要求,有则进行格式调整,调整后进入步骤s401,无则直接进入步骤s401。

优选地,于步骤s4之前,还包括如下步骤:

判断该决策模型是否可以输出决策结果,即用于输出一个决策结果的预设必要信息是否已抽取完整;

若用于输出任一决策结果的预设必要信息已抽取完整,则进入步骤s4运行决策模型并输出该决策模型的运行结果,否则跳转步骤s3引导用户提供必要的信息以再次向用户发出获取决策因子的询问。

例如当步骤s3将a里的决策因子传送到决策模型,决策模型的预设必要信息尚未完整,则会继续追问“您能接受的价位是多少”,用户可通过语音或文本进行回答,此时,用户回答“1000元以内”将“1000元以内”存到内部存储单元a,再次将内部存储单元a里的决策因子传送到决策模型,若此时决策模型的预设必要信息尚未完整,则继续追问“轮胎适配尺寸是多少”,提供条件155mm,165mm和185mm,此时用户选择185mm,并存到内部存储单元a将决策因子传送到决策模型,直至决策模型中“米其林blahblah轮胎”的预设必要信息均已抽取完整。

此时于步骤s4运行决策模型,输出决策结果为:“根据您提供的信息,建议您买米其林blahblah轮胎”。

步骤s5,获取并输出决策模型中输出的决策结果与运算结果。

图2为本发明一种交互式动态推理装置的系统架构图。如图2所示,本发明一种交互式动态推理装置,包括:

入口节点201,用于识别用户问题,根据识别的用户问题确定并触发相应的场景,并联动触发场景的信息抽取模型和决策模型。

具体地说,如图3所示,入口节点201进一步包括:

用户问题识别单元2010,用于检查场景入口条件,接收用户的自然语言数据,并对所述自然语言数据进行语义理解,以生成问题请求。

综合评分计算单元2011,用于根据所述问题请求,获取场景入口候选集,将用户问题与场景入口候选集的每个场景入口的预设问题进行综合评分计算。

由于不同场景所针对的问题不同,因此要根据用户问题选择针对性最强的场景进入。比如,识别出用户问题为“我要买大卡车轮胎”,获取的场景入口候选集包括场景1与场景2,场景1为汽车轮胎购买场景,场景2为家用电器购买场景,则会根据识别的用户问题“我要买大卡车轮胎”,将其与场景1及场景2入口预设问题综合评分。

场景触发单元2012,用于根据综合评分计算单元2011的综合评分结果,触发合适的场景,联动触发场景的信息抽取模型和决策模型。具体地,场景触发单元2012对场景入口候选集进行综合评分排序,选择评分最高的场景作为场景入口。例如,当根据综合评分结果得出用户问题与场景1的入口预设问题综合评分为最高时,场景触发单元2012则触发场景1,进入汽车轮胎购买场景,同时联动触发场景1的信息抽取模型和决策模型。

可见,本发明通过于场景入口进行入口节点设置,通过综合评分进行判断,可更为准确地识别用户意图。

决策因子抽取及判断单元202,用于抽取用户问题中的决策因子,判断用户问题的决策因子中是否含有影响决策模型的决策因子,根据判断结果启动追问节点203或直接存储该决策因子。入口节点为每个场景的第一个节点,该节点是操作者在场景编辑器中创建场景后,在场景中建立的第一个节点,入口节点的内容是与场景有关的内容,入口节点的作用是匹配用户的陈述是否与该场景相关,如果与该场景相关,则引导用户进入该场景的交互流程,否则不进入该场景交互流程

决策因子抽取及判断单元202具体包括:

决策因子抽取单元,用于利用信息抽取模型抽取用户问题中的决策因子。在本发明中,信息抽取模型则用于挖掘、发现、抽取用户请求、反馈中含有的决策因子;

判断单元,用于判断该用户问题的决策因子中是否含有影响决策模型的决策因子

判断结果处理单元,于该用户问题的决策因子中含有影响决策模型的决策因子时,则抽取该决策因子,并将该决策因子进行内部存储;假设抽取的该用户问题的决策因子为“天气”,影响决策模型的决策因子中也含有“天气”,则将该决策因子“天气”进行内部存储;于该用户问题的决策因子中不含有或缺少影响决策模型的决策因子,则启动追问节点203。

优选地,决策因子抽取及判断单元202还包括决策因子存在判断单元,用于判断该用户问题中有无决策因子,若有启动决策因子抽取单元,否则直接启动追问节点203。

追问节点203,用于引导用户提供必要的信息,抽取用户输入中的决策因子进行存储,将内部存储的决策因子逐一发送至决策模型,并通过决策模型判断是否确定下一个决策因子,当判断结果为是时,确定下一个决策因子。

如图4所示,追问节点203具体包括:

询问单元2031,向用户发出获取决策因子的询问;

反馈信息抽取单元2032,获取用户对询问的反馈,抽取用户反馈中的决策因子;具体地,反馈信息抽取单元2032利用信息抽取模型抽取用户反馈信息中的决策因子;

存储单元2033,将抽取的决策因子进行内部存储;

决策因子发送单元2034,用于将内部存储的决策因子逐一发送至决策模型;

决策因子确定单元2035,用于通过决策模型判断是否确定下一个决策因子,当判断结果为是时,确定下一个决策因子。也就是说,决策因子确定单元2035将抽取的决策因子先进入决策模型,判断是否可以出决策结果,不可以出决策结果的时候再确定下一个决策因子。

可见,本发明通过追问问题的追问节点设置,可引导用户选择、提供决策模型中的决策因子。

决策模型运行单元204,用于运行所述决策模型。具体地,所述决策模型的运行具体包括:

判断决策模型是否含有数学计算或逻辑运算,有则进行数学或逻辑运算,无则将决策模型中的决策结果和运算结果传送至结果节点,由结果节点对决策模型传送的决策结果与计算结果进行整合。优选地,在将决策模型中的决策结果和运算结果传送至结果节点之前,还可判断决策模型是否有显示格式要求,有则进行格式调整,无则将决策模型中的决策结果和运算结果传送至结果节点。

结果节点205,用于获取决策模型输出的决策结果与运算结果,并对该决策结果与运算结果进行整合输出。本发明通过结果节点的设置,使得交互式推理结论可编辑,使交互式动态推理形成闭环。

优选地,如图5所示,本发明之交互时动态推理装置,还包括:条件节点206,用于将追问节点203抽取的决策因子与内部存储的决策因子进行比较;于内部存储的决策因子中含有该问题的决策因子时,则跳过该问题,继续该问题的下一个问题,于内部存储的决策因子中未含有该问题的决策因子时启用该问题,并将抽取的用户反馈中含有的决策因子进行内部保存。

优选地,本发明之交互时动态推理装置还包括:跳转节点207,用于判断决策模型是否可以输出决策结果,即判断用于输出一个决策结果的预设必要信息是否已抽取完整,并于判断结果为用于输出任一决策结果的预设必要信息已抽取完整,则启动决策模型运行单元204运行决策模型并输出决策结果与运算结果,否则跳转至追问节点203引导用户提供必要的信息以再次向用户发出获取决策因子的询问。本发明通过跳转节点的设置,可实现场景、追问或条件之间的跳转。

图6为本发明实施例之交互式动态推理方法的流程图。以下配合图6进一步说明本发明之交互式动态推理过程:

1、识别用户问题,理解用户问题需求,触发并进入相应场景。

具体地,步骤1包括:

a、将用户问题与每个场景入口预设问题进行综合评分;

b、获得综合评分计算结果;

c、触发与综合评分结果为最高的场景。

例如用户提问:我要买轮胎,通过综合评分,“我要买轮胎”与汽车轮胎购买场景入口问题,进入汽车轮胎购买场景。

2、抽取用户问题中含有的决策因子,判断用户问题的决策因子是否含有预设决策因子。

a、进入场景时,场景同步启动场景对应的信息抽取模型,并且判断用户问题中是否含有影响决策模型的决策因子;

b、如果用户问题中含有影响决策模型的决策因子,则抽取改决策因子,并将决策因子保存到内部存储a;

c、如果用户问题中不含有或缺少影响决策模型的决策因子。则进入引导用户提供必要的信息步骤。

调用场景的信息抽取模型,判断用户问题中“我要买轮胎”是否含有决策模型的决策因子,若有,则将其保存到内部存储单元a,否则进入下一步骤。

3、引导用户提供必要的信息

a、向用户发出获取决策因子的询问;

b、利用信息抽取模型收集用户反馈中的决策因子;

c、将获取的用户反馈中的决策因子与内部存储a进行比较

①、如果内部存储a含有该问题的决策因子,则跳过该问题,继续该问题的下一个问题。

②、如果内部存储a未含有该问题的决策因子,则启用该问题,并且对反馈中含有的决策因子保存到内部存储a。

当用户问题中的决策因子没有决策模型可用决策因子,进入场景第一个问题进行追问“您有没有什么品牌要求”,用户可通过语音或文本进行回答,用户回答“没有”,将“没有”存到内部存储a,将a里的决策因子传送到决策模型,

4、将内部存储a的决策因子逐一发送到决策模型,决策模型对决策因子进行保存;

5、判断决策模型是否可以输出决策结果,即出一个决策结果的必要信息是否已抽取完整,如果任一决策结果的预设必要信息已完整,则输出该结果,否则返回上述步骤3.a.。

因为决策模型的预设必要信息尚未完整,继续追问“您能接受的价位是多少”,用户可通过语音或文本进行回答,此时,用户回答“1000元以内”将“1000元以内”存到内部存储单元a,将内部存储单元a里的决策因子传送到决策模型,决策模型的预设必要信息仍未尚未完整,则继续追问“轮胎适配尺寸是多少”,提供条件155mm,165mm和185mm,此时用户选择185mm,将a里的决策因子传送到决策模型,此时决策模型中“米其林blahblah轮胎”的预设必要信息均已抽取完整。

6、运行决策模型。

①、判断决策模型是否含有数学计算或逻辑运算,有则进行数学或逻辑运算,无则进行下一步;

②、判断决策模型是否有显示格式要求,有则进行格式调整,无则进行下一步。

当决策模型中的预设必要信息抽取完整,则运行决策模型,输出决策结果为:“根据您提供的信息,建议您买米其林blahblah轮胎”

7、获取决策模型中输出的决策结果与运算结果,并对其进行整合。

8、推送答案。

综上所述,本发明一种交互式动态推理方法及装置通过抽取用户问题中的决策因子,并于判断出该用户问题的决策因子中不含有或缺少影响决策模型的决策因子时,引导用户提供必要的信息,抽取用户输入中的决策因子,并通过运行决策模型输出决策结果与运算结果,本发明不仅可以识别用户问题中决策因子,省去了用户重复问的麻烦,提升了用户的体验,而且可解决用户的复杂问题。

与现有技术相比,本发明具有如下优点:

1、本发明可识别用户问题中决策因子,省去重复问,提高了智能性及用户体验;

2、本发明采用交互式动态推理,利用决策模型,可解决用户的复杂问题;

3、本发明通过全局变量的设置,减少跨越不同场景时的交互轮次;

4、本发明通过场景变量的设置,为决策模型提供必要的决策因子;

5、本发明通过结果节点的设置,使得交互式推理结论可编辑;

6、本发明通过跳转节点的设置,使得场景可复用,交互可迁移。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。

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