下面参考附图描述《基于人工智能的深度问答服务提供方法和装置》实施例的基于人工智能的人机交互的交互引导方法和装置。
图1是根据《基于人工智能的深度问答服务提供方法和装置》一个实施例的基于人工智能的深度问答服务提供方法的流程图。
如图1所示,基于人工智能的深度问答服务提供方法可包括:
S1、获取用户输入的问题信息。
其中,问题信息可以是文字信息,也可以是语音信息。例如,用户输入的问题信息“北京有什么小吃?”。
S2、根据问题信息获取用户的用户需求信息。
具体地,可对问题信息进行需求分析,从而获取用户的用户需求信息。举例来说,用户需求信息可以为垂类需求、阿拉丁需求、深度问答需求、信息搜索需求等。
S3、根据用户需求信息将问题信息分发至对应的至少一个问答服务模块。
其中,问答服务模块可包括阿拉丁服务模块、垂类服务模块、深度问答服务模块和信息搜索服务模块。
在《基于人工智能的深度问答服务提供方法和装置》的一个实施例中,当用户需求信息为阿拉丁需求时,可将问题信息分发至阿拉丁服务模块;当用户需求信息为垂类需求时,可将问题信息分发至垂类服务模块;当用户需求信息为深度问答需求时,可将问题信息分发至深度问答服务模块;当用户需求信息为信息搜索需求时,可将问题分发至信息搜索服务模块。
其中,阿拉丁服务是能够为用户需求提供精准满足的一类服务的统称,例如美元兑换人民币、2015年春节放假等。举例来说,用户的问题信息为“刘德华的老婆是谁?”,则可对该问题信息进行分析,可分析出需求类型为“人物”,查询主体为“刘德华”,查询属性为“老婆”,并可将查询属性进行归一,将查询属性归一为“妻子”。然后搜索并获得结果字段为“朱丽倩”,再基于自然语言生成技术(NaturalLanguageGeneration)生成问答结果“刘德华的老婆是朱丽倩”。再例如:用户的问题信息为“北京明天热吗?”,通过搜索并获得结果字段为“35摄氏度”,可基于常识知识库和预设的规则,生成问答结果“明天天气很热,最高温度为35摄氏度,建议注意防暑降温。”其中,常识知识库可包括常识类知识,如温度高于30摄氏度属于天气热。
垂类服务是针对垂类需求进行多轮交互的服务,例如“订机票”等。垂类服务主要通过对话控制技术(DialogueManagement)和对话策略技术(DialoguePolicy),对用户的需求进行澄清,从而向用户提供满足用户需求的问答结果。举例来说,用户的问题信息为“北京到上海的机票”,则可对该问题信息进行分析,然后向用户反问“您的出发日期是哪天?”,用户回答“明天”,然后继续反问“您对航空公司是否有要求?”等,逐步澄清用户的需求,并最终返回满足用户需求的问答结果。
深度问答服务为针对用户输入的问题信息,基于深入的语义分析和知识挖掘技术,从而为用户提供精准的问答结果的服务。当用户需求信息为深度问答需求时,深度问答服务模块可接收问题信息,并根据问题信息获取对应的问题类型,然后根据问题类型选择对应的问答模式,以及根据选择的答案生成模式和问题信息生成对应的问答结果。其中,问题类型可包括实体类型、观点类型和片段类型。
更具体地,当问题类型为实体类型时,可根据问题信息生成实体类问题信息,并基于搜索引擎抓取的摘要和历史展现日志对实体类问题信息进行扩展以生成同族实体问题信息簇。其中,同族实体问题信息簇分别对应候选答案。然后从同族实体问题信息簇分别对应候选答案中抽取候选实体,再计算候选实体的置信度,以及将置信度大于预设置信度阈值的候选实体作为问答结果进行反馈。举例来说,问题信息为“刘德华老婆是谁?”,候选答案为“其实早在九二年时就有报道,刘德华和朱丽倩已经在加拿大秘密注册结婚…”,其中,候选实体为“刘德华”、“朱丽倩”、“加拿大”。然后基于实体知识库和问答语义匹配模型计算各候选实体的置信度,可计算出候选实体“朱丽倩”的置信度大于预设置信度阈值,则可确定“朱丽倩”为问答结果。另外,还可将候选答案中首次出现“朱丽倩”的分句作为答案摘要。
当问题类型为观点类型时,可获取问题信息对应的候选答案,并对候选答案进行切分以生成多个候选答案短句,然后对多个候选答案短句进行聚合以生成观点聚合簇。具体地,可根据短句中词汇的IDF(反文档频率)得分提取候选答案短句中的关键词,并对包含否定词的关键词进行泛化并生成否定标签,然后基于否定标签将关键词用向量进行表示,计算每两个关键词之间的向量夹角和/或语义相似度,然后对向量夹角小于预设角度或语义相似度大于预设阈值的候选答案进行聚合以生成观点聚合簇。
在此之后,可判断观点聚合簇的观点类型。其中,观点可包括是非类、评价类、建议类等。具体地,可通过预先设定的规则或者基于统计模型确定观点聚合簇的观点类型。然后根据观点类型从对应的观点聚合簇中选择出答案观点。其中,选择答案观点的规则可包括但不仅限于选取信息覆盖最全面的答案观点、选取IDF*log(IDF)值最低的答案观点和选取在候选答案对应的文章中出现次数最多的答案观点。其中,IDF为反文档频率。在此之后,可生成答案观点对应的摘要,然后可对答案观点进行评分,并将评分大于预设评分阈值的答案观点作为问答结果进行反馈。举例来说,问题信息为“怀孕注意事项”,其中一个候选答案为“怀孕时应谨守医、多、战原则,亦即定期看医师,多卧床休息,战胜自己的不良习惯。”,可将该候选答案切分为“怀孕时应谨守医、多、战原则”、“亦即定期看医师”、“多卧床休息”、“战胜自己的不良习惯”四个候选答案短句。然后可将候选答案短句中重复的内容或者近似的内容进行聚合生成观点聚合簇,并选出答案观点。之后,可根据信息丰富度、论据充分度、信息冗余度等对答案观点进行评分,并将评分大于预设评分阈值的答案观点作为问答结果进行反馈。此外,在选出答案观点后,可获取其在来源文章中所在的句子,然后按照预定长度截取句子,从而生成该答案观点对应的摘要。之后可根据内容丰富度、答案权威性对摘要进行排序。
当问题类型为片段类型时,可获取问题信息对应的候选答案,并对候选答案进行切分以生成多个候选答案短句,然后对多个候选答案短句进行重要度打分以生成候选答案短句对应的短句重要度特征,并根据短句重要度特征生成答案摘要,然后可根据答案摘要的短句重要度特征、答案权威性、问题信息的相关性和答案的丰富度对答案质量进行打分。其中,短句重要度特征可包括聚合特征、相关度特征、类型特征和问题答案匹配度特征。其中,聚合特征用于衡量短句的重复度,例如:词向量质心特征、NGram(计算出现概率)特征、Lexrank(多文本自动摘要)特征等。类型特征为问题的类型特征,如WHAT(什么)类型、WHY(为什么)类型、HOW(如何)类型等。答案权威性为答案来源的网站的权威度。在此之后,可获取用户的行为数据,然后根据用户的行为数据和打分结果对候选答案进行排序,最终将排序结果作为问答结果进行反馈。其中,用户的行为数据是可包括用户对问答结果的点击行为、在问答结果上停留的时间、通过当前的问答结果跳转至其他问答结果等用户的历史行为信息。
当用户需求信息为信息搜索需求时,信息搜索服务模块可接收问题信息,并根据问题信息进行搜索以生成多个候选网页,然后对候选网页进行篇章分析以生成对应的候选篇章。具体地,可对候选网页进行篇章内容抽取、篇章主题分割和篇章关系分析生成对应的候选篇章。其中,篇章内容抽取主要为识别候选网页的正文部分,删除与用户需求信息无关的内容。篇章主题分割为对篇章的主题结构进行分析,可将篇章划分为多个子主题。篇章关系分析为分析篇章中多个子主题之间的关系,例如并列关系等。在生成候选篇章之后,可对候选篇章中的句子进行打分排序。其中,打分排序主要基于句子在候选篇章中的重要度以及句子与用户需求信息之间的相关度。在此之后,可获取用户的需求场景信息,并根据需求场景信息和打分排序结果生成摘要,最终将摘要作为问答结果进行反馈。其中场景信息可包括移动终端场景、电脑场景。当场景信息为移动终端场景时,则可对句子进行压缩简写,使生成的摘要尽量简明扼要;当场景信息为电脑场景时,可对句子进行拼接融合,使得生成的摘要详细清楚。当然,生成候选篇章时,由于候选篇章中的内容均与用户需求信息具有相关性,则可能会有重复或互补的内容,则需要对多个候选篇章的信息进行聚合。
S4、接收至少一个问答服务模块返回的问答结果,并对问答结果进行决策以确定最终的问答结果。具体地,如图2所示,可包括以下步骤:
S41、接收至少一个问答服务模块返回的问答结果。
S42、根据问题信息生成需求分析特征。
S43、获取各个问答服务模块返回的问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征。
S44、根据需求分析特征、问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征对问答结果进行决策以确定最终的问答结果。
具体地,对问答结果进行决策以确定最终的问答结果主要基于以下几个特征:1、需求分析特征,通过对用户的问题信息进行需求分析,可选择更符合用户需求的问答服务模块提供的问答结果。2、问答结果置信度特征,每个问答服务模块提供的问答结果均具有置信度,可选择置信度高的问答结果。3、用户的对话交互信息的上下文特征,可选择更符合上下文信息的问答结果。4、用户的个性化模型特征,可选择更符合用户个性化需求的问答结果。其中,需求分析特征、问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征分别对应有各自的决策权重。基于以上特征对问答结果进行决策,从而确定最终的问答结果。在确定最终的问答结果后,可反馈给用户,从而满足用户的需求。其中,问答结果可通过语音播报的方式,亦可以通过屏幕显示的方式反馈给用户。采用语音播报的方式使得人机交互的过程更加简便、自然。
另外,还可根据用户的日志基于增强学习模型对需求分析特征、问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征的决策权重进行训练,从而为用户提供更符合用户需求的问答结果。
另外,如图3所示,在步骤S1之后,还可包括以下步骤:
S5、获取与用户的对话交互信息。
S6、根据对话交互信息的对话上文对问题信息进行补全。
具体地,在多轮交互过程中,用户通常会基于对话上文省略问题信息中的一部分内容,因此需要对问题信息进行补全,从而澄清用户的需求。例如:对话上文为“北京有什么小吃?”,而问题信息为“那特产呢?”,则需要对用户输入的问题信息进行补全,生成新的问题信息“北京有什么特产?”。
《基于人工智能的深度问答服务提供方法和装置》实施例的基于人工智能的深度问答服务提供方法,通过获取用户输入的问题信息,并根据问题信息获取用户的用户需求信息,以及根据用户需求信息将问题信息分发至对应的至少一个问答服务模块,并接收至少一个问答服务模块返回的问答结果,最终对问答结果进行决策以确定最终的问答结果,能够针对用户的深度问题为用户提供更加准确的问答结果,提升用户使用满意度。
为实现上述目的,《基于人工智能的深度问答服务提供方法和装置》还提出一种基于人工智能的深度问答服务提供装置。
图4是根据《基于人工智能的深度问答服务提供方法和装置》一个实施例的基于人工智能的深度问答服务提供装置的结构示意图一。
如图4所示,该基于人工智能的深度问答服务提供装置可包括:输入接收模块1000、分发模块2000、问答服务模块3000和决策模块4000。
输入接收模块1000用于获取用户输入的问题信息。其中,问题信息可以是文字信息,也可以是语音信息。例如,用户输入的问题信息“北京有什么小吃?”。分发模块2000用于根据问题信息获取用户的用户需求信息,并根据用户需求信息将问题信息分发至对应的至少一个问答服务模块3000。其中,如图5所示,问答服务模块3000可包括阿拉丁服务模块3100、垂类服务模块3200、深度问答服务模块3300和信息搜索服务模块3400。
具体地,分发模块2000可对问题信息进行需求分析,从而获取用户的用户需求信息。举例来说,当用户需求信息为阿拉丁需求时,可将问题信息分发至阿拉丁服务模块;当用户需求信息为垂类需求时,可将问题信息分发至垂类服务模块;当用户需求信息为深度问答需求时,可将问题信息分发至深度问答服务模块;当用户需求信息为信息搜索需求时,可将问题分发至信息搜索服务模块。
多个问答服务模块3000用于根据接收到的问题信息生成问答结果并返回至决策模块4000。
其中,阿拉丁服务是能够为用户需求提供精准满足的一类服务的统称,例如美元兑换人民币、2015年春节放假等。举例来说,用户的问题信息为“刘德华的老婆是谁?”,则阿拉丁服务模块3100可对该问题信息进行分析,可分析出需求类型为“人物”,查询主体为“刘德华”,查询属性为“老婆”,并可将查询属性进行归一,将查询属性归一为“妻子”。然后搜索并获得结果字段为“朱丽倩”,再基于自然语言生成技术(NaturalLanguageGeneration)生成问答结果“刘德华的老婆是朱丽倩”。再例如:用户的问题信息为“北京明天热吗?”,通过搜索并获得结果字段为“35摄氏度”,可基于常识知识库和预设的规则,生成问答结果“明天天气很热,最高温度为35摄氏度,建议注意防暑降温。”其中,常识知识库可包括常识类知识,如温度高于30摄氏度属于天气热。
垂类服务是针对垂类需求进行多轮交互的服务,例如“订机票”等。垂类服务模块3200主要通过对话控制技术(DialogueManagement)和对话策略技术(DialoguePolicy),对用户的需求进行澄清,从而向用户提供满足用户需求的问答结果。举例来说,用户的问题信息为“北京到上海的机票”,则可对该问题信息进行分析,然后向用户反问“您的出发日期是哪天?”,用户回答“明天”,然后继续反问“您对航空公司是否有要求?”等,逐步澄清用户的需求,并最终返回满足用户需求的问答结果。
深度问答服务为针对用户输入的问题信息,基于深入的语义分析和知识挖掘技术,从而为用户提供精准的问答结果的服务。当用户需求信息为深度问答需求时,深度问答服务模块3300可接收问题信息,并根据问题信息获取对应的问题类型,然后根据问题类型选择对应的问答模式,以及根据选择的答案生成模式和问题信息生成对应的问答结果。其中,问题类型可包括实体类型、观点类型和片段类型。
其中,如图6所示,深度问答服务模块3300具体包括第一接收子模块3310、问题类型获取子模块3320和第一问答结果生成子模块3330。
第一接收子模块3310用于接收问题信息。问题类型获取子模块3320用于根据问题信息获取对应的问题类型。
第一问答结果生成子模块3330用于根据问题类型选择对应的问答模式,并根据选择的答案生成模式和问题信息生成对应的问答结果。
当问题类型为实体类型时,可根据问题信息生成实体类问题信息,并基于搜索引擎抓取的摘要和历史展现日志对实体类问题信息进行扩展以生成同族实体问题信息簇。其中,同族实体问题信息簇分别对应候选答案。然后从同族实体问题信息簇分别对应候选答案中抽取候选实体,再计算候选实体的置信度,以及将置信度大于预设置信度阈值的候选实体作为问答结果进行反馈。举例来说,问题信息为“刘德华老婆是谁?”,候选答案为“其实早在九二年时就有报道,刘德华和朱丽倩已经在加拿大秘密注册结婚…”,其中,候选实体为“刘德华”、“朱丽倩”、“加拿大”。然后基于实体知识库和问答语义匹配模型计算各候选实体的置信度,可计算出候选实体“朱丽倩”的置信度大于预设置信度阈值,则可确定“朱丽倩”为问答结果。另外,还可将候选答案中首次出现“朱丽倩”的分句作为答案摘要。
当问题类型为观点类型时,可获取问题信息对应的候选答案,并对候选答案进行切分以生成多个候选答案短句,然后对多个候选答案短句进行聚合以生成观点聚合簇。具体地,可根据短句中词汇的IDF(反文档频率)得分提取多个候选答案短句中的关键词,并对包含否定词的关键词进行泛化并生成否定标签,然后基于否定标签将关键词用向量进行表示,计算每两个关键词之间的向量夹角和/或语义相似度,然后对向量夹角小于预设角度或语义相似度大于预设阈值的候选答案进行聚合以生成观点聚合簇。
在此之后,可判断观点聚合簇的观点类型。其中,观点可包括是非类、评价类、建议类等。具体地,可通过预先设定的规则或者基于统计模型确定观点聚合簇的观点类型。然后根据观点类型从对应的观点聚合簇中选择出答案观点。其中,选择答案观点的规则可包括但不仅限于选取信息覆盖最全面的答案观点、选取IDF*log(IDF)值最低的答案观点和选取在候选答案对应的文章中出现次数最多的答案观点。其中,IDF为反文档频率。在此之后,可生成答案观点对应的摘要,然后可对答案观点进行评分,并将评分大于预设评分阈值的答案观点作为问答结果进行反馈。举例来说,问题信息为“怀孕注意事项”,其中一个候选答案为“怀孕时应谨守医、多、战原则,亦即定期看医师,多卧床休息,战胜自己的不良习惯。”,可将该候选答案切分为“怀孕时应谨守医、多、战原则”、“亦即定期看医师”、“多卧床休息”、“战胜自己的不良习惯”四个候选答案短句。然后可将候选答案短句中重复的内容或者近似的内容进行聚合生成观点聚合簇,并选出答案观点。之后,可根据信息丰富度、论据充分度、信息冗余度等对答案观点进行评分,并将评分大于预设评分阈值的答案观点作为问答结果进行反馈。此外,在选出答案观点后,可获取其在来源文章中所在的句子,然后按照预定长度截取句子,从而生成该答案观点对应的摘要。之后可根据内容丰富度、答案权威性对摘要进行排序。
当问题类型为片段类型时,可获取问题信息对应的候选答案,并对候选答案进行切分以生成多个候选答案短句,然后对多个候选答案短句进行重要度打分以生成候选答案短句对应的短句重要度特征,并根据短句重要度特征生成答案摘要,然后可根据答案摘要的短句重要度特征、答案权威性、问题信息的相关性和答案的丰富度对答案质量进行打分。其中,短句重要度特征可包括聚合特征、相关度特征、类型特征和问题答案匹配度特征。其中,聚合特征用于衡量短句的重复度,例如:词向量质心特征、NGram(计算出现概率)特征、Lexrank(多文本自动摘要)特征等。类型特征为问题的类型特征,如WHAT(什么)类型、WHY(为什么)类型、HOW(如何)类型等。答案权威性为答案来源的网站的权威度。在此之后,可获取用户的行为数据,然后根据用户的行为数据和打分结果对候选答案进行排序,最终将排序结果作为问答结果进行反馈。其中,用户的行为数据是可包括用户对问答结果的点击行为、在问答结果上停留的时间、通过当前的问答结果跳转至其他问答结果等用户的历史行为信息。
如图7所示,信息搜索服务模块3400具体包括第二接收子模块3410、搜索子模块3420和第二问答结果生成子模块3430。其中,第二问答结果生成子模块3430具体包括篇章生成单元3431、排序单元3432、摘要生成单元3433和聚合单元3434。
第二接收子模块3410用于接收问题信息。搜索子模块3420用于根据问题信息进行搜索以生成多个候选网页。第二问答结果生成子模块3430用于对候选网页进行篇章分析以生成对应的摘要,并将摘要作为问答结果进行反馈。
具体地,篇章生成单元3431可对候选网页进行篇章内容抽取、篇章主题分割和篇章关系分析生成对应的候选篇章。其中,篇章内容抽取主要为识别候选网页的正文部分,删除与用户需求信息无关的内容。篇章主题分割为对篇章的主题结构进行分析,可将篇章划分为多个子主题。篇章关系分析为分析篇章中多个子主题之间的关系,例如并列关系等。在生成候选篇章之后,排序单元3432可对候选篇章中的句子进行打分排序。其中,打分排序主要基于句子在候选篇章中的重要度以及句子与用户需求信息之间的相关度。在此之后,摘要生成单元3433可获取用户的需求场景信息,并根据需求场景信息和打分排序结果生成摘要,最终将摘要作为问答结果进行反馈。其中场景信息可包括移动终端场景、电脑场景。当场景信息为移动终端场景时,则可对句子进行压缩简写,使生成的摘要尽量简明扼要;当场景信息为电脑场景时,可对句子进行拼接融合,使得生成的摘要详细清楚。当然,生成候选篇章时,由于候选篇章中的内容均与用户需求信息具有相关性,则可能会有重复或互补的内容,则需要聚合单元3434对多个候选篇章的信息进行聚合。
决策模块4000用于接收至少一个问答服务模块3000返回的问答结果,并对问答结果进行决策以确定最终的问答结果。其中,如图8所示,决策模块4000可包括问答结果接收子模块4100、分析子模块4200、决策子模块4300。问答结果接收子模块4100用于接收至少一个问答服务模块返回的问答结果。
分析子模块4200用于根据问题信息生成需求分析特征,并获取各个问答服务模块返回的问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征。
决策子模块4300用于根据需求分析特征、问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征对问答结果进行决策以确定最终的问答结果。
具体地,对问答结果进行决策以确定最终的问答结果主要基于以下几个特征:1、需求分析特征,通过对用户的问题信息进行需求分析,可选择更符合用户需求的问答服务模块提供的问答结果。2、问答结果置信度特征,每个问答服务模块提供的问答结果均具有置信度,可选择置信度高的问答结果。3、用户的对话交互信息的上下文特征,可选择更符合上下文信息的问答结果。4、用户的个性化模型特征,可选择更符合用户个性化需求的问答结果。其中,需求分析特征、问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征分别对应有各自的决策权重。
此外,如图9所示,决策模块4000还可包括训练子模块4400。训练子模块4400用于根据用户的日志基于增强学习模型对需求分析特征、问答结果的置信度特征、用户的对话交互信息的上下文特征以及用户的个性化模型特征的决策权重进行训练,从而为用户提供更符合用户需求的问答结果。
另外,如图10所示,基于人工智能的深度问答服务提供装置还可包括补全模块5000。补全模块5000用于获取与用户的对话交互信息,并根据对话交互信息的对话上文对问题信息进行补全。
具体地,在多轮交互过程中,用户通常会基于对话上文省略问题信息中的一部分内容,因此需要对问题信息进行补全,从而澄清用户的需求。例如:对话上文为“北京有什么小吃?”,而问题信息为“那特产呢?”,则需要对用户输入的问题信息进行补全,生成新的问题信息“北京有什么特产?”。
《基于人工智能的深度问答服务提供方法和装置》实施例的基于人工智能的深度问答服务提供装置,通过获取用户输入的问题信息,并根据问题信息获取用户的用户需求信息,以及根据用户需求信息将问题信息分发至对应的至少一个问答服务模块,并接收至少一个问答服务模块返回的问答结果,最终对问答结果进行决策以确定最终的问答结果,能够针对用户的深度问题为用户提供更加准确的问答结果,提升用户使用满意度。