Transformer落地:使用话语重写器改进多轮人机对话

作者丨袁一鸣

学校丨武汉大学硕士生

研究方向丨对话系统、目标检测


概述

本文发表于自然语言处理顶会 ACL 2019,数据集以及 LSTM 版本的模型可在以下链接找到(由于 Transformer 版本模型已被线上应用,涉及到法律问题未进行开源,但作者欢迎发邮件进行探讨)。 

https://github.com/chin-gyou/dialogue-utterance-rewriter


最近的研究在单轮对话上取得了令人瞩目的进展。然而在多轮对话中,当前的模型还远远不能满足需求。一个主要的挑战是我们日常对话中经常出现的共指关系以及信息省略,使得机器很难理解真正的意图。

这篇论文提出 把话语重写作为预处理,帮助多轮对话建模。具体来说就是每句话都要先重写,以恢复所有共指的和省略的信息,然后基于重写的话语执行下一个处理步骤。为了正确地训练话语重写器,本文收集一个新的带有人工注释的数据集并介绍了一个基于 Transformer 的使用指针网络的话语重写架构。本文所提出的架构在话语重写的任务上实现了极其出色的效果。训练好的话语重写器可以很容易地集成到在线聊天机器人。

研究背景及主要工作

多轮对话模型的一个主要的难点是我们的日常对话常见的共指关系和信息遗漏。从本文初步研究的 2000 个中文的多轮对话中发现,超过 70% 的对话存在这种现象。表 1 展示了两个典型的例子,在语境 1 中“他”和梅西存在共指关系,语境 2 中的“为什么”省略了“最喜欢泰坦尼克号”这个信息。缺少共指关系和省略的信息,机器人就不知道该如何继续对话。


为了解决这个问题,本文提出通过对当前话语重写,将多轮对话问题简化为单轮对话问题。让话语重写器通过指代消解和信息补全恢复所有共指的指称和省略的信息。在表 1 的两个例子中,每个话语 3 都会被重写成话语 3’。之后,系统将只考虑话语 3’ 生成一个回复,而不考虑前一轮的话语 1 和 2。这种简化缩短了对话上下文的长度,同时仍然保留了用于提供适当的回复所需要的必要的信息。 

为了获取话语重写器的监督训练数据,本文构造了一个中文对话数据集,下表是数据集的统计信息,该数据集中一半是不需要重写的负样本,另一半是需要的正样本,每个话语都配有相应的人工重写注释。

本文将话语重写问题建模为使用指针网络的提取生成问题。重写的话语是基于 attention 机制,通过复制来自对话历史或当前话语来生成。这个灵感来自最近提出的 Transformer [1] 可以更好地捕捉句子内的词之间的依赖关系,本文修改了 Transformer 体系结构使其包含指针网络机制。在指代消解和信息补全方面,得到的模型优于递归神经网络 (RNN) 和原始的 Transformer 模型, F1 分数超过了 0.85。此外,本文整合了训练好的话语重写器到两个在线聊天机器人平台,发现它可以实现更准确的意图检测并提高了用户的参与度。

模型


问题描述  

将每个训练样本表示为

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值