游客发表

对话式AI新方法:对话就是数据流

发帖时间:2024-12-23 10:55:55

摘要:作者 | Semantic Machine 研究团队译者 | 平川策划 | 陈思微软 Semantic Machines 公司正在努力构建对话式人工智能体验,对话对话用户只要专注于说出自己想要的式A数据东西,剩下的对话对话交...

作者|语义机器研究团队翻译|平川策划|陈思微软语义机器正在尝试构建会话式人工智能体验。用户只需要专注于说出他们想要的式A数据,剩下的对话对话就交给系统了。SfW

本文最初发布于 Microsoft Research 博客,式A数据由 InfoQ 中文站翻译并分享。对话对话SfW

“说起来容易做起来难。式A数据”这句话反映了会话式人工智能的对话对话前景。只需要几秒钟就可以问我和梅根什么时候有空。式A数据但是对话对话,手动查看日历需要更长的式A数据时间。事实上,对话对话我们在科技的式A数据帮助下完成的每一件事都让人觉得他们为短期目标走过了漫长的道路。在微软语义机器公司,对话对话我们正试图填补这一空白——,并建立一个对话式的人工智能体验。你只需要专注于说出你想要的,剩下的交给系统。与这样的人工智能交谈应该像与朋友交谈一样:自然地、情境地、协作地。SfW

一个真正强大的对话式人工智能不仅需要对语言的深刻理解,还需要情境性、灵活性和健壮性。人工智能也必须对Action ——有深刻的理解。大多数目标涉及多个步骤和多个信息源。表达目标、动作和对话状态是对话式人工智能系统的核心挑战之一。在《计算语言学协会会刊》 (TACL)中,我们发表了一篇题为“面向任务的对话作为数据流合成”的新论文,该论文描述了一种新的表示和建模框架,该框架将对话解释为数据流图,并使跨多个领域的复杂任务对话成为可能。我们还发布了包含4万多个对话(用数据流程图标注)和公众排名的数据集,可以帮助人工无线城市在多轮面向任务的对话中解决具有挑战性和实用性的问题。SfW

从我们的新数据集,我们可以看到令人难以置信的用户请求多样性:SfW

目标多样性.用户可能想要“预约与梅根的会面”。他们可能还想“和梅根约好周二见面”,甚至“和梅根约好五一劳动节后她有空的第一天早上见面”。SfW

语言多样性.问题可能是“明天天气怎么样?”同样的问题可能是“明天出去怎么样?”或者“徒步旅行需要带夹克吗?”以这种形式。SfW

语境多样性.“三个怎么样?”这句话的意思完全取决于刚才说的话。句子“梅根两点钟不在。你还有其他建议吗?”提议改变会议时间。“天气预报说中午多云”这句话是关于天气的问题。“里沃利有一张两个人的桌子”这句话的意思是增加为晚餐预留的座位数量。SfW

传统的“填槽”对话系统忽略了这种多样性。它们只支持一组目标,除了当前目标中缺少的参数列表之外,它们没有上下文表示。在另一个极端,最新的“端到端”神经对话系统原则上可以自由学习任何与语境相关的反应,但仅仅灵活运用词汇是不够的,因为对话还需要灵活执行动作。部署的系统还需要可控性和真实性,这在非结构化系统中非常具有挑战性。SfW

我们提供了第三种方法,它使用深度学习来生成和使用强大的“数据流”表示。它超越了槽填充方法,提供了灵活的动作和可控的语义。数据流旨在支持人类在日常生活中自然、灵活、开放的对话。我们的方法基于以下五个关键概念。SfW

1.用户请求是程序。SfW

现有的对话模式非常适合解释固定的、预定义的任务请求,比如“开灯”或者“设置一个叫pasta的定时器5分钟”。在这些方法中,对话系统设计者定义了一组固定的意图,每个意图都有一组固定的参数。系统用用户表达的意图和意图的参数来标记每个用户请求:SfW

但是,对于更复杂的要求,比如“我和梅根喝咖啡的时候温度会是多少?”要回答这个问题,对话代理需要做一系列不同的事情:找出梅根是谁,使用梅根在日历应用中查找事件,找出开始时间,然后使用时间查询天气服务。我们不需要系统构建器创建weather _ during _ event _ with _ person的特殊意图,而是将自然语言请求转换成一个程序,并将所有这些调用链接在一起。我们将该计划表述为一个数据流图,它明确定义了对话机构计划(节点)中各步骤之间的数据依赖性:SfW

一旦神经网络预测到这个程序,对话代理就会执行它,根据结果回复用户,并将结果存储在数据流图中。SfW

2.面向任务的对话是交互式编程。SfW

使用数据流表达用户意图的优势之一是,可以非常自然地概括为多次往返通信中的交互。如果用户开始问“我下一次什么时候见梅根?”,对话代理首先预测一小段图片:SfW

如果用户继续问“当时的天气怎么样?”在下一轮对话中。回答这个新问题所需的大部分工作已经完成。代理返回到上一轮的程序片段,将其输出输入到新的API调用中,然后描述结果:SfW

这个过程的结果和我们之前为一个复杂问题生成的程序完全一样!这种重用是我们框架的核心特征。——在,复杂的行为是由更简单的行为构建的,而不是定义一堆顶级行为。这种组合可以一次完成,也可以通过在多个周期中依次扩展数据流图来逐步完成。SfW

3.语义对语境的依赖。SfW

展开的图形用作对话状态。它记录了代理迄今为止为理解、服务和响应用户而执行的所有计算。随后的表达式在这个上下文中解释(通过深度学习),它们可以参考这些早期的计算和结果。如本文所示,显式引用和重用先前计算的机制提高了对话代理机器学习的数据效率和准确性。它们还使工程师更容易推理和控制对话代理的行为。SfW

在前面的示例中,用户使用单词组合来指代数据流图中较早的节点。其他引用表达式,如then,thather,也可以表达重用前面在对话中提到的值或实体的请求。SfW

这种the second meeting you mentioned现象也可能是隐性的。想象一下,问你的设备,“天气怎么样?”通常你指的是最近的天气。但是如果你在提到未来的活动后问同样的问题,你可能是在问活动期间活动地点的天气。最终,这两种情况需要两种不同的计算方法。如下图,左边的计算将用于解释最近的情况,右边的计算将用于解释特定事件的情况:SfW

如何区分这些用法是一个具有挑战性的机器学习问题(更不用说对这个问题的其他解释了)。但直觉上,在这两种情况下,“天气怎么样?”同样的——个用户想要知道与对话上下文最相关的时间和地点的天气。SfW

在我们的方法中,这种推理是显式的:当在上下文中解释用户输入时,我们的对话代理显式地预测引用现有计算片段的程序,包括从对话开始就隐式可用的片段,例如引用here.对于上面的两个例子,它将是这样的:SfW

换句话说,在这两个对话中,对话代理人解释了“天气怎么样?”以同样的方式。这个问题。它预测数据流图的相同片段,并调用refer(Time)和refer(Place),但是这个片段的解释将根据前面的上下文而改变。SfW

“公司休假怎么样?”这个问题与语境关系更为密切。在这里,用户不仅引用了一个现有的实体,还要求对话代理为之前的问题计算一个新的答案,并且一些细节已经改变。我们称这种转换为now.类参考,修订版提供了一个强大的机制来执行复杂的图形转换,以响应简单的请求。下图说明了代理预测的修订。当用户问“我和梅根喝咖啡的时候天气怎么样?”。然后他问:“公司假期过得怎么样?”SfW

这里,第一次事件搜索的条件(包括修正名为Megan的事件)被新的条件(指定名为http://www . Sina.com/)代替。SfW

详情请见报纸:SfW

https://www . Microsoft.com/en-us/research/publication/task-oriented-dialogue-as-SfW

4.事情会出错的。SfW

在任何复杂的对话中,事情都会以许多意想不到的方式发生。预约与梅根会面的请求可能会失败,因为用户的联系人列表中没有梅根;因为很多人都叫梅根;因为没有时间开会;即使网络断开,会话代理也无法联系服务器。每种情况都需要不同的响应,现有的对话系统通常使用复杂的硬编码逻辑来从错误中恢复。SfW

我们通过从数据流图中的一个节点抛出异常来处理所有这些失败。我们的对话代理将对失败的“结果”做出响应,并为用户生成适当的警告或问题。用户可以随意回应,或许可以通过纠正问题;例如,在这种情况下,“我是说梅根鲍文”将被解释为对原始请求的修改。该方法允许系统和用户根据上下文灵活、模块化、协作地处理错误。SfW

5.语言的生成依赖于对话语境。SfW

要成为有用的团队伙伴,对话AI系统需要能够生成语言,而不仅仅是解释语言。现有的对话方法大多要么是硬编码的生成规则(使输出听起来像机器人,不会因不同的上下文而改变),要么是非结构化的神经语言模型(有时不说实话!在我们的方法中,语言生成被建模为神经引导的合成程序转换过程,其中代理将轮流扩展数据流图。代理可以讨论图表中出现的任何内容,而不仅仅是它计算的最终结果。它甚至可以向图表中添加新的计算和结果,用户可以在未来的对话中随意引用它们:SfW

代码、数据和新竞争。SfW

我们认为,这种方法是迈向新一代自动对话代理的第一步,它可以像人一样与人互动。然而,解决这个问题需要全社会的共同努力。为了推动基于数据流的对话代理的开放研究,我们发布了规模最大、最复杂的面向任务的对话数据集SMCalFlow。这个数据集有41517个用数据流程序标记的对话。这个数据集来自人类之间关于日历、天气、人和地方的公开对话。与现有的对话数据集相比,我们的对话集合不是基于预先指定的脚本,参与者也不受限制。他们可以问任何问题,他们可以用自己的方式完成任务。因此,SMCalFlow本质上不同于现有的对话数据集,它对代理能力、多轮错误恢复和复杂目标有具体的讨论。SfW

数据集、代码和排行榜可以在我们的GitHub页面上找到。我们期待看到自然语言处理社区如何使用这一新资源。SfW

    热门排行

    友情链接