重磅推荐专栏: 《Transformers自然语言处理系列教程》
手把手带你深入实践Transformers,轻松构建属于自己的NLP智能应用!

https://blog.csdn.net/u011239443/article/details/79921375

论文:
https://arxiv.org/pdf/1506.05869.pdf%20(http://arxiv.org/pdf/1506.05869.pdf)

摘要

会话建模是自然语言理解和机器智能中的一项重要任务。虽然以前的方法存在,但它们往往局限于特定的领域(例如预订机票),需要手工制作的规则。在本文中,我们提出了一个简单的方法,这个任务使用最近提出的序列到序列框架。我们的模型预测了交谈的谈话中前面的句子或句子的一句话。我们的模型的优点是可以进行端到端的训练,因此需要少得多手工制作的规则。我们发现,给出了大量的会话训练数据集,这种简单的模型可以生成简单的会话。我们的初步结果表明,尽管优化错误的目标函数,该模型能够很好地进行逆向谈判。它能够从一个特定领域的数据集中提取知识,从一个大的、嘈杂的、一般的电影字幕主数据集中提取知识。在特定于域的IT帮助桌面数据集中,该模型可以通过对话找到一个技术问题的解决方案。在嘈杂的开放域电影转录集中,该模型可以执行简单的常识推理形式。正如预期的那样,我们还发现缺乏一致性是我们模型的常见故障模式。

介绍

神经网络的端到端训练在语音识别、计算机视觉和语言处理等领域取得了显著的进展。最近的研究表明,神经网络可以做的不仅仅是分类,它们可以用来把复杂的结构映射到其他复杂的结构。这方面的一个例子是一个序列映射到另一个序列具有直接应用在自然语言理解的任务(sutskever et al.,2014)。该框架的主要优点是它不需要特征工程和领域特殊性,而匹配或超过最好的结果。在我们看来,这一进步使研究人员能够从事那些可能不容易获得领域知识,或者难以手工设计规则的任务。
会话模型可以直接从这个制定得到效果,因为它需要问答之间的映射。由于这种映射的复杂性,会话建模以前被设计成非常狭窄的领域,在特征工程方面有着重大的任务。在这项工作中,我们实验的会话建模任务,采用递归神经网络,在给定上一个序列或者当前序列,来预测下一个序列(sutskever et al.,2014)。我们发现,这种方法可以很好地产生流利和准确的对话答复。
我们在一个IT帮助桌面数据集上对聊天会话进行测试,发现该模型有时可以跟踪问题并为用户提供有用的答案。我们还对电影字幕中嘈杂的数据集进行的对话进行了实验,发现该模型可以进行自然会话,有时也可以形成简单的常识推理形式。在这两种情况下,递归神经网络比N-gram模型和捕捉重要的长程相关性的方法都表现的更好。从定性的角度来看,我们的模型有时能够产生自然的对话。

相关工作

我们的方法是基于最近的研究提出的序列到序列的神经网络模型。该框架已被用于机器翻,改进英语到法语和英语到德语的翻译任务。它也被用于其他任务,如分析字幕。因为众所周知,vanilla RNNs遭受消失的梯度,大多数研究人员使用长短期记忆的变体(LSTM)。
我们的工作还受到神经语言建模的最近的成功,这表明神经网络是自然语言的有效模型。最近,索尔多尼等人,使用递归神经网络在短对话中模拟对话(训练在Twitter风格的聊天)。
在过去的几十年里,许多研究者一直在探索构建机器人和会话代理。然而,大多数这些系统需要一个相当复杂的多个阶段的处理流水线。我们的工作不同于传统的系统,提出一个端到端的方法,无需领域知识。原则上,它可以与其他系统相结合,重新计算候选响应的简短列表,但我们的工作是基于产生概率模型给出的答案,这些概率模型被训练以最大化给定上下文的答案的概率。

模型

我们的方法使得使用的序列的序列(seq2seq)框架。该模型是基于一个递归神经网络,它每次读取输入一个序列,并预测输出一个序列。在训练过程中,模型给出了真实的输出序列,因此学习可以通过反向传播来完成。该模型被训练以最大化给定上下文的正确序列的交叉熵。在推理过程中,由于没有观察到真正的输出序列,我们只将预测的输出向量作为输入,来预测下一个输出。这是一种贪心推理方法。一个不太贪心的方法是使用波束搜索,并在前一步向下一步提供几个候选。预测序列可以根据序列的概率选择。
具体地说,假设我们观察谈话:第一个人说“ABC”,二人回答说:“wxyz”。我们可以用一个递归神经网络,训练映射“ABC”到“wxyz”上,当模型接收到序列符号“ “” ”时结尾:

这种模式的优势在于它的简单和通用性。我们可以利用这一模型对机器翻译、问答、对话而没有在架构上有重大变化。该技术应用于对话,模型也简单:输入序列可以被转换到目前为止的级联(上下文),和输出序列的回复。
不同于简单的翻译,序列到序列模型将不能够成功地“解决”的模拟对话,而有几个明显的问题:简化目标函数进行优化,不捕获通过人际传播所达到的实际目的,这通常是基于长期的信息交流,而不是下步预测。缺乏确保一致性和普遍的世界知识的模型是纯粹无监督模型的另一个明显的局限性。

数据集

在我们的实验中,我们使用了两个数据集:一个封闭域,IT故障集;一个开放域,电影转录数据集。这两个数据集的详细信息如下。

IT故障集

我们在第一组实验中,我们使用的数据集是从一个IT故障排除聊天服务中。在这个服务,消费者面对电脑相关的问题,和专家帮助他们解决。典型的交互大约是400个单词,并且清楚的标注了对话轮流。我们的训练集为30M个单词,验证集为3M个单词,并完成了一些数据清洗的工作,例如删除普通名称、数字和完整URL。

开放式字幕数据集

我们还测试了我们在开放字幕数据集上的模型。此数据集由XML格式的电影对话组成。它包含了电影中人物说的话。我们采用了一个简单的处理步骤,删除XML标记和数据集中明显的非会话文本(例如超链接)。由于轮流没有明确指出,我们处理连续的句子,假设他们说出不同的文字。我们训练模型基于前面一个句子来预测下一个句子,这个数据集的大小加倍,因为每个句子都用于上下文和目标。62M个句(923M个单词)作为训练集,验证集拥有26M句(395M单词)。划分是这样做的,即每句话中的每一句都出现在训练集或测试集中,但不是同时出现。与以前的数据集不同,开放式字幕相当大,而且相当吵闹,因为连续的句子可能由同一个字符发出。考虑到电影的广泛范围,这是一个开放域对话数据集,与技术故障排除数据集形成了对比。

实验

在本节中,我们描述了两个数据集的实验结果,并展示了一些与我们训练的系统相互作用的示例。我们还比较了我们的系统对一个流行的基于规则的机器人使用人类评价的一组200个问题的性能。

IT故障集实验

在这个实验中,我们训练了一个1024个记忆单元的一层LSTM,使用随机梯度下降与梯度剪裁优化。词汇是最常见的20k字,包括特殊标记和演员名称。在收敛性上,该模型实现了困惑度为8,而N-gram模型达到了18。下面是三个最常见的IT问题(远程访问、软件崩溃和密码问题)中模拟故障排除会话的几个示例,这里只展示密码问题:

Machine: hi , this is <NAME> from helpdesk connect , what can i help you with today ?
Human: hi , i forgot my password
Machine: ok great
Human: can you tell me how i can recover it ? Machine: i ’ ll need to verify who it is at that machine
Machine: can we do a hangout
Machine: ?
Human: yes
Machine: <anonymized hangout instructions and verifications>
Human: cool , i am good now
Machine: how ’ s this looking good ?
Machine: i ’ ll go ahead and close this chat . Machine: take care . : )
Human: bye
Machine: bye .

开放式字幕实验

本实验中,我们训练了两层LSTM,使用adagrad与梯度裁剪。每一层的对应有4096个存储单元,我们建立一个词汇组成的最常见的10万字。加快softmax,我们组合记忆细胞为2048线性单元,再进行分类。

在收敛性上,验证集上的递归模型的困惑度是17。smoothed 5-gram 模型的困惑度为28。有趣的是,添加软注意机制并没有显著改善训练集和验证集的困惑度。

模型例子

除了困惑度外,我们的简单递归模型常常产生似是而非的答案。下面是一些示例问题回答(这里只选取一段例子,更多的例子请见论文):

Human: what do you think about tesla ?
Machine: he ’s a good conductor .
Human: what do you think about bill gates ?
Machine: he ’s a good man .
Human: What do you think about messi ?
Machine: he ’s a great player .
Human: what do you think about cleopatra ?
Machine: oh , she ’s very regal .
Human: what do you think about england during the reign of elizabeth ?
Machine: it was a great place .

我们发现,该模型可以记住事实、理解上下文、执行常识推理,而不需要传统管道的复杂性。让我们吃惊的是,除了单词向量中的参数外,该模型没有任何明确的知识表示组件。

也许实际意义重大的是,该模型可以推广到新问题。换句话说,它不只是通过将问题与现有数据库相匹配来查找答案。事实上,除了第一次对话之外,上面提到的大多数问题都没有出现在训练集中。

然而,这一基本模型的一个缺点是它只提供了简单的、短的回答,有时不回答我们的问题。也许一个更棘手的问题是模型不捕捉个性一致。语义上类似的问题,答案有时是不一致的。这是因为我们的模型的简单性和我们的实验数据集。下面的对话说明这样的失败:

Human: what is your job ?
Machine: i ’m a lawyer .
Human: what do you do ?
Machine: i ’m a doctor .

最后,与传统的聊天机器人相比(传统的聊天机器人效果很差,这里就不列举了)。

人为评价

为了公正、客观地比较我们的模型与CleverBot对抗,我们挑选了200个问题,问四个不同的人对我们的模型(NCM)与CleverBot(CB)进行评价。人类法官被要求挑选他们喜欢的两个机器人中的哪一个,如果两个回答质量相同,也可以宣布一个平局。

如果四个人类法官中有三个同意,我们就记录这个分数。我们的模型是在200个问题中,有97个问题胜出,而CleverBot在200问题中,有60问题胜出,20个问题两者平局,在23个问题评委们两者都不采纳。

这里有一些评委们评价样本:

Human: What is the deepest spot on the world ?
NCM: The pacific ocean. #胜出
CB: What ?Human: Do you like Mexican food or Indian food ?
NCM: I hate it.
CB: I love Mexican food.   #胜出Human: Who are you crazy about ?  # 平局
NCM: You’re the one who’s crazy.
CB: Who are you ?Human: What’s thirty plus forty ?  #都不采纳
NCM: Sixty ?
CB: What should we talk about ?

然而,我们认为,设计一个快速衡量会话模型质量的好指标仍然是一个有待研究的问题。我们通过手工检查,通过使用机械土耳其人与基于规则的机器人进行人的评价,并通过计算困惑来做到这一点。然而,使用这些方法有明显的缺点,我们正在积极地进行这一研究和其他研究方向。

讨论

在本文中,我们表明,一个基于seq2seq框架简单的语言模型可以用来训练会话引擎。我们的简单结果表明,它可以生成简单而基本的会话,并从嘈杂但开放的域数据集中提取知识。尽管模型有明显的局限性,但令人惊讶的是,没有任何规则的纯数据驱动的方法可以对许多类型的问题产生相当恰当的答案。迄今为止,该模型可能需要进行大量修改才能提供真实的会话。在众多的限制中,缺乏一致的个性使得我们的系统很难通过图灵测试。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QPPvARrO-1670120971395)(http://upload-images.jianshu.io/upload_images/1621805-e7dd694099f756b7?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

论文阅读:《A Neural Conversational Model》相关推荐

  1. 《基于卷积神经网络的深度迁移学习,用于燃气轮机燃烧室的故障检测》论文阅读

    目录 突出 抽象 引言 1.1动机 1.2文献综述获得的结论 1.3贡献 1.4组织 2方法 2.1燃汽轮机组故障知识共享 2.2迁移学习 2.3 基于卷积神经网络的深度迁移学习 2.4用于燃气轮机燃 ...

  2. 基于卷积神经网络和投票机制的三维模型分类与检索 2019 论文笔记

    作者:白静 计算机辅助设计与图形学学报 1.解决的问题 由于三维模型投影得到的视图是由不同视点得到,具有相对独立性,这种像素级的融合运算并没有直接的物理或者几何意义,更有可能造成图像有益信息淹没和混淆 ...

  3. TextCNN——基于卷积神经网络的文本分类学习

    1.CNN基础内容 CNN的全称是Convolutional Neural Network,是一种前馈神经网络.由一个或多个卷积层.池化层以及顶部的全连接层组成,在图像处理领域表现出色. 本文主要学习 ...

  4. 读懂深度迁移学习,看这文就够了 | 赠书

    百度前首席科学家.斯坦福大学副教授吴恩达(Andrew Ng)曾经说过:迁移学习将是继监督学习之后的下一个促使机器学习成功商业化的驱动力. 本文选自<深度学习500问:AI工程师面试宝典> ...

  5. 一种基于卷积神经网络的图像去雾研究-含matlab代码

    目录 一.绪论 二.去雾卷积网络 2.1 特征提取 2.2 多尺度映射 2.3 局部均值 2.4 非线性回归 三.实验与分析 四.Matlab代码获取 一.绪论 雾是一种常见的大气现象,空气中悬浮的水 ...

  6. 机械臂论文笔记(一)【基于卷积神经网络的二指机械手 抓取姿态生成研究 】

    基于卷积神经网络的二指机械手 抓取姿态生成研究 论文下载 摘要 第1章 绪论 1.1 抓取生成国内外研究现状 1.1.1已知物体抓取生成 1.1.2相似物体抓取生成 1.1.3 未知物体抓取生成 1. ...

  7. 毕业设计 - 基于卷积神经网络的乳腺癌分类 深度学习 医学图像

    文章目录 1 前言 2 前言 3 数据集 3.1 良性样本 3.2 病变样本 4 开发环境 5 代码实现 5.1 实现流程 5.2 部分代码实现 5.2.1 导入库 5.2.2 图像加载 5.2.3 ...

  8. 基于卷积神经网络与迁移学习的油茶病害图像识别

    基于卷积神经网络与迁移学习的油茶病害图像识别 1.研究思路 利用深度卷积神经网络强大的特征学习和特征表达能力来自动学习油茶病害特征,并借助迁移学习方法将AlexNet模型在ImageNet图像数据集上 ...

  9. Python深度学习实例--基于卷积神经网络的小型数据处理(猫狗分类)

    Python深度学习实例--基于卷积神经网络的小型数据处理(猫狗分类) 1.卷积神经网络 1.1卷积神经网络简介 1.2卷积运算 1.3 深度学习与小数据问题的相关性 2.下载数据 2.1下载原始数据 ...

  10. 基于卷积神经网络实现图片风格的迁移 1

    卷积神经网络详解 一.实验介绍 1.1 实验内容 Prisma 是最近很火的一款APP,它能够将一张普通的图像转换成各种艺术风格的图像.本课程基于卷积神经网络,使用Caffe框架,探讨图片风格迁移背后 ...

最新文章

  1. RDKit | 化合物活性数据的不平衡学习
  2. 状态机系列学习笔记01
  3. 查看Linux发行版的名称和版本号
  4. android优化最强软件,最强大的安卓优化工具诞生,让手机流畅度提升75%
  5. English sentences
  6. python新手入门总结_初学python的操作难点总结(新手必看篇)
  7. OSPF算法详细说明
  8. Intellij IDEA设置系列(四):各种乱码解决方案
  9. 面试题汇总11-20
  10. python爬虫面试自我介绍范文_程序员求职面试自我介绍范文4篇
  11. 陈述句c语言,幼儿语言发展中最早产生的句型是()。A.陈述句 B.疑问句C.祈使句 D.感叹句...
  12. 360云盘上传 计算机文件格式,360云盘怎么上传文件 360云盘上传文件方法
  13. linux 中什么是进程号,Linux中脚本进程号由什么决定?
  14. 简单介绍一下ODI的几个基本概念
  15. 切蛋糕java题,【算法•日更•第六期】头脑风暴:洛谷P1528 切蛋糕题解
  16. 【设计图交接与沟通的高效平台】上海道宁为设计师与开发者提供产品团队的互联空间——Zeplin
  17. php使用获取mysqlerror时报错Call to undefined function mysql_error()
  18. 【计算机网络】Web应用的安全问题——概述
  19. 解决AD中pcb原件移动提示绿色报错问题
  20. 【Python】配置Python环境

热门文章

  1. WebSocket实现在线聊天
  2. vue完整项目,实现即可上岗web前端。
  3. 分享105个NET源码ASP源码,总有一款适合您
  4. 如何手动更新mac的固件
  5. SM2算法第十二篇:数字证书原理
  6. 电竞英雄联盟数据API接口 - 【比赛列表】API调用示例代码
  7. DiskPart 常用操作【Windows】
  8. 支持多线程的Redis 6.0终于发布了!
  9. Ext 核心 API -- Ext.apply 与 Ext.applyIf
  10. 水星路由器wan口ip显示0_wan口状态ip地址为0.0.0.0