建立用于端到端响应选择的顺序推理模型外文翻译资料

 2022-08-13 15:27:40

英语原文共 6 页,剩余内容已隐藏,支付完成后下载完整资料


建立用于端到端响应选择的顺序推理模型

摘要

本文提出了第七届对话系统技术的端到端响应选择模型挑战(DSTC7)。该任务着重于选择在进行部分对话的情况下,纠正一组候选者的下一个发音。我们为这个任务提出了一个基于增强型顺序推理模型(ESIM)端到端的神经网络。我们提出的模型与原始ESIM模型包括以下四个方面的不同。首先,结合一般的预训练的词嵌入与估计的词嵌入新的单词表示方法,采用针对特定任务的培训集以解决词汇量(OOV)单词的挑战。第二,专心分层递归编码器(AHRE)设计能够对句子进行分层编码,并通过聚合生成更多描述性表示。第三,结合多维的新池化方法池和最后一个状态池代替了原始的ESIM中简单的最大池和平均池的组合。最后,在softmax层之前的修改层强调最后在上下文中进行发声以选择响应的重要性。在发布的DSTC7评估结果中,我们提出的方法在Track 1的子任务1中在Ubuntu数据集上排名第二,在Advising数据集上排名第三。

1、引言

建立可以自然对话的对话系统是具有挑战性且有趣的问题。最近,人机对话已经由于潜力巨大和诱人的商业价值,引起了越来越多的关注。根据应用程序,对话系统可以大致分为两类:(1)面向任务的系统和(2)非面向任务的系统(也称为聊天机器人)。 面向任务的系统旨在协助用户完成某些任务(例如预订住宿和餐厅)。 非面向任务的系统旨在使用户在开放域中参与人机对话,并吸引了许多研究关注,因为它们针对的是非结构化对话,而没有在对话过程中进行信息交换的先验逻辑表示。

对话响应生成的现有方法包括基于生成的方法和基于检索的方法。基于生成的模型在给定先前对话的情况下最大化了生成响应的可能性。当在连续的对话转弯之间进行映射时,这种方法可以合并丰富的上下文。基于检索的方法使用响应选择算法从存储库中为当前会话选择适当的响应,并具有产生信息量和流利响应的优势。 第七届“对话系统技术挑战”(DSTC7)的第1道是一种基于检索的任务,它从大量候选人中选择正确的答案。 与其他许多数据集相比,此轨道中使用的集合包含更多的候选者。一些候选人也很相似,这增加了做出正确决定的难度。

单词嵌入和句子嵌入的技术对于选择响应以及许多其他自然语言处理(NLP)任务非常重要。必须将上下文和响应适当地投影到向量空间,以捕获它们之间的关系,这对于后续过程至关重要。 最近,人们对单词级别的模型(Mikolov,2013; Pennington,Socher和Manning 2014; Dong和Huang的2018)和句子级别(Wang,Hamza和Florian 2017; Chen。2017)使用神经网络表示,这有助于分类或推理算法在许多NLP任务中实现更好的性能。

响应选择任务的另一项关键技术在于上下文响应匹配。对两个句子之间的语义匹配度进行建模具有挑战性,因此提出了增强的顺序推理模型(ESIM)(Chen et al.2017),以测量自然语言推理(NLI)任务中一对句子之间的关系。 该模型通过顺序编码和基于注意力的对齐方式描述了两个句子之间的交互。考虑到良好的性能和可分解性ESIM的实施,它被用作我们的基准模型用于选择响应。

本文介绍了我们为DSTC7中Track 1的子任务1开发的端到端响应选择方法。 我们建议从以下四个方面改进原始ESIM模型以进行响应选择。

● 一种新的单词表示方法,结合了采用一般的预训练词嵌入和在特定任务训练集上估计的词嵌入,以便解决词汇不足(OOV)单词的挑战。

● 细心的分层递归编码器(AHRE)是设计用于对句子进行分层编码并通过聚合生成句子表示。

● 使用了一种将多维池和最后状态池相结合的新池方法,而不是原始ESIM中最大池和平均池的简单组合。

● 在softmax层之前添加修改层强调在上下文中选择最后一个话语对于响应选择的重要性。

如发布的挑战结果所示,我们提出的模型在Track 1的子任务1中在Ubuntu数据集上排名第二,在Advising数据集上排名第三。在以下各节中,我们首先介绍DSTC7中Track 1的任务描述,并介绍我们提出的模型的细节。然后显示模型配置,训练设置和评估结果。此外,通过烧蚀测试分析实验结果。最后,我们得出结论并概述我们的未来工作。

2、任务描述

DSTC7 Track 1的组织者提供了两个数据集(Kummerfeld et al.2018)。 一个是Ubuntu对话语料库,其中包含Ubuntu用户之间的对话,目的是解决Ubuntu用户发布的问题。另一个是建议数据,它由学生和指导者之间的对话组成,目的是指导学生选择课程。该任务分为5个子任务,参与者可以参与一个、几个或所有子任务。参与者需要满足不同子任务的不同目标,例如从给定的100个候选者或120k个候选者中选择下一个发音,用复述集选择下一个话语,用可能不包括正确下一个话语的候选词组选择下一个话语,并使用结合了外部知识的模型选择下一个话语。每个子任务都有其对应的数据集,并且每个对话中都有其对应的响应候选者以及正确的答案。由于时间和人力有限,我们仅参与此曲目的子任务1,该任务旨在从100个语音的候选集中选择下一个语音。一个示例对话及其候选对象如表1所示。

3、模型描述

我们提出的模型由五个部分组成:文字表示层,编码层,匹配层,预测层和修改层。 图1显示模型架构图。

本节介绍了有关每个图层的详细信息。

3.1文字表示层

建立对话模型的挑战之一是大量有言外之意的单词。为了解决这个问题,我们采用了一种算法(Dong and Huang 2018),该算法将一般的预训练词嵌入向量与在特定于任务的训练集上生成的向量结合起来,以增强词的表示能力。

3.2编码层

递归神经网络(RNN)已经证明擅长在语言序列中按时间顺序建模,多层RNN在许多NLP任务中均取得了良好的性能。例如神经机器翻译(NMT)和自然语言推理(NLI)。使用深度神经网络对序列进行编码可以帮助捕获更深,更有用的信息。通常,顶层RNN层的输出被视为最后一个句子表示形式,其他各层均被忽略。 然而,较低的层也可以提供有用的句子描述,例如词性标记和与语法相关的描述。

为了充分利用隐藏的表示形式层,我们提出了一种新的句子编码器,称为分层递归编码器(AHRE)。该编码器是由语言模型(ELMo)的嵌入方法(Peters等人2018)启发的,该方法结合了多层RNN的内部状态。更具体地说,AHRE学习堆叠在每个输入词上方的向量的线性组合,从而提高了在实验中仅使用顶层RNN层的性能。

令和分别表示上下文和响应的单词表示序列。 la和lb是这两个序列中的令牌编号。和都是上述词表示层给出的基本嵌入向量。此外,双向LSTM(BiLSTM)(Hochreiter和Schmidhuber 1997)被用作我们的基本构件。 在L层RNN中,第L层将第L-1层的输出作为其输入。 我们将计算表示如下,

这两个BiLSTM的权重在我们的实现中共享。由于篇幅所限,我们跳过了有关基本链LSTM的描述,读者可以参考(Hochreiter Schmidhuber 1997)。最后,我们通过L层RNN获得了一组L表示和。 通常为或,即

顶层的输出用作最终的编码向量。在这里,我们建议通过学习所有层的注意力权重来组合表示的集合以获得增强的表示和。数学上表示为:

其中,wl是softmax归一化的权重,在训练程中过需要评估的情境和反应之间共享。我们的表示法与传统编码器的表示法的不同之处在于,我们的表示法不仅考虑了顶层表示法,而且还考虑了可能会提供参考的较低层表示法。 结果,我们的编码器给出的表示有望捕获并融合句子的多级特征。

3.3匹配层

情境与回应之间的互动对提供信息以决定它们之间的匹配程度很重要。我们的模型遵循ESIM的匹配部分,该部分通过基于注意的对齐方式收集两个句子之间的局部信息,并且在计算上完全可分解。首先,通过计算每个表示元组{,}之间的注意力权重来进行软对齐。

然后,本地注意力由注意力权重确定上面计算的。获得上下文和响应之间的局部相关性。对于上下文中的单词,使用标识并由响应组成的相关表示形式如下:

其中是的加权和。直观地讲,中与相关的内容被选择形成。 对响应中的每个单词执行相同的计算,如下所示:

为了进一步增强收集到的信息,我们计算了之间和之间的差异和按元素乘积,然后将差异和按元素乘积与原始向量连接起来以获得增强的表示形式如下,

然后,使用BiLSTM组成增强的本地匹配信息和为

BiLSTM在每个方向上都有d个隐藏单元,。

我们结合多维池化(Shen et al.2017)和最后状态池化来从V序列中得出最终匹配特征向量替代了使用最大池和平均池的原始ESIM模型。

多维关注与一般关注不同,因为输入矢量的对数不是标量,而是尺寸等于输入矢量尺寸的矢量。这使输入向量的每个维度都具有标量对数,我们可以在每个维度上分别进行关注。在我们的模型中,对于,它的logit l()是通过两次线性变换计算的,两者之间有一个指数线性单位(ELU)激活函数,即

公式(12)-(14)的计算也应用于以获得。最后,我们结合上面介绍的多维池和最后状态池来形成匹配项特征向量为

3.4预测层

匹配特征向量f被馈入多层感知(MLP)分类器。MLP是使用特征示例和已知标签以监督方式估算的前馈神经网络。这里,MLP被设计为通过匹配特征f来预测一对上下文和响应是否正确匹配。最后,MLP在softmax之前返回分数s1来表示匹配程度。

3.5修改层

在这一层,进一步修改预测层给出的匹配分数,以强调上下文中最后说话的效果。 我们将最后讲话的长度u表示为lu,将其在AHRE之后的输出表示为。

在其上使用laststate池以获取其表示形式。应用变换矩阵来计算另一个匹配分数s2,最终分数s是s1和s2与标量权重的组合。

其中M和w都是参数,需要在训练期间进行估算。最后,将softmax层应用于得分s,以预测所有候选项中的正确答案。通过最小化训练集上的多类交叉熵损失,以端到端的方式估算所有模型参数。

4、实验

4.1数据集

子任务1提供了两个数据集。它们两个都提供了10万次培训对话,每个对话配备了100名候选人。它们在开发数据集大小,测试数据集大小和词汇量方面有所不同。 具体来说,Ubuntu对话具有5k开发对话,词汇量为113k,而Advising对话只有0.5k开发对话,词汇量仅为5k。

训练细节

Adam方法(Kingma and Ba 2014)被用于最小批量为2的优化。初始学习

率是0.001,并且呈指数下降了0.96每5000步。词嵌入是300维固定GloVe嵌入(Pennington,Socher和Manning 2014)和在训练集上使用Word2Vec(Mikolov等人,2013)算法估计的100维嵌入的串联。训练过程中未更新单词嵌入一词。 LSTM的所有隐藏状态都有200个尺寸。 AHRE中BiLSTM的层数为3。通过ReLU(Nair和Hinton 2010)激活,预测层的MLP的隐藏单元大小为256。我们将最大上下文长度设置为160。如果长度小于160,则补零,否则保留最后的160个字。 我们使用开发数据集选择最佳的测试模型。

所有代码均使用TensorFlow框架实现(Abadi等人,2016年)并发布以帮助复制我们的结果。

4.2评估指标

任务中的两个数据集都旨在每个给定对话的一组候选人中选择最佳回答。召回了每次对话的100个可用候选者(即R100 @ k)中选定的前k个响应用作评估模型性能的指标。我们还使用均值倒数排名(MRR)进行评估我们的模型表现。

这是一种统计量度,用于评估任何产生对查询样本的可能响应列表的过程,并按正确性概率排序。 查询响应的倒数排名是第一个正确答案的排名的乘积倒数,而MRR是查询集Q的结果的倒数排名的平均值。可以表示为:

其中指的是第一个相关的排名第i个查询的文档。

R100@10和MRR的平均值被挑战组织者采用以获取所有参与者的排名。

结果我们在Ubuntu数据集上的模型结果和建议数据集总结在表2中。

我们在开发数据集上调整了单个模型,并使用集合模型提交了轨道的子任务1的最终结果。集合模型是通过对三个具有相同架构和不同随机初始化的单个模型的输出

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[236095],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。