人机对话方法、装置、电子设备及存储介质与流程

文档序号:21363225发布日期:2020-07-04 04:37阅读:168来源:国知局
人机对话方法、装置、电子设备及存储介质与流程

本申请涉及计算机应用技术,特别涉及人工智能领域的人机对话方法、装置、电子设备及存储介质。



背景技术:

人机对话是人工智能领域的重要课题,开放域的人机对话又称为闲聊。引导对话是在闲聊的基础上给定引导目标(即目标约束),对话过程既要满足人人对话逻辑又要完成引导目标。引导对话又可称为主动对话,通常为机器占据主动方,逐渐引导用户将对话内容转到提前设定的引导目标上。

目前常用的对话引导方式是将任务分解为内容决策和回复生成两个阶段,内容决策阶段首先基于统计技术构建候选语义(一般为词语级别),然后对候选语义评分排序确定最终语义,回复生成阶段负责生成包含最终语义的回复。

上述方式仅从对话合理性的角度出发,刻画了对话语句对“过去”(对话历史)的反馈作用,无法体现对话语句与“未来”(引导目标)的关系,更无法体现引导对话中的引导逻辑等,因此并不适合应用在引导对话中,会造成引导对话生成结果的准确性较低等。



技术实现要素:

有鉴于此,本申请提供了人机对话方法、装置、电子设备及存储介质。

一种人机对话方法,包括:

在引导对话过程中,当需要针对用户的输入生成回复时,根据引导目标及预定历史信息进行引导行为决策,确定出引导行为;

根据所述引导行为进行引导内容决策,确定出回复语义;

根据所述引导行为及所述回复语义生成回复。

根据本申请一优选实施例,所述根据引导目标及预定历史信息进行引导行为决策,确定出引导行为包括:将所述引导目标及所述预定历史信息输入预先训练得到的分类模型,得到输出的所述引导行为。

根据本申请一优选实施例,所述引导行为包括:语义行为及表达行为;其中,所述语义行为表明语义与所述引导目标的关系,所述表达行为表明语义的表达方式;

所述语义行为及所述表达行为分别包括两级行为标签。

根据本申请一优选实施例,所述预定历史信息包括:所述引导对话过程中的引导行为历史、所述引导对话过程中的对话内容核心语义的语义历史及所述引导对话过程中的对话历史。

根据本申请一优选实施例,所述根据所述引导行为进行引导内容决策,确定出回复语义包括:根据所述引导行为确定出候选语义,利用预先训练得到的评分模型对所述候选语义进行评分,选出评分最高的至少一个候选语义作为所述回复语义。

根据本申请一优选实施例,所述根据所述引导行为确定出候选语义包括:确定出所述引导行为对应的候选语义获取方式,按照确定出的候选语义获取方式确定出所述候选语义。

根据本申请一优选实施例,所述按照确定出的候选语义获取方式确定出所述候选语义包括:

通过对所述引导对话过程中的对话历史进行分析,确定出当前话题点,将所述当前话题点作为所述候选语义;

或者,将所述引导目标作为所述候选语义;

或者,根据预先构建的话题点转移图谱确定出所述当前话题点可直接转移到的话题点,作为所述候选语义;

或者,查询预先构建的知识图谱,将所述引导目标在所述知识图谱中对应的知识信息作为所述候选语义。

根据本申请一优选实施例,所述利用预先训练得到的评分模型对所述候选语义进行评分包括:针对每个候选语义,分别将所述引导目标、所述预定历史信息、所述引导行为及所述候选语义输入所述评分模型,得到输出的所述候选语义的评分。

根据本申请一优选实施例,所述根据所述引导行为及所述回复语义生成回复包括:

确定出所述引导行为对应的回复槽位模板,将所述回复语义添加到所述槽位中,得到候选回复,从所述候选回复中随机选出一个作为生成的回复;

或者,通过检索预先构建的回复库,确定出所述回复语义对应的回复语句,作为候选回复,针对每个候选回复,分别将所述引导目标、所述预定历史信息、所述引导行为、所述回复语义及所述候选回复输入所述评分模型,得到输出的所述候选回复的评分,选出评分最高的候选回复作为生成的回复;

或者,将所述引导目标、所述预定历史信息、所述引导行为及所述回复语义输入预先训练得到的回复生成模型,得到生成的回复。

根据本申请一优选实施例,该方法进一步包括:获取引导对话数据标注结果,所述引导对话数据标注结果中包括引导对话标注结果及引导行为标注结果;根据所述引导对话数据标注结果进行各模型的训练。

根据本申请一优选实施例,所述引导对话标注结果包括:基于从网络中挖掘出的一段闲聊对话、由两个标注人员相互配合继续进行聊天、并在n轮对话之后将对话内容转到引导目标上的对话文本,n为大于一的正整数,所述两个标注人员中的一个为主动方,另一个为被动方,所述引导目标仅对所述主动方可见;

所述引导行为标注结果包括:为所述对话文本中所述主动方的对话内容标注的引导行为标签。

一种人机对话装置,包括:第一决策单元、第二决策单元以及回复生成单元;

所述第一决策单元,用于在引导对话过程中,当需要针对用户的输入生成回复时,根据引导目标及预定历史信息进行引导行为决策,确定出引导行为;

所述第二决策单元,用于根据所述引导行为进行引导内容决策,确定出回复语义;

所述回复生成单元,用于根据所述引导行为及所述回复语义生成回复。

根据本申请一优选实施例,所述第一决策单元将所述引导目标及所述预定历史信息输入预先训练得到的分类模型,得到输出的所述引导行为。

根据本申请一优选实施例,所述引导行为包括:语义行为及表达行为;其中,所述语义行为表明语义与所述引导目标的关系,所述表达行为表明语义的表达方式;

所述语义行为及所述表达行为分别包括两级行为标签。

根据本申请一优选实施例,所述预定历史信息包括:所述引导对话过程中的引导行为历史、所述引导对话过程中的对话内容核心语义的语义历史及所述引导对话过程中的对话历史。

根据本申请一优选实施例,所述第二决策单元根据所述引导行为确定出候选语义,利用预先训练得到的评分模型对所述候选语义进行评分,选出评分最高的至少一个候选语义作为所述回复语义。

根据本申请一优选实施例,所述第二决策单元确定出所述引导行为对应的候选语义获取方式,按照确定出的候选语义获取方式确定出所述候选语义。

根据本申请一优选实施例,所述第二决策单元通过对所述引导对话过程中的对话历史进行分析,确定出当前话题点,将所述当前话题点作为所述候选语义,或者,将所述引导目标作为所述候选语义,或者,根据预先构建的话题点转移图谱确定出所述当前话题点可直接转移到的话题点,作为所述候选语义,或者,查询预先构建的知识图谱,将所述引导目标在所述知识图谱中对应的知识信息作为所述候选语义。

根据本申请一优选实施例,所述第二决策单元针对每个候选语义,分别将所述引导目标、所述预定历史信息、所述引导行为及所述候选语义输入所述评分模型,得到输出的所述候选语义的评分。

根据本申请一优选实施例,所述回复生成单元确定出所述引导行为对应的回复槽位模板,将所述回复语义添加到所述槽位中,得到候选回复,从所述候选回复中随机选出一个作为生成的回复;

或者,所述回复生成单元通过检索预先构建的回复库,确定出所述回复语义对应的回复语句,作为候选回复,针对每个候选回复,分别将所述引导目标、所述预定历史信息、所述引导行为、所述回复语义及所述候选回复输入所述评分模型,得到输出的所述候选回复的评分,选出评分最高的候选回复作为生成的回复;

或者,所述回复生成单元将所述引导目标、所述预定历史信息、所述引导行为及所述回复语义输入预先训练得到的回复生成模型,得到生成的回复。

根据本申请一优选实施例,所述装置中进一步包括:预处理单元,用于获取引导对话数据标注结果,所述引导对话数据标注结果中包括引导对话标注结果及引导行为标注结果,根据所述引导对话数据标注结果进行各模型的训练。

根据本申请一优选实施例,所述引导对话标注结果包括:基于从网络中挖掘出的一段闲聊对话、由两个标注人员相互配合继续进行聊天、并在n轮对话之后将对话内容转到引导目标上的对话文本,n为大于一的正整数,所述两个标注人员中的一个为主动方,另一个为被动方,所述引导目标仅对所述主动方可见;

所述引导行为标注结果包括:为所述对话文本中所述主动方的对话内容标注的引导行为标签。

一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如以上所述的方法。

一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如以上所述的方法。

上述申请中的一个实施例具有如下优点或有益效果:在引导对话过程中,当需要生成回复时,可分别根据引导目标等进行引导行为决策和引导内容决策,从而分别确定出引导行为和回复语义,进而可结合确定出的引导行为和回复语义生成回复,从而提升了生成结果的准确性;引导行为可包括语义行为和表达行为,并可分别包括两级行为标签,从而实现了对于引导行为的细粒度刻画;可结合多种信息以及机器模型等来进行引导行为决策,从而提升了引导行为决策及后续的引导内容决策结果的准确性;在进行引导内容决策时,可采用与确定出的引导行为相适应的候选语义获取方式来确定候选语义,并可结合多种信息以及机器模型等来对候选语义进行评分排序,从而进一步提升了引导内容决策结果的准确性;在根据确定出的引导行为和回复语义生成回复时,可根据实际需要灵活选择具体的实现方式,灵活方便,并可满足不同的场景需求;可基于获取到的人工合理准确标注的引导对话数据标注结果来训练各机器模型,从而提升了模型训练效果,进而进一步提升了最终的生成结果的准确性等;上述可选方式所具有的其它效果将在下文中结合具体实施例加以说明。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1为本申请所述引导对话的示意图;

图2为本申请所述人机对话方法实施例的流程图;

图3为本申请所述引导对话数据标注过程示意图;

图4为本申请所述分类模型的结构示意图;

图5为本申请所述话题点转移图谱的示意图;

图6为本申请所述评分模型的结构示意图;

图7为本申请所述回复生成模型的结构示意图;

图8为本申请所述人机对话装置80实施例的组成结构示意图;

图9为根据本申请实施例所述方法的电子设备的框图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

另外,应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

引导对话的输入为一句话或多句话构成的对话历史以及引导目标,输出是既符合人人对话逻辑又易于将对话内容转向引导目标的回复。图1为本申请所述引导对话的示意图。

从图1所示例子中可以看出,引导对话通常具有如下特点:1)对话未启,主动方心中已有对话目标;2)引导一般都有规律或技巧可循,潜藏在主动方的每句话及组成的对话流中;3)主动方的每句话都与引导目标有着千丝万缕的联系,这种联系体现了引导规律或技巧。

引导对话的本质是目标约束的对话,从引导目标的角度出发,衡量对话中每句话与引导目标的关系,可以得出引导规律或技巧,这是引导对话根本区别于普通对话的地方。本申请将这种关系(即对话语句与引导目标之间的关系)称之为引导行为。只有对引导行为进行合理有效的建模,才能更好的解决引导对话问题。

普通对话中着重描述输出对输入的反馈关系,即与“过去”的关系,而引导行为是从引导目标的角度出发,着重描述输出与引导目标之间的关系,即与“未来”的关系。另外,对话语句与引导目标之间的关系有很多种,比如从距离或强度的角度可以分为没有关系、间接关系、直接关系等,从知识的角度可以定义概念关系、属性关系、观点关系等。

本申请中可建模引导行为,即从引导目标的角度出发,衡量对话语句与引导目标的关系,构建一套专属于引导对话的行为体系,并将其应用到引导对话系统中。

图2为本申请所述人机对话方法实施例的流程图。如图2所示,包括以下具体实现方式。

在201中,在引导对话过程中,当需要针对用户的输入生成回复时,根据引导目标及预定历史信息进行引导行为决策,确定出引导行为。

在202中,根据引导行为进行引导内容决策,确定出回复语义。

在203中,根据确定出的引导行为及回复语义生成回复。

所述引导行为可包括语义行为及表达行为。其中,语义行为表明语义与引导目标的关系,即表明采用与引导目标具有何种关系的语义内容,表达行为表明语义的表达方式。另外,优选地,语义行为及表达行为可分别包括两级行为标签,如表一和表二所示。

表一语义行为

表二表达行为

如表一所示,语义行为可按照粗细粒度分为两个等级,即包括两级行为标签,第二级是对第一级行为标签的细化。

闲聊在内容上和引导目标无关,目的是为了对话合理,同时也会包含一定的引导技巧,比如已经通过关联表达拉近与目标的距离之后,又主动闲聊,可被视为引导技巧中的“欲擒故纵”。闲聊按照对话前后话题的关系可分为话题保持和话题切换两种。

社交在内容上和引导目标无关,目的是为了对话合理,同时也包含一定的引导技巧,比如已经通过关联表达拉近与目标的距离之后,又主动进行积极性的社交表达,可被视为引导技巧中的“巩固关系”。

关联是指表达和引导目标相关的内容。其中泛关联在内容上和引导目标无关,但有向引导目标引导的提示作用,比如“我有一个好消息”。目标关联是指表达和引导目标相关的内容,比如表达引导目标的概念、属性、观点、或相关信息等。关联的目的是为了合理自然的使对话转向引导目标。

目标展现是指对引导目标的直接表达,包括直接表达包含引导目标的事实、观点、经历、计划。目标展现是完成引导目标的最后一步。

如表二所示,表达行为也可按照粗细粒度分为两个等级,即包括两级行为标签。其中,“信息”是指涉及信息交互时可能采用的句式,可包括陈述、疑问、强调及感叹,“行为”是指涉及行为交互时可能采用的不同方式,可包括建议、指令及承诺,“反馈”是指可能采用的单纯的对话反馈,可包括正向反馈及负向反馈。表达行为与普通的交际功能较为类似,本实施例中需要与语义行为搭配使用,从而构成完整的引导行为。

本实施例所述方法的实现可借助于各预先训练得到的机器模型。相应地,可预先获取引导对话数据标注结果,所述引导对话数据标注结果中可包括引导对话标注结果及引导行为标注结果,并可根据获取到的引导对话数据标注结果进行各模型的训练。

引导虽然在现实中是一种典型的对话技巧,但往往是即兴而发,散布于我们可以获取到的对话文本的“角落”,自动挖掘极为困难。因此本实施例中采用人工标注的方式来获取引导对话数据。但研究经验显示,人工标注也有其自身弊端。首先约束越复杂标注难度越大,其次约束过于简单或复杂都会造成标注人员处于无从着手的状态,导致标注模式单一等。合理的约束形式以及标注流程是保证人工标注的引导对话数据质量的关键。

本实施例中所述的引导对话标注结果可包括:基于从网络中挖掘出的一段闲聊对话、由两个标注人员相互配合继续进行聊天、并在n轮对话之后将对话内容转到引导目标上的对话文本,n为大于一的正整数,两个标注人员中的一个为主动方,另一个为被动方,引导目标仅对主动方可见。

本实施例中所述的引导行为标注结果可包括:为所述对话文本中的主动方的对话内容标注的引导行为标签。

在实际应用中,引导对话标注和引导行为标注可分为两个阶段,分别标注引导对话和引导行为,这样可使得标注任务更加明确,标注人员更加专注,引导对话不会受其它因素干扰等。

引导对话标注的目标是标注一段符合引导目标约束的两人聊天内容。为了使标注人员既不会感到无从着手又不会感到过于限制,本实施例中可采用[闲聊场景+引导目标]的方式,引导标注人员开展标注工作。闲聊场景是从网络中自动挖掘出的一段闲聊对话,如可从贴吧或微博中进行挖掘等,标注人员需要阅读该闲聊对话,并继续沿着该闲聊对话往下聊天,并要求在几轮对话之后将对话内容转到引导目标上。该阶段的标注可由两个标注人员相互配合完成,其中一个为主动方,另一个为被动方。对话过程中,引导目标仅对主动方可见。闲聊场景可以为标注人员设定对话的背景、角色、起点,既引导了聊天思路又不会限制具体的引导过程,使标注数据既丰富多样又合理自然。

引导行为标注的目标是为引导对话的主动方标注具体的引导行为标签。该过程的输入是引导对话标注阶段返回的对话文本,标注由可由一个标注人员单独完成,为引导对话中主动方的对话内容从语义行为和表达行为两个角度各标注一个行为标签。

结合上述介绍,图3为本申请所述引导对话数据标注过程示意图。如图3所示,标注的语义行为的行为标签和表达行为的行为标签均可细化到最后一级。

根据获取到的引导对话数据标注结果,可完成所需的各模型的训练。

这样,在引导对话过程中,当需要针对用户的输入生成回复时,可将引导目标及预定历史信息输入预先训练得到的分类模型,从而得到输出的引导行为,实现引导行为决策。

其中,预定历史信息可包括:引导对话过程中的引导行为历史、引导对话过程中的对话内容核心语义的语义历史及引导对话过程中的对话历史。以对话历史为例,假设当前进行到了引导对话过程中的第五轮对话,那么之前各轮对话内容即构成所述对话历史。核心语义可通过分析得到。所述预定历史信息仅为举例说明,并不用于限制本申请的技术方案,具体包括哪些信息可根据实际需要而定。

图4为本申请所述分类模型的结构示意图。如图4所示,分类模型中可进一步包括语言子模型、第一神经网络(nn,neuralnetworks)子模型以及第二神经网络子模型,其中语言子模型可为知识增强的语义表示模型(ernie,enhancedrepresentationthroughknowledgeintegration)。可首先利用语言子模型对引导目标、行为历史、语义历史及对话历史进行编码,然后可将编码结果分别输入第一神经网络子模型及第二神经网络子模型,从而分别获取到所需的语义行为和表达行为,语义行为和表达行为共同构成引导行为。训练阶段,将引导对话数据标注结果作为训练数据,通过对比模型预测的引导行为和人工标注的引导行为,优化分类模型。应用阶段,可针对实际的对话内容,利用分类模型预测出引导行为,供后续使用。

之后,可根据引导行为进行引导内容决策,确定出回复语义。引导内容决策可包括候选语义获取及评分排序两个步骤。优选地,可首先根据引导行为确定出候选语义,之后可利用预先训练得到的评分模型对各候选语义进行评分,选出评分最高的至少一个候选语义作为回复语义。

其中,根据引导行为确定出候选语义时,可首先确定出引导行为对应的候选语义获取方式,之后可按照确定出的候选语义获取方式确定出候选语义。

候选语义获取方式可包括:通过对引导对话过程中的对话历史进行分析,确定出当前话题点,将当前话题点作为候选语义;或者,将引导目标作为候选语义;或者,根据预先构建的话题点转移图谱确定出当前话题点可直接转移到的话题点,作为候选语义;或者,查询预先构建的知识图谱,将引导目标在知识图谱中对应的知识信息作为候选语义。

上述各候选语义获取方式主要可归为三类,分别为:对话场景、话题点转移图谱和知识图谱。不同的引导行为可访问不同的语义资源来获取候选语义。

其中,对话场景可以是指对话历史、引导目标、自然语言理解(nlu,naturallanguageunderstanding)分析结果等信息。比如,当引导行为表明需要保持当前话题点时,即当引导行为中的语义行为为话题保持时,可通过nlu分析对话历史确定出当前话题点,将当前话题点作为候选语义。再比如,当引导行为中的语义行为为目标展现时,可将引导目标作为候选语义。

话题点转移图谱可通过分析大规模对话数据预先构建。比如,当引导行为中的语义行为为社交、话题切换或目标关联时,可根据话题点转移图谱确定出当前话题点可直接转移到的话题点,即确定出当前话题点映射到话题点知识图谱后所有可直接转移到的话题点,作为候选语义。图5为本申请所述话题点转移图谱的示意图。

知识图谱为通过知识挖掘技术构建的概念、实体、及其相互的关系图谱。比如,当引导行为中的语义行为为目标关联或目标展现时,可根据具体的行为类型,查询引导目标在知识图谱中对应的知识信息作为候选语义。

在得到候选语义之后,可利用预先训练得到的评分模型对各候选语义进行评分。具体地,针对每个候选语义,可分别将引导目标、预定历史信息、引导行为及该候选语义输入评分模型,从而得到输出的该候选语义的评分。预定历史信息可包括行为历史、语义历史和对话历史。

图6为本申请所述评分模型的结构示意图。如图6所示,评分模型中可包括语言子模型及神经网络子模型,语言子模型可为ernie模型。首先,可利用语言子模型对引导目标、行为历史、语义历史、对话历史、引导行为及候选语义进行编码,然后通过神经网络子模型根据编码结果对候选语义进行评分。评分模型可采用动态参数方案实现,即以引导行为决策得到的引导行为概率分布作为偏置,对提前设定的参数memory进行加权组合,动态获取自适应于当前引导行为的引导内容决策网络参数。训练阶段,将引导对话数据标注结果作为训练数据,标注数据本身的核心语义作为正例,召回的候选语义(过滤掉与正例相似的情况)作为负例,优化评分模型使得正例得分大于负例。应用阶段,可针对实际的对话内容以及召回的候选语义等,选择评分最高的至少一个候选语义作为回复语义,具体数量可根据实际需要而定,通常来说,选择评分最高的一个候选语义作为回复语义即可。

在分别确定出引导行为及回复语义之后,即可根据引导行为及回复语义生成回复,即产生实际的回复语句。

生成方式可包括如下几种:

1)模板话术:确定出引导行为对应的回复槽位模板,将回复语义添加到槽位中,得到候选回复,从候选回复中随机选出一个作为生成的回复。该方式需要预先针对不同的引导行为(语义行为和表达行为的组合),分别配置好所有可行的回复槽位模板。比如,确定出的引导行为对应的回复槽位模板数为10,将回复语义添加到各回复槽位模板中的槽位中后,可得到10个候选回复,可从中随机选出一个作为生成的回复,即产生的候选回复可以直接随机选取使用,或者,也可以再经过排序选取或润色后使用。

2)检索排序:该方式包括候选回复获取和评分排序两个步骤,可首先通过检索预先构建的回复库,确定出回复语义对应的回复语句,作为候选回复,之后可对各候选回复进行评分排序,将评分最高的候选回复作为生成的回复。在对每个候选回复进行评分时,可分别将引导目标、预定历史信息、引导行为、回复语义及该候选回复输入评分模型,从而得到输出的该候选回复的评分,预定历史信息可包括行为历史、语义历史和对话历史。可将评分最高的候选回复直接作为生成的回复,或者,也可进行润色后使用。

3)模型生成:可将引导目标、预定历史信息、引导行为及回复语义输入预先训练得到的回复生成模型,从而得到生成的回复,预定历史信息可包括行为历史、语义历史和对话历史。图7为本申请所述回复生成模型的结构示意图。如图7所示,其中可包括编码器和生成器,生成器也可采用动态参数方案,编码器对输入的引导目标、行为历史、语义历史、对话历史、引导行为及回复语义进行编码,自适应于当前引导行为的生成器完成句子解码,输出生成的回复。训练阶段,将引导对话数据标注结果作为训练数据,通过对比模型生成的回复与人工标注的回复的差异,对模型进行优化。应用阶段,可将模型生成的回复直接作为所需的回复。

模板话术和检索排序方式主要适用于回复语义不是直接可用作回复句子的情况,模型生成方式可适用于回复语义不是直接可用作回复句子的情况以及回复语义直接可用作回复句子的情况,对于回复语义直接可用作回复句子的情况,还可直接选取评分最高的回复语义作为生成的回复。

另外,本实施例中还可采用基于强化学习的引导对话学习方式,用户收到回复后会继续上述对话流程,多轮对话之后,可通过评估对话的合理程度和引导完成质量等,给予机器相应的奖励,采用强化学习技术优化引导决策。该方式可应用于模型训练阶段。

需要说明的是,对于前述的方法实施例,为了简单描述,将其表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

总之,采用本申请方法实施例所述方案,在引导对话过程中,当需要生成回复时,可分别根据引导目标等进行引导行为决策和引导内容决策,从而分别确定出引导行为和回复语义,进而可结合确定出的引导行为和回复语义生成回复,从而提升了生成结果的准确性;引导行为可包括语义行为和表达行为,并可分别包括两级行为标签,从而实现了对于引导行为的细粒度刻画;可结合多种信息以及机器模型等来进行引导行为决策,从而提升了引导行为决策及后续的引导内容决策结果的准确性;在进行引导内容决策时,可采用与确定出的引导行为相适应的候选语义获取方式来确定候选语义,并可结合多种信息以及机器模型等来对候选语义进行评分排序,从而进一步提升了引导内容决策结果的准确性;在根据确定出的引导行为和回复语义生成回复时,可根据实际需要灵活选择具体的实现方式,灵活方便,并可满足不同的场景需求;可基于获取到的人工合理准确标注的引导对话数据标注结果来训练各机器模型,从而提升了模型训练效果,进而进一步提升了最终的生成结果的准确性等。

以上是关于方法实施例的介绍,以下通过装置实施例,对本申请所述方案进行进一步说明。

图8为本申请所述人机对话装置80实施例的组成结构示意图。如图8所示,包括:第一决策单元801、第二决策单元802以及回复生成单元803。

第一决策单元801,用于在引导对话过程中,当需要针对用户的输入生成回复时,根据引导目标及预定历史信息进行引导行为决策,确定出引导行为。

第二决策单元802,用于根据引导行为进行引导内容决策,确定出回复语义。

回复生成单元803,用于根据确定出的引导行为及回复语义生成回复。

第一决策单元801可将引导目标及预定历史信息输入预先训练得到的分类模型,从而得到输出的引导行为。

所述引导行为可包括:语义行为及表达行为;其中,语义行为表明语义与引导目标的关系,表达行为表明语义的表达方式。语义行为及表达行为可分别包括两级行为标签,如表一和表二所示。

预定历史信息可包括:引导对话过程中的引导行为历史、引导对话过程中的对话内容核心语义的语义历史及引导对话过程中的对话历史。

第二决策单元802可根据引导行为确定出候选语义,并利用预先训练得到的评分模型对各候选语义进行评分,选出评分最高的至少一个候选语义作为回复语义。

其中,在根据引导行为确定出候选语义时,第二决策单元802可首先确定出引导行为对应的候选语义获取方式,进而可按照确定出的候选语义获取方式确定出候选语义。

具体地,第二决策单元802可通过对引导对话过程中的对话历史进行分析,确定出当前话题点,将当前话题点作为候选语义,或者,将引导目标作为候选语义,或者,根据预先构建的话题点转移图谱确定出当前话题点可直接转移到的话题点,作为候选语义,或者,查询预先构建的知识图谱,将引导目标在知识图谱中对应的知识信息作为候选语义。

第二决策单元802可针对每个候选语义,分别将引导目标、预定历史信息、引导行为及该候选语义输入评分模型,从而得到输出的该候选语义的评分。

回复生成单元803可根据第一决策单元801确定出的引导行为及第二决策单元802确定出的回复语义生成回复。

具体地,回复生成单元803可确定出引导行为对应的回复槽位模板,将回复语义添加到槽位中,得到候选回复,从候选回复中随机选出一个作为生成的回复。或者,回复生成单元803可通过检索预先构建的回复库,确定出回复语义对应的回复语句,作为候选回复,针对每个候选回复,分别将引导目标、预定历史信息、引导行为、回复语义及该候选回复输入评分模型,得到输出的该候选回复的评分,选出评分最高的候选回复作为生成的回复。或者,回复生成单元803可将引导目标、预定历史信息、引导行为及回复语义输入预先训练得到的回复生成模型,得到生成的回复。

图8所示装置中还可进一步包括:预处理单元800,用于获取引导对话数据标注结果,引导对话数据标注结果中包括引导对话标注结果及引导行为标注结果,根据引导对话数据标注结果进行各模型的训练。

其中,引导对话标注结果可包括:基于从网络中挖掘出的一段闲聊对话、由两个标注人员相互配合继续进行聊天、并在n轮对话之后将对话内容转到引导目标上的对话文本,n为大于一的正整数,两个标注人员中的一个为主动方,另一个为被动方,引导目标仅对主动方可见。引导行为标注结果可包括:为对话文本中主动方的对话内容标注的引导行为标签。

图8所示装置实施例的具体工作流程请参照前述方法实施例中的相关说明,不再赘述。

总之,采用本申请装置实施例所述方案,在引导对话过程中,当需要生成回复时,可分别根据引导目标等进行引导行为决策和引导内容决策,从而分别确定出引导行为和回复语义,进而可结合确定出的引导行为和回复语义生成回复,从而提升了生成结果的准确性;引导行为可包括语义行为和表达行为,并可分别包括两级行为标签,从而实现了对于引导行为的细粒度刻画;可结合多种信息以及机器模型等来进行引导行为决策,从而提升了引导行为决策及后续的引导内容决策结果的准确性;在进行引导内容决策时,可采用与确定出的引导行为相适应的候选语义获取方式来确定候选语义,并可结合多种信息以及机器模型等来对候选语义进行评分排序,从而进一步提升了引导内容决策结果的准确性;在根据确定出的引导行为和回复语义生成回复时,可根据实际需要灵活选择具体的实现方式,灵活方便,并可满足不同的场景需求;可基于获取到的人工合理准确标注的引导对话数据标注结果来训练各机器模型,从而提升了模型训练效果,进而进一步提升了最终的生成结果的准确性等。

根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。

如图9所示,是根据本申请实施例所述方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图9所示,该电子设备包括:一个或多个处理器y01、存储器y02,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示图形用户界面的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器y01为例。

存储器y02即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的方法。

存储器y02作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的方法对应的程序指令/模块。处理器y01通过运行存储在存储器y02中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的方法。

存储器y02可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器y02可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器y02可选包括相对于处理器y01远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、区块链网络、局域网、移动通信网及其组合。

电子设备还可以包括:输入装置y03和输出装置y04。处理器y01、存储器y02、输入装置y03和输出装置y04可以通过总线或者其他方式连接,图9中以通过总线连接为例。

输入装置y03可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置y04可以包括显示设备、辅助照明装置和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器、发光二极管显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。

此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用集成电路、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,阴极射线管或者液晶显示器监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网、广域网、区块链网络和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

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