对话管理器

编辑
本词条由“匿名用户” 建档。

对话管理器(DM)是对话系统(DS)的一个组成部分,负责对话的状态和流程。通常情况下。DM的输入是人类的话语,通常由自然语言理解(NLU)组件转换为一些系统特定的语义表示。例如,在飞行计划对话系统中,输入可能看起来像ORDER(from=TA,to=JER,date=2012-01-01)。DM通常维护一些状态变量,例如对话历史,最新的未回答的问题等,这取决于系统。DM的输出是给对话系统其他部分的...

目录

对话管理器

编辑

对话管理器(DM)是对话系统(DS)的一个组成部分,负责对话的状态和流程。通常情况下。DM的输入是人类的话语,通常由自然语言理解(NLU)组件转换为一些系统特定的语义表示。例如,在飞行计划对话系统中,输入可能看起来像ORDER(from=TA,to=JER,date=2012-01-01)。DM通常维护一些状态变量,例如对话历史,最新的未回答的问题等,这取决于系统。DM的输出是给对话系统其他部分的指令列表,通常是语义表示,例如TELL(flight-num=123,flight-time=12:34)。这种语义表示通常由自然语言生成(NLG)组件转换为人类语言。有许多不同的DM,履行非常不同的角色。一个DS中甚至可以有几个DM组件。所有DM的xxx共同点是它们是有状态的,与DS的其他部分(如NLU和NLG组件)相比,它们只是无状态的功能。DM的作用可以大致分为以下几组。输入控制,使人的话语得到与上下文相关的处理;输出控制,使文本的生成与状态相关;战略流控制,决定对话代理在对话的每个点上应该采取什么行动;战术流控制,做出一些战术性的对话决定(错误处理、主动控制等)。这个功能处于NLU和DM的交界处:在一些系统中,它被包含在NLU中,比如Milward(2000)的上下文依赖规则;而在其他系统中,它被包含在DM中,比如Mirkovic和Cavedon(2005)的NP解析模块。NLU和DM之间的另一个功能是,确定哪些输入语料是单一语料的一部分。下面是一个来自工作谈判对话的例子。我提供20,000新谢克尔的工资和一辆汽车,养老金的条件将在以后决定。这三个话语实际上是一个单一的提议。对于第二个话语,"和"字是一个线索,但对于第三个话语,xxx可能的线索是它是紧接着第二个话语说的。为了理解这一点,DM可能应该保留每个话语的时间戳。输出控制DM通过记住对话历史,可以使计算机输出更加自然。例如,NPCEditor(一个用于编写回答人类问题的角色的框架)允许作者定义问题-答案对,这样每个问题就有几个可能的答案。DM选择该问题的最佳答案,除非它已经被使用过了,在这种情况下,它会选择第二个最佳答案,等等。ChatScript(一种用于编写聊天机器人的框架)中也有类似的功能。每次DS使用某个规则时,DM都会将这个规则标记为已使用,这样它就不会再被使用。最近一个用于技术援助的DS使用先进的机器学习规则来选择描述项目的最佳术语。对话系统

这一功能处于DM和NLG的边界。战略性流量控制的DMDM的主要作用是决定对话代理在对话的每个点上应该采取什么行动。做到这一点的一个简单方法是让作者完全指定对话结构。例如,一个教程对话结构的规范可能看起来像。计算机。什么力作用在电子上?人:电力,计算机。正确[转到下一个问题]计算机:什么力作用在质量上?什么力作用在质量上?人:电力。计算机:正确。不正确,质量没有电荷。[转到关于电的教程]DM在脚本中保留了一个指向我们当前位置的指针。这个位置会根据人类的输入而更新。有许多语言和框架允许作者指定对话结构。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/175006/

(1)
词条目录
  1. 对话管理器

轻触这里

关闭目录

目录