论文笔记:《Boot-TOD通过调整不同的响应来引导面向任务的对话表示》

论文标题:《BootTOD: Bootstrap Task-oriented Dialogue Representations by Aligning Diverse Responses》

作者:Weihao Zeng等人
会议:COLING 2024
PS:标题中的”不同的响应“指的是对于同一个输入或上下文,系统可以生成多种可能的输出或回答

创新点:①自举框架(Self-Bootstrapping Framework):Boot-TOD采用了一种新颖的自举框架来学习任务导向对话表示,这种方法不依赖于传统的对比学习框架,而是通过模型自身的预测结果来对齐’上下文‘和’上下文+响应‘的表示。这种框架有助于减少在选择正负样本对时的噪声和错误,从而提高对话理解和生成的质量。
②模拟“一对多”多样性:Boot-TOD使用多个适当的响应目标来模拟人类对话中的“一对多”多样性。这意味着在相同的对话上下文中,可以有多个合适的响应。这种设计使得Boot-TOD能够更好地理解和生成多样化的对话响应,从而提高对话系统的自然性和用户满意度。
③学习未来知识:Boot-TOD鼓励模型学习未来知识,即预测对话的未来走向。这种能力使得模型能够更好地理解对话的上下文和意图,从而生成更加连贯和相关的响应。
④泛化能力的提高:通过上述方法,Boot-TOD在多种下游任务上均超越了强大的任务导向对话基线,证明了其在任务导向对话表示学习中的泛化能力。

0、摘要部分

预训练语言模型在许多情况下是成功的。然而,由于一般文本和任务导向对话的内在语言差异,它们在任务导向对话中的作用有限。
当前以任务为导向的对话预训练方法依赖于一个对比框架(其核心思想是将语义相似的(正)对拉近,同时将语义不相似的(负)对分开),但这种框架面临着选择真积极和假消极以及缺乏多样性等挑战。本文提出了一种新的对话预训练模型Boot-TOD。它通过自举框架(允许模型通过迭代过程自我改进,而不需要外部的监督或额外的训练数据)学习面向任务的对话表示。与对比框架不同,Boot-TOD将‘ 上下文’ 和 ’上下文+响应‘ 表示对齐,并忽略对比对的要求。BootTOD还使用多个适当的响应目标来模拟人类对话固有的一对多多样性。实验结果表明,BootTOD在不同的下游对话任务上优于强TOD(Task-oriented Dialogue)基线。
关键词:任务导向对话,自我引导,对话预训练

1、引言部分

之前针对任务导向对话的无监督预训练模型采用了对比学习(CL)框架,其目标是将语义相似(正)对更紧密地结合在一起,同时分离语义不相似(负)对。
TOD-BERT将对话历史和相应的回答作为正对,在回答选择任务上取得了优异的成绩,但在其他对话任务上只有改进较小。这是因为TOD-BERT从其他对话中选择回答作为否定,而这些否定回答可能适合当前上下文,从而导致假否定。
此外,DSE通过使用同一对话中的连续话语作为积极对来从对话中学习。然而,当答案普遍且无处不在时,这种连续话语代表相似语义的假设可能会失败。
尽管以前的TOD PLMS(面向任务的预训练模型)取得了显著的进展,但仍然存在两个挑战:①这些对比方法的缺点是可能选择有噪声的正、负对,如假阴性,不合理的假设以及依赖于大批量数据。仅使用非对比框架进行对话预训练方面进行了有限的探索。②大多数工作忽略了对话中的一对多属性,在相同的对话上下文中,多个响应是合适的。PLATO提出了离散潜在变量来提高开放域对话生成中的话语级多样性,但之前的TOD预训练方法都没有考虑这种一对多属性,而这种属性在面向任务的对话中也很普遍。当前的TOD PLMS(面向任务的预训练模型)倾向于捕获最常见的对话策略,但忽略了很少发生但可行的用户行为,导致重复和普通的响应。
为了解决这些问题,本文提出了一种新的对话预训练模型Boot-TOD,该模型通过自举框架学习面向任务的对话表示。具体而言,通过引入一个自举框架,以对齐’上下文‘和’上下文+响应‘表示,而不是对比,并消除了对比对的要求。此外,Boot-TOD将上下文表示与多个适当的响应目标对齐,以模拟人类对话固有的一对多多样性。既使用BERT模型对对话上下文进行编码,也将其表示与包含上下文和响应的完整序列对齐。作者认为,良好的对话表示既可以学习本地上下文信息,又可以预测未来的知识。对齐目标包含三个方面:①使用[CLS]的对话表示对齐;② [MASK]令牌表示对齐和③MLM(掩码语言模型)损失。通过在各种面向任务的对话任务上评估Boot-TOD,包括意图分类、对话状态跟踪、对话行为预测和响应选择。结果表明,在所有场景下,BootTOD在强TOD基线上取得了一致的改进,证明了BootTOD的泛化能力。
本文贡献如下:
1)提出了一种新的对话预训练模型Boot-TOD,它使用自举框架将上下文表示与不同的响应目标对齐。
2)该模型在不同的下游对话任务上优于强TOD基线

2、模型部分

2.1 总体框架

下图显示了Boot-TOD的总体体系结构:

在这里插入图片描述

该模型采用BERT-base-uncased(base”指的是模型的大小,它使用12层Transformer编码器,而“uncased”表示模型在预训练时不区分大小写,即所有的文本输入都会被转换为小写。这种模型不考虑单词的大小写信息,这有助于减少模型的复杂性)作为主干。通过将两个特殊的角色符号[USR]或[SYS]添加到每个话语的前缀中,并将同一对话中的所有话语连接到一个平面序列中。
然后在随机选择的回合上分割每个对话以获得上下文和响应。再通过一个预测层对对话上下文进行编码,并将其表示与包含上下文和响应的完整序列对齐,包括[CLS]对齐、[MASK]令牌对齐和掩码语言模型(MLM)。目标是使模型捕获本地上下文信息并预测未来的知识。

2.2 引导面向任务的对话表示

对于每个对话,首先将其转换为一个令牌序列 D = {U_1, S_1,…, U_n, S_n}。U_i 和 S_i 分别用两个特殊角色令牌[USR]或[SYS]作为前缀表示用户话语和系统话语。n是对话的回合数。
与现有的对比方法相比,该模型采用自举框架来对齐‘上下文’和’上下文+响应‘表示,以学习未来的知识。其优点是:①不需要对比对,从而减轻了选择正样本和负样本的噪声;②学习未来知识鼓励模型在同一潜在空间中对齐表征,而不是将属于不同分布的上下文和响应的表征拉到一起。
假设在随机选择的回合上分割每个对话,则上下文为C = {U_1, S_1,…, U_t},响应R = {S_t, U_(t+1), S_(t+1),…, U_n, S_n}。在本文中,将响应表示为以系统话语结束的多回合集合。将所有话语连接成序列,并使用共享BERT编码器分别处理’上下文‘和’上下文+响应‘序列。受(Chen and He, 2020; Grill et al, 2020)启发,使用共享预测器MLP头来转换上下文的表示(即将BERT编码器输出的上下文表示转换成模型需要的特定形式)。希望上下文表示可以在建模局部语义的同时预测未来的信息。因此,设计了如下三个对齐目标:
1)对话表示对齐损失(用于对齐‘上下文表示’和‘上下文+响应’表示的[CLS]标记的表示):
在这里插入图片描述

l:BERT-base的第l层
h:预测器
在这里插入图片描述:第l层上下文[CLS]表示
在这里插入图片描述:第l层上下文+响应[CLS]表示
相对于在顶层执行对齐损失,在多个层上执行会有更好的效果。但将归一化运用到以及其他形式的目标中没有显著改进。
2)令牌表示对齐损失(用于对齐’上下文‘表示和’上下文+响应‘表示中的[MASK]标记的表示):
在这里插入图片描述

M:被屏蔽令牌的总数
在这里插入图片描述:第l层上下文[MASK]表示
在这里插入图片描述:第l层上下文+响应[MASK]表示
该模型只对上下文执行掩码策略,而不是上下文+响应序列,这为上下文表示提供了更准确的上下文目标
3)掩模语言模型损失(保留传统方法中用于预测被掩码的标记的损失):
在这里插入图片描述

其中P(x_m)是掩码标记x_m在词汇表大小上的预测概率。
受(Chen and He, 2020)的启发,该模型对上下文+响应的表示采用了停止梯度策略(用于在模型训练过程中暂时“冻结”或“停止”某些参数的梯度更新)。为了探索不同响应目标的多样性,从R = {S_t, U_(t+1), S_(t+1),…中随机选择一个连续响应话语的比率。例如{S_t}和{S_t, U_(t+1), S_(t+1)}。最后一轮回应必须是系统话语。对于具有多个适当响应的相同上下文,Boot-TOD通过遍历整个数据集来使上下文表示与不同的响应目标保持一致。

3、实验部分

3.1 训练细节

训练语料库:Wu等人(2020)收集的9个面向任务的数据集
基线:BERT、BERT-mlm(对对话进行持续预训练)、DialoGPT、SimCSE 、TOD-BERT 和DSE。实验专注于无监督TOD预训练,因此排除了与使用标记NLI数据集或对话行为标签的监督方法的比较。
预训练细节:Boot-TOD的训练使用的批处理大小为48,最大输入长度为512,以BERT-base-uncased启动。使用Adam优化算法,学习率为5e-5,dropout为0.2,掩码比为15%,预测头有两层plus ReLU,尺寸分别为768和512。在预训练之后,保留Bert编码器参数,并移除MLP头部以进行后续微调。为期3天的预训练包括基于困惑的早期停止策略(一种正则化技术,防止过拟合),使用8个NVIDIA Tesla A100 gpu。
调优细节:对于BERT-mlm和TOD-BERT,直接使用TOD-BERT报告的结果。对所有下游任务采用相同的超参数。

3.2 主要结果

该研究在四个核心任务(意图识别、对话状态跟踪、对话行为预测和响应选择)导向的对话任务上评估了各种预训练的语言模型。使用整个数据集进行了实验,也使用了少样本的设置。这里的少样本设置与TOD-BERT 和FutureTOD 一致,即仅使用整个数据集的1%或10%进行微调,而不是使用整个数据集进行微调。少样本实验用不同的种子随机取样至少三次。
1)意图识别:下表显示了OOS数据集上的意图识别结果。
在这里插入图片描述

可观察到,Boot-TOD在12个指标中的10个指标上优于所有基线,特别是在总体准确性和OOD(分布外)指标上有显着改善。这些结果证明了Boot-TOD在域内和域外度量上的泛化能力。
2)对话状态跟踪:下表显示了MWOZ 2.1数据集上对话状态跟踪的结果:
在这里插入图片描述

Boot-TOD在所有指标上都达到了最优秀的结果。可以发现SimCSE在5%的数据设置中表现不佳,因为它忽略了对话数据的内在属性,并且不能用很少的数据很好地建模整体对话。Boot-TOD在联合准确率(Joint Acc)上比在槽值精度(Slot Acc)上取得了更大的进步,这表明了对整个对话上下文的理解力度。还可以发现,这些基线在简单的槽值预测上过拟合,但不能预测困难的槽值,导致槽值精度(Slot Acc)相当,但联合准确率(Joint Acc)较差。
例如,在完整的数据设置中,Boot-TOD在槽值精度(Slot Acc)上的性能优于TOD - BERT 0.3%,而在联合准确率(Joint Acc)上的性能优于TOD - BERT 2.7%,这表明了对话建模的优势。
3)对话行为预测:下表显示了对MWOZ和DSTC2数据集上的对话行为预测结果:
在这里插入图片描述

Boot-TOD在所有指标上都达到了最优秀的结果。本研究方法只使用10%的数据就能获得与使用100%数据的基线相当的性能,这证明了该方法具有更好的少样本学习能力。
4)响应选择:下表显示了在MWOZ和DSTC2数据集上的响应选择结果:
在这里插入图片描述

Boot-TOD在所有指标上实现了最优秀的结果。可以发现DSE在1%的数据设置中表现不佳,甚至比BERT在DSTC2上表现更差。这表明连续话语表示相似语义的假设在实际对话场景中是失败的。尽管TOD-BERT是用响应对比目标进行预训练的,但Boot-TOD在完整数据和少量数据设置上仍然明显优于DSTC2。结果表明,Boot-TOD方法具有较好的泛化能力。

4、定性分析

4.1 消融实验

下表给出了对话行为预测对DSTC2数据集和响应选择对MWOZ数据集的消融结果:
在这里插入图片描述

没有CLS Align的Boot-TOD在所有变体中表现最差。这表明CLS对齐损失对于捕获对话级信息至关重要,从而使对话模型具有更好的表示能力。去除MLP Head也会损害性能。可以发现去除MLP头使训练不稳定,所以添加预测器作为解码器来学习未来表示。Mask Align也有助于提高性能,这说明了学习细粒度令牌表示的重要性。停止梯度对对话行为预测有正向影响,对响应选择有负向影响。我们认为这是由于在响应选择任务中使用的停止梯度和双编码器之间的不匹配。

4.2 超参数分析

1)对齐层的效果:BootTOD使用top-K层表示来表示对齐损失L_cls和L_mask。下图显示了改变K值的效果:
在这里插入图片描述

可以发现,随着K值的增加,BootTOD得到了改善。这表明模型的不同层可以捕获不同粒度的特征,从而提高下游任务的性能。
2)最大响应长度的影响:响应由连续的话语组成,可选择设置的话语数从1到最大响应长度P。为了探索改变P值的效果,将P分别设置为0、3、All和Fix。P = All表示我们可以从整个话语中随机选择任意长度的话语,而P =Fix表示我们必须使用整个连续的将来话语。例如,如果我们有5个将来的话语F = {S_t, U_(t+1), S_(t+1), U_(t+2), S_(t+2)}。P = 3允许我们选择不超过3的任何长度,例如{S_t}或{S_t, U_(t+1), S_(t+1)};P = All允许我们从5个话语中选择任意长度的将来时态,即{S_t}或{S_t, U_(t+1), S_(t+1)}或F;P = Fix只能选择F。下图显示随P的变化BootTOD的性能变换:
在这里插入图片描述

由图可知,随着P的增加,BootTOD总体上得到了改善,说明更多的响应目标有利于学习更多样化的对话表示。还可发现,与P = All相比,P = Fix会降低性能。我们认为,固定的响应信息会缩小对话上下文的表示空间。

5、非对比方法比较

由于监督方法依赖于标记的NLI数据集或对话行为标签,该工作没有将它们纳入公平性比较。而是将Boot-TOD与最近的一种非对比方法FutureTOD进行了比较。FutureTOD提出了一个非对比框架,将未来的知识提炼成以前对话的表示。四个任务的比较结果如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

与FutureTOD相比,该工作的方法在所有任务的大多数指标上都表现出色。通过与其他非对比方法(FutureTOD)相比,强调了BootTOD性能的改进。

6、结论部分

在本文提出了一种新的对话预训练模型Boot-TOD,它通过自引导框架学习面向任务的对话表示。与对比框架不同,BootTOD将上下文和上下文+响应表示对齐,并忽略对比对的要求。此外,Boot-TOD将上下文表示与不同的目标对齐,以模拟人类对话固有的一对多多样性。通过对各种面向任务的对话任务进行了全面的实验。在所有场景中,Boot-TOD都明显优于TOD-BERT、DSE和其他强基线。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值