一种基于状态树的对话管理方法技术

技术编号:21453966 阅读:16 留言:0更新日期:2019-06-26 04:47
本发明专利技术公开一种基于状态树的对话管理方法,将对话过程中的话题状态存储在状态树结构中,可以在更大程度上利用上下文来理解客户的真实意图,极大的提高了问答效率,有效的避免了对客户各种省略问答无法响应的现象,同时该对话管理方法可实现基于上下文省略的多种对话模式,方便的对数据进行增删查改,极大的减少了数据维护量。

【技术实现步骤摘要】
一种基于状态树的对话管理方法
本专利技术涉及一种基于状态树的对话管理方法,是一种基于上下文信息,可对客户问题进行多轮交互的系统方法,属于自然语言处理和机器学习领域。
技术介绍
对话管理(DialogManagement,DM)控制着人机对话的过程,DM根据对话上下文状态信息,决定此刻对用户的响应。目前,最常见的还是任务驱动的多轮对话。以金融行业为例,用户带着明确的目的如汇款、缴费等,对话系统需要与客户进行多轮交互,以确定在不同条件下,客户应该携带什么材料、如何办理业务。在同一个话题范围内,客户可能会依据该话题衍生出许多其他的子问题,同时,客户的询问顺序并不一致,且包含大量的省略式问句,因此,目前依据于槽值的对话管理系统,在处理客户复杂的需求时往往力不从心。参考附图1“汇款”话题状态树结构图,系统将每个明确答案所需要条件(父节点)信息作为状态,包括槽值,实体,意图等,其中槽值以“$”开始;实体以“@”开始;QA意图以“#”开始。其中,槽值是多轮对话过程中将用户意图转化为明确答案所需要补全的信息,也即产生答案所需要的条件。实体作为最小的语义体,可以明确客户的具体需求,是对话系统定位到答案的必要条件。如客户询问“汇款”,其实是询问业务办理流程(默认实体@流程),客户询问“汇款什么时候到账”,其实询问的是到账时间(@到账时间)。对话系统通过将问答中的变量定义为槽值,实体,由此可以实现更加灵活的问答模式。例如,客户在询问办理“汇款”的流程时,可能会穿插着询问手续费、到账时间、能否代办、需要携带的证件等信息;另外,客户在问答时,也可能会包括大量的省略式问题,如:“汇款-个人-对公呢”,“个人汇款手续费-对公呢”等。一个简洁高效的对话系统,应该具有较小的数据维护量,可实现更加灵活的问答模式。基于状态树的对话管理方法,以话题作为一个基本对话单元,通过将问答过程中的变量以话题状态的形式保存起来,可实现基于上下文省略的多种对话模式,同时极大的减少了数据维护量。
技术实现思路
本专利技术要解决的技术问题是提供一种基于状态树的对话管理方法,解决对客户各种省略问答无法响应的现象。为了解决所述技术问题,本专利技术采用的技术方案是:一种基于状态树的对话管理方法,以话题作为基本的对话单元,将单轮对话和多轮对话中的话题状态存储在状态树结构中,状态树以当前话题为根节点,反应话题上文文状态的QA意图、场景意图、场景槽值、问答实体作为根节点下的多层子节点,状态树最末端的子节点为客户问题对应的答案,槽值为多轮对话过程中将用户意图转化为明确答案需要补全的信息,实现是对话过程中的最小语义实体;对话系统接收到客户问题对应的问题意图以后,根据是否切换话题并进行状态树更新,并根据是否达到答案条件来决定系统是反问话题状态还是直接给出答案。进一步的,对话系统接收到客户问题以后,首先对问题进行意图分类,判断问题是继续话题还是切换话题,如果是切换话题,则需要清空话题状态;如果继续话题,则需要更新状态树。进一步的,如果切换话题,则清空状态树中除实体外的所有状态,并更新问题中包括的上下文状态,并依据状态树进行答案匹配;如果实体不为空且客户问题中不包括实体信息,推定客户是在询问新话题中的实体信息,在更新完问题中所包含的上下文状态后,再依据更新之后的状态树进行答案条件匹配。进一步的,如果话题切换到场景意图,对话系统依据更新后的状态树自上而下的匹配答案所对应的状态条件,如果缺少生成答案的槽值,则进行反问,直至生成答案;如果话题切换至QA意图,对话系统直接给出答案,并更新话题状态。进一步的,对话系统进行槽值反问时,会判断答案所缺少槽值条件的主次顺序,优先反问父节点的槽值,如果问题中包括实体信息,对话系统仍根据明确答案所缺少的槽值信息进行反问。进一步的,如果继续话题,具体步骤为:S1)、对话系统首会判断问题是否匹配该话题内的完整QA问答,即意图分类返回的意图与话题中的QA意图完全匹配,如果是,直接给出答案,并更新状态信息;如果不是,则进入下一步;S2)、如果上一个问题意图是槽场景,则优先继续槽值场景,对话系统根据状态的树状结构图进行状态匹配,如果话题状态满足答案所需要的条件父节点,则返回答案,否则系统反问缺少父节点的槽值信息,根据槽值信息生成答案,如果继续槽值场景不能返回答案或反问响应,则进入下一步;S3)、如果上一个问题意图是QA意图,则优先继续QA,如果不是,系统会判断问题是否更新实体状态,判断是否为基于上下文状态的省略问答,如果是,实体信息通过绑定QA意图构成一个新的QA意图,生成新QA意图对应的答案。进一步的,如果问题不能切换话题,且实体、槽值状态不能更新,导致不能继续话题,则对话系统认定为噪音问题,系统如果接受到超过两次的噪音,则会清空话题状态。进一步的,话题状态更新规则为:同一等级的槽值状态只能包括一个;如果更新了父节点槽值状态,则其子节点状态均被清空;除去实体状态外的所有状态在切换话题时均被清空;同一个话题内,问题进入槽场景,进入QA,或者通过继续话题返回答案时,才会更新话题。进一步的,使用机器学习进行问题意图分类,首先将问题进行分词,然后根据权重最高的分词通过索引查询返回相似问题,最后将向量化的相似问题与客户问题进行余弦相似度比较,并返回相似度最高的意图。本专利技术的有益效果:本专利技术将对话过程中的话题状态存储在状态树结构中,可以在更大程度上利用上下文来理解客户的真实意图,极大的提高了问答效率,有效的避免了对客户各种省略问答无法响应的现象,同时该对话管理方法可实现基于上下文省略的多种对话模式,方便的对数据进行增删查改,极大的减少了数据维护量。附图说明图1为汇款话题状态树的结构示意图;图2为对话系统功能框图;图3为基于状态树的对话管理系统图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步的说明。实施例1本实施例立足于智能对话系统,提供一种基于状态树结构的对话管理方法,通过对槽值、实体、意图等上下文状态存储到树结构中,可以实现更加灵活的问答模式。另外,基于状态树结构的对话管理方法,可以为数据维护人员、问答模式设计人员提供更加简明、有效的问答逻辑。本方法也可以使用于搭载智能对话系统的任何设备之上,如手机、电脑、智能机器人等。本实施例基于状态的对话管理方法,以话题作为基本的对话单元,将单轮对话和多轮对话中的话题状态存储在状态树结构中,状态树以当前话题为根节点,反应话题上文文状态的QA意图、场景意图、场景槽值、问答实体作为根节点下的多层子节点,状态树最末端的子节点为客户问题对应的答案,槽值为多轮对话过程中将用户意图转化为明确答案需要补全的信息,实现是对话过程中的最小语义实体;对话系统接收到客户问题对应的问题意图以后,根据是否切换话题并进行状态树更新,并根据是否达到答案条件来决定系统是反问话题状态还是直接给出答案。如图3所示,对话系统接受到问题之后,首先对问题进行意图分类,判断问题是否是继续话题还是切换话题,并更新状态信息,然后进行系统响应。该方法使用机器学习进行意图分类,具体步骤如下:1)、构建语料库:依据现有的语料库,按照不同的意图进行分类,同时,通过记录问答日志,不断地丰富语料库。2)分词:使用pythonjieba库进行分词。另外,根据语料库中的问题构建倒排索引,本文档来自技高网
...

【技术保护点】
1.一种基于状态树的对话管理方法,其特征在于:以话题作为基本的对话单元,将单轮对话和多轮对话中的话题状态存储在状态树结构中,状态树以当前话题为根节点,反应话题上文文状态的QA意图、场景意图、场景槽值、问答实体作为根节点下的多层子节点,状态树最末端的子节点为客户问题对应的答案,槽值为多轮对话过程中将用户意图转化为明确答案需要补全的信息,实现是对话过程中的最小语义实体;对话系统接收到客户问题对应的问题意图以后,根据是否切换话题并进行状态树更新,并根据是否达到答案条件来决定系统是反问话题状态还是直接给出答案。

【技术特征摘要】
1.一种基于状态树的对话管理方法,其特征在于:以话题作为基本的对话单元,将单轮对话和多轮对话中的话题状态存储在状态树结构中,状态树以当前话题为根节点,反应话题上文文状态的QA意图、场景意图、场景槽值、问答实体作为根节点下的多层子节点,状态树最末端的子节点为客户问题对应的答案,槽值为多轮对话过程中将用户意图转化为明确答案需要补全的信息,实现是对话过程中的最小语义实体;对话系统接收到客户问题对应的问题意图以后,根据是否切换话题并进行状态树更新,并根据是否达到答案条件来决定系统是反问话题状态还是直接给出答案。2.根据权利要求1所述的基于状态树的对话管理方法,其特征在于:对话系统接收到客户问题以后,首先对问题进行意图分类,判断问题是继续话题还是切换话题,如果是切换话题,则需要清空话题状态;如果继续话题,则需要更新状态树。3.根据权利要求2所述的基于状态树的对话管理方法,其特征在于:如果切换话题,则清空状态树中除实体外的所有状态,并更新问题中包括的上下文状态,并依据状态树进行答案匹配;如果实体不为空且客户问题中不包括实体信息,推定客户是在询问新话题中的实体信息,在更新完问题中所包含的上下文状态后,再依据更新之后的状态树进行答案条件匹配。4.根据权利要求3所述的基于状态树的对话管理方法,其特征在于:如果话题切换到场景意图,对话系统依据更新后的状态树自上而下的匹配答案所对应的状态条件,如果缺少生成答案的槽值,则进行反问,直至生成答案;如果话题切换至QA意图,对话系统直接给出答案,并更新话题状态。5.根据权利要求4所述的基于状态树的对话管理方法,其特征在于:对话系统进行槽值反问时,会判断答案所缺少槽值条件的主次顺序,优先反问父节点的槽值,如果问题中包括实体信息,对话系统从包括实体条件的答案对象中进行匹...

【专利技术属性】
技术研发人员:申冲张传锋朱锦雷
申请(专利权)人:神思电子技术股份有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1