神经会话模型外文翻译资料
2021-12-21 22:11:33
英语原文共 8 页
神经会话模型
摘要
会话建模是自然语言理解和机器智能中的一项重要任务。尽管存在以前的方法,但它们往往局限于特定的领域(例如预订机票),需要手工制作的规则。在本文中,我们提出了一个简单的方法,它使用最近提出的序列来排序框架。我们的模型通过预测对话中前一句或前几句的下一句来进行对话。我们的模型的优点是可以进行端到端的训练,因此需要更少的手工规则。我们发现,给出了大量的会话训练数据集,这种简单的模型可以生成简单的会话。我们的初步结果表明,尽管优化错误的目标函数,该模型能够很好地进行转换。它能够从特定领域的数据集以及电影字幕的大型、嘈杂和通用领域的数据集中提取知识。在特定领域的IT服务台数据集上,该模型可以通过对话找到技术问题的解决方案。在嘈杂的开放域电影抄本数据集上,该模型可以执行简单形式的常识推理。正如预期的那样,我们还发现缺乏一致性是我们模型的常见故障模式。
1.介绍
神经网络端到端训练的进展导致了许多领域的显著进步,如语音识别、计算机视觉和语言处理。最近的研究表明,神经网络不仅可以进行分类,还可以用于将复杂的结构映射到其他复杂的结构。这方面的一个例子是将一个序列映射到另一个在自然语言理解中有直接应用的序列的任务。这个框架的主要优点是,它几乎不需要特征工程和领域特异性,同时匹配或超越了最新的结果。我们认为,这种进步允许研究人员从事领域知识不容易获得的任务,或者仅仅是手动设计规则太难的任务。
会话建模可以直接受益于这种模拟,因为它需要查询和回复之间的映射。由于这种映射的复杂性,对话建模以前被设计成领域非常狭窄,主要任务是特征工程。在这项工作中,我们通过将会话建模任务转换为使用递归网络预测给定一个或多个先前序列的下一个序列的任务来进行实验。我们发现,这种方法在生成流畅、准确的对话回复方面表现惊人。
我们在IT服务台的对话数据集上测试聊天会话模型,发现该模型有时可以跟踪问题,并为用户提供有用的答案。我们还对从嘈杂的电影字幕数据集中获得的对话进行了实验,发现该模型可以进行自然对话,有时还可以进行简单的常识推理。在这两种情况下,与n-gram模型相比,递归网络获得了更好的困惑,并捕获了重要的长程相关性。从定性的角度来看,我们的模型有时能够产生自然对话。
2.相关工作
我们的方法是基于最近的研究提出的序列到序列的神经网络模型。该框架已经被用于神经机器翻译,并实现了WMTrsquo;14数据集的英语-法语和英语-德语翻译任务的改进。它还被用于其他任务,如解析和图像字幕。众所周知,vanilla RNNs存在消失梯度,因此大多数研究人员使用长短期记忆(LSTM)递归神经网络的变体。我们的工作也受到最近成功的神经语言建模的启发,这表明递归神经网络对于自然语言来说是相当有效的模型。最近,索尔多尼等人使用递归神经网络对短对话中的对话进行建模(在Twitter风格的聊天中训练)。在过去的几十年里,许多研究人员一直在研究构建机器人和会话代理,提供详尽的参考列表超出了本文的范围。然而,大多数这些系统需要相当复杂的多阶段处理流水线。我们的工作不同于传统的系统,提出了一种端到端的方法来解决缺乏领域知识的问题。原则上,它可以与其他系统相结合,重新计算候选响应的简短列表,但是我们的工作是基于产生由概率模型给出的答案,该概率模型被训练为在给定的上下文中最大化答案的概率。
3.模型
我们的方法利用了序列对序列(seq2seq)框架。该模型基于递归神经网络,它每次读取输入一个序列,并预测输出一个序列。在训练过程中,模型给出了真实的输出序列,因此学习可以通过反向传播来完成。该模型被训练为在给定上下文的情况下最大化正确序列的交叉熵。在推理过程中,假设没有观察到真正的输出序列,我们只需将预测的输出标记作为输入来预测下一个输出。这是一种贪心推理方法。一种不太贪心的方法是使用波束搜索,并在前一步向下一步提供几个候选。可以基于序列的概率来选择预测序列。
具体来说,假设我们观察了两轮对话:第一人说“ABC”,第二人回答“WXYZ”。我们可以使用一个递归神经网络,并进行训练以将“ABC”映射到“WXYZ”。当模型接收到序列符号“lt; eos gt;”的结尾时,模型的隐藏状态可以被视为思维矢量,因为它存储句子“ABC”的信息。
这个模型的优势在于它的简单性和通用性。我们可以将这个模型用于机器翻译、问答和对话,而不需要对架构进行重大更改。将这种技术应用于会话建模也很简单:输入序列可以是迄今为止已经被转换的内容的串联(上下文),输出序列是回复。
然而,与像翻译这样更简单的任务不同,像序列到序列这样的模型将无法成功地“解决”对话建模的问题,这是由于几个明显的简化:被优化的目标函数不能捕捉通过人类交流实现的实际目标,这通常是更长期的,并且基于信息交换,而不是下一步的预测。缺乏一个模型来确保一致性和普遍的世界知识是纯粹无监督模型的另一个明显局限性。
4.数据集
在我们的实验中,我们使用了两个数据集:一个封闭域,IT故障集;一个开放域,电影转录数据集。这两个数据集的详细信息如下。
4.1 IT故障集
在我们的第一组实验中,我们使用了从IT故障排除聊天服务中提取的数据集。在这项服务中,消费者会面临与计算机相关的问题,专家会通过交谈和浏览解决方案来帮助他们。典型的交互大约有400个单词长,并且清楚的标注了对话轮流。我们的训练集为30M个单词,验证集为3M个单词,并完成了一些数据清洗的工作,例如删除普通名称、数字和完整URL。
4.2开放式字幕数据集
我们还测试了我们在开放字幕数据集上的模型。此数据集由XML格式的电影对话组成。它包含了电影中人物说的话。我们采用了一个简单的处理步骤,删除XML标记和数据集中明显的非会话文本(例如超链接)。由于话轮转换没有明确指出,我们假设连续的句子是由不同的字符说出的,那么我们就对它们进行处理。我们训练模型基于前面一个句子来预测下一个句子,这个数据集的大小加倍,因为每个句子都用于上下文和目标。62M句(923M个单词)作为训练集,验证集拥有26M句(395M单词)。划分是这样做的,一对句子中的每个句子要么一起出现在训练集中,要么一起出现在测试集中,但不能同时出现在两者中。与以前的数据集不同,开放式字幕相当大,而且非常杂,因为连续的句子可能由同一个字符发出。考虑到电影的广泛范围,这是一个开放域对话数据集,与技术故障排除数据集形成了对比。
5.实验
在本节中,我们描述了两个数据集的实验结果,并展示了与我们训练的系统交互的一些示例。我们还通过对一组200个问题的人工评估,将我们系统的性能与一个流行的基于规则的机器人进行比较
5.1 IT故障集实验
在这个实验中,我们使用带有梯度削波的随机梯度下降训练了一个包含1024个存储单元的单层LSTM。词汇由最常见的20K个单词组成,包括特殊标记和演员名称。收敛时,这个模型达到了8的困惑度,而n-gram模型达到了18。下面是针对大多数三个最常见的IT问题(远程访问、软件崩溃和密码问题)的模拟故障排除会话的几个示例。在这些对话中,机器是我们的神经对话模型,人类是与之互动的人类演员。
对话1: VPN问题。
描述你的问题:我在访问vpn时遇到问题
机器:嗨
人类:你好
机器:你能告诉我你正在使用什么操作系统吗?
人类:我正在使用linux
机器:好的,它在ssl vpn中出现了问题
机器:请检查你是否登录了公司网络
机器:请问你运行的错误是什么
人类:我看到一个与vpn相关的错误
机器:使用网络连接到vpn时,你会收到什么错误消息?
人类:拒绝连接之类的
机器:我可以知道你连接的网络连接的版本吗?
人类:我不确定我知道这一点
机器:网络连接是否提示输入任何用户证书
机器:?
人类:是的
机器:你现在在家还是在工作?
机器:办公室?
人类:我在家
机器:试试这个
机器:转到lt; URL gt;页面,输入你的名字和密码
人类:完成
机器:尝试用lt; NAME gt;登录,并检查它现在是否工作正常
人类:是的,现在有效了!
机器:太好了
机器:还有什么我能帮忙的吗
人类:没了
机器:晚安
对话2 :浏览器问题。
描述你的问题:浏览器不断崩溃
机器:嗨
人类:嗨
机器:你能告诉我你使用的是什么操作系统吗?
人类: linux
机器:好的,这是系统性能的问题。
人类:那是什么?
机器:它是一台windows机器吗?
机器:你的机器上有linux。
机器:是windows xp还是windows 7?
人类:我正在使用linux
机器:让我远程遥控你的机器,检查问题是否被正确解决。
人类:好的
机器:请打开终端,在一台计算机上运行以下命令:
机器: sudo apt - get update
机器: sudo apt - get upgrade
机器: sudo lt;COMMANDgt; - updater
人类:完成
机器:让我现在试着连接
人类:好的
机器:完成了
机器:应该在后台使用第二个或点击run
人类:完成
机器:现在尝试注销,并按照上面给出的信息按照提示操作
机器:我重新启动机器。
人类:好吧,请继续
机器:一旦完成,请尝试登录。
人类:当然
机器:一旦你尝试登录,请给我回消息
机器:我们还在连接吗
人类:我现在登录了
机器:谢谢你的确认
人类:我现在该怎么办?
机器:等待15分钟完成登录策略
机器:然后尝试登录
人类:好的
机器:还有什么可以帮你的吗?
人类:让我试着浏览一下,如果它持续崩溃,我会告诉你的
机器:当然可以
机器:好像邮件没有装上
机器:我们还在聊天吗?
人类:现在看起来不错,酷,谢谢,再见
机器:你也是
机器:再见
对话3 :密码问题。
描述你的问题:我忘记了我的密码
机器:嗨,我今天能帮你什么忙吗?
人类:嗨,我忘记了我的密码
机器:好的
人类:你能告诉我如何恢复它吗?
机器:我需要核实这台机器上的人是谁
机器:我们可以验证吗
机器:?
人类:可以
机器: lt;匿名悬挂指令和验证gt;
人类:酷,我现在很好
机器:这个看起来怎么样?
机器:小心。
人类:再见
机器:再见。
5.2开放式字幕实验
在这个实验中,我们使用AdaGrad和梯度裁剪训练了一个双层LSTM。LSTM的每一层都有4096个存储单元,我们建立了一个由最常见的100K单词组成的词汇表。为了加快软最大速度,我们将存储单元投影到2048个线性单元,然后将信息提供给分类器。
在收敛性上,验证集上的递归模型的困惑度是17。smoothed 5-gram 模型的困惑度为28。有趣的是,添加软注意机制并没有显著改善训练集和验证集的困惑度。
5.2.1模型例子
除了困惑度之外,我们简单的递归模型经常会给出可信的答案。下面是一些示例问题回答,这些问答对让我们能够理解模型的功能。同样,在这些对话中,机器是我们的神经对话模型,人类是与之互动的人类演员。
对话1 :基本
人类:你好!
机器:你好!
人类:你好吗?
机器:我很好。
人类:你叫什么名字?
机器:我是茱莉亚。
人类:你什么时候出生的?
机器: 7月20日。
人类:你是哪一年出生的?
机器: 1977年。
人类:你来自哪里?
机器:我在郊外。
人类:你是男人还是女人?
机器:我是女人。
人类:我们为什么在这里?
机器:我不确定。
人类:好的,再见!
机器:再见。
再见。
机器:再见。
对话2 :简单的问答(上下文和多项选择)
人类:我叫大卫。我叫什么名字?
机器:大卫。
人类:我叫约翰。我叫什么名字?
机器:约翰。
人类:你是领导者还是追随者?
机器:我是领导者。
人类:你是追随者还是领导者?
机器:我是领导者。
对话3 :常识问答
人类:天行者是谁?
机器:他是个英雄。
人类:比尔·克林顿是谁?
机器:他是亿万富翁。
人类:天蓝色还是黑色?
机器:蓝色。
人类:猫有尾巴吗?
机器:有。
人类:猫有翅膀吗?
机器:没有
人类:猫会飞吗?
机器:不会。
人类:一只猫有几条腿?
机器:四条。
人类:蜘蛛有几条腿?
机器:三条。
人类:蜈蚣有几条腿?
机器:八条。
lt;
资料编号:[4060]
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。