赛尔笔记 | 基于主观知识的任务型对话建模

本文最初投稿在哈工大 SCIR 公众号上

作者:柯昌鑫、孙楚芮、马龙轩

1 引言

对话系统技术挑战赛 DSTC(The Dialog System Technology Challenge)是对话技术领域的顶级赛事,到 2023 年已举办至第 11 届。

DSTC11 共设有 5 个赛道,其中刚刚结束的 track5 的主题是基于主观知识的任务型对话建模。本赛道包括三个子任务:

我们参加了 DSTC11-track5 并在所有 14 个参赛队伍中排名第三(客观指标),其中 Turn Detection 子任务排名第一。本文将介绍 track 5 相关内容以及我们在竞赛中尝试的方法。

2 赛题介绍

我们在本章中详细介绍具有主观知识的任务型对话 (SK-TOD) 建模任务的数据集、子任务、竞赛评价指标以及进行的前期相关调研。

2.1 数据集介绍

下图 [1] 为对话数据集中的三个对话实例和与它们相关的知识数据中的主观知识条目示例:

图1. 数据集示例。最上方的主观知识部分是 Gonville Hotel 和 Avalon Hotel 的评论,任务要求为下方的三个对话中每轮回复找到相关的知识条目

对话数据集有两部分来源:

知识包括两种:review 类型的主观知识(由多个句子组成) 和 FAQs 类型的知识(问答对)。这些知识被被划分为两个域:hotel 和 restaurant,分别包含 33 个实体和 110 个实体。

例如,hotel 域中的 Hobsons House 实体,包含的 review 知识有:

"I was very please with my recent visit to Hobsons House."
"I was on a business trip and needed a quiet place to stay and this place fit the bill!"
"While I was not pleased with the slow wi-fi and small room, I was content with their awesome breakfast options, friendly and engaging staff members and the best part!"
"Nice and quiet, just the way I like it!"
"Would definitely recommend this place to friends and plan on staying here again on my next venture!"
...

包含的 FAQs 知识有:

question: "What do you offer for breakfast?",
answer: "An Full English/Irish breakfast is available at the HOBSONS HOUSE"

question: "What is the check-out time at your location?",
answer: "Check-out time at the Hobsons House is between 7:30 am and 10 am."

...

2.2 问题定义

我们给出 DSTC11-track5 赛题的一般化定义。对于每一个对话实例 C=[U1,A1,U2,A2,,U|C|],除最后一轮外,之前每一轮都有 agent 的回复 Ai 与用户查询 Ui 对应。整个对话实例 C 可能与一个或多个实体相关,我们将该实体集合定义为 EC={E1C,E2C,,E|EC|C}

定义主观知识数据 B={(E1,KE1),(E2,KE2),,(E|B|,KE|B|)},其中 KEi=[K1,K2,,K|KEi|],表示每一个实体包含的若干知识条目。

我们的做法将整个任务进一步分解为如下图所示的四个阶段:

图2. 基于主观知识的任务型对话建模流程

本赛道的难点有三个:

  1. 当需要检索主观知识时,每个对话对应的知识条目是不确定数目的若干条;
  2. 验证集和测试集的分布与训练集有较大差异,有大量的 unseen 信息;
  3. 不同的主观知识有不同的情感倾向,回复中需要考虑多条主观知识中的不同情感倾向。

2.3 评价指标

三个子任务的评价指标分别为:

客观评测的最终分数为每个评价指标排名的倒数和,即

Score=i(1Si)

其中 Si 为第 i 个评测指标的结果在所有参赛结果中的排名。

2.4 相关调研

我们首先调研了 DSTC 的往届比赛,其中 DSTC9-track1 和 DSTC10-track2 均与本届赛题类似。

DSTC9-track1 的问题定义,数据集格式与本赛题完全相同,唯一的不同点在于每轮对话只需找出一条最相关的知识,问题要简单许多:

DSTC10-track2 将外部知识数据从书面语更改为口语,使得构建高泛化能力的模型更为重要。而且,由于该竞赛并未给出训练集,参赛队伍提出了很多有效的数据增广方法:

除此外,我们还调研了一些使用 MultiWOZ 数据集做端到端对话生成的模型:

3 竞赛方案

3.1 数据增强

我们基于原始数据集构造了两种增强数据集:

  1. unseen 数据集:利用知识数据扩充对话。在对话数据集中,每一个对话实例都围绕一个实体展开,知识数据中会有很多与这个实体相关的问答型知识(FAQ)。我们将这些问答对随机拼接在原始的对话实例中,就得到了只涉及一个实体的新的对话实例。为了模拟真实场景中话题转移,我们在另一个实体下生成对话的另一部分,并以 80% 的概率将它们拼接在一起 [13]
  2. noise 数据集:采用谷歌翻译服务将英语翻译成其它四种语言(西班牙语/德语/日语/法语),然后再将其反译为英语。当反译句子与原句子相似度过高(这一现象在英法互译中较为普遍)时,我们使用 Wordnet 进行同义词替换以增加其多样性。最后,我们将对话数据集及知识数据扩充为原来的 5 倍,这些数据用于对模型预训练。进一步将 5 种对话数据集和知识数据两两组合,得到原来 25 倍大小的数据集。这些数据集被认为是噪音,因为反译和同义词替换引入了词级和语义级的干扰。

3.2 Turn Detection 阶段

本阶段的目标是判断当前对话用户的最后一轮查询是否需要主观知识,是一个二分类问题。

我们使用自编码预训练模型 DeBERTa-v3-base[14],将当前对话上文和最一轮查询 C 作为输入,取最后一个隐藏层的第一个 token 即 [CLS] 的向量作为对话表示,将其输入一个线性层中就求得分类概率:

hC=Enc(C)P(C)=softmax(FFN(hC))

为了在后面进行模型融合,提高整体的泛化能力,我们训练了三个模型,分别适用于三种场景:

在后面,我们会使用基于差异感知的模型融合方法来融合这三种模型,让它们相得益彰。

3.3 Entity Track 阶段

本阶段的目标是确定与当前对话用户的最后一轮查询相关的实体。该阶段可以缩小后续知识选择的范围。

我们使用启发式方法为每个实体名称建立一个词典,然后基于 n-gram 匹配最后一轮对话中出现的实体。这种方法已经能达到较为不错的结果,验证集性能为 F1=0.9676,accuracy=0.9398。

3.4 Entry Selection 阶段

本阶段目标是选出与用户查询相关的知识条目。输入是对话上文 C,以及知识候选 K,输出为知识候选的子集 K+。我们使用同一个编码器获得两者的表示 hCkKi。然后将 hChKi|hChKi| 拼接在一起计算相关性:

hC=Enc(C),hKi=Enc(Ki)hfeature=[hC;hKi;|hChKi|]P(C,Ki)=softmax(FFN(hfeature))

在训练时,我们将与 ground-truth 同一实体的知识和其它实体的知识按 1 : 1 比例构造负例。在验证时,我们使用 Entity Track 阶段确定的实体中的知识作为知识候选。

与 Turn Detection 类似,我们同样训练了 Seen expert,Unseen expert 和 De-noise expert 这三种模型,之后也使用基于差异感知的模型融合方法来融合这三种模型。

3.5 Response Generation 阶段

本阶段目标是基于对话上下文 C 和相关知识片段 K+ 来创建响应用户请求的回复 St。我们将 K+C 连接起来作为输入,并使用经预训练的生成模型来生成回复。

我们既考虑了 decoder-only 架构的模型(如 GPT-2[17])也考虑了 encoder-decoder 架构的模型(如 BART[18] 和 T5[19])。

此外,为了降低 Entity Track 和 Entry Selection 阶段对本阶段的影响,我们在训练时使用了一些方法调整模型输入:

  1. 拼接对话时额外添加实体名字段强化实体信息;
  2. 随机丢弃 15% 的知识以让模型在 Entry Selection 阶段漏选知识时仍能取得良好的生成效果。

此外,我们还考虑了其他生成方式:

  1. 使用 KAT-TSLF 结构 [20],考察将对话上下文和全部候选知识条目作为输入以及将对话上下文和 KS 阶段选取的知识条目作为输入,但是效果均不如 BART 模型;

  2. 使用在本任务上经过 alpaca 微调的 LLAMA-13B[21],结合专门设计的 instruction,输入对话上下文和所选的知识条目来生成回复。然而,正如近期研究显示,LLM 存在幻觉问题 [22],不能很好地执行特定领域或知识密集型任务。因此该模型在本任务上其表现也不如 BART 模型。

3.6 基于差异感知的模型融合方法

为了融合 Seen expert,Unseen expert 和 De-noise expert 这三种模型,我们提出了一种基于差异感知的模型融合方法。

以 Entry Selection 阶段训练出来的三种模型为例。对于验证集的第 k 个对话实例,设 Sjgt 为 ground-truth 标签,它包含 K 条知识。我们用不同模型得到 N 条知识条目候选,并将它们按相关度降序排列。对于每个知识条目候选,我们为其设置权重为它的相关度排序加一的倒数。例如 Seen-expert 模型得到的知识候选的第 jSjD 权重为 WjD=1j+1。同理,SR,WESD,WD 分别为 Unseen expert 和 De-noise expert 得到的知识候选和权重。

由此得到知识候选集合 S={Si(i=1,2,,T)},NT3N,对于第 i 条知识,将它的融合权重定义为 Wi=pDW~iD+pRW~iR+pEW~iE(i=1,2,,T),其中,如果存在 SjDSD 使 SjD=Si,则 W~iD=WjD,否则 W~iD=0p 是超参数,满足 pD+pR+pE=1

此外,我们还对权重设置了一个阈值,得到的超过阈值的知识条目集合 Skthreshold 即为最终输出。使用验证集的 Recall/Precision/F1/EM 等指标学习超参数 p,整体算法如下图所示:

图3. 差异感知的模型融合方法

该方法对于不同任务和不同数据集均可适用:

4 结果分析

本章分析我们的方法在验证集及最终测试集上的表现。

4.1 Turn Detection 子任务

Turn Detection 子任务实验结果如表 1 所示:

表1 Turn Detection 子任务实验结果

不难看出 baseline 在验证集上已经有了很高的性能。考虑到最终测试集中有 unseen 对话 ,于是我们使用基于差异感知的模型融合方法,力求在测试集的 unseen 对话上获得更好的性能。

我们分别使用 Precision、Recall 和 F1 作为指标来学习模型融合参数,因为更高的 Recall 对 unseen 对话更有效,所以我们选择 Recall 和 F1 训练的结果模型融合结果作为最终提交。

在最终测试集上,我们的方法在所有提交结果中 F1 指标排名第一,Recall 指标排名第二,三项总和排名第一。

4.2 Knowledge Selection 子任务

Knowledge Selection 子任务实验结果如表 2 所示:

表2 knowledge selection 子任务实验结果

可以看到:

  1. 我们的单个模型表现都只略好于 baseline,然而使用我们的模型融合方法后,性能大幅提高,这说明我们的模型融合方法能结合不同 expert 的优势,使得模型综合性能大大提升;
  2. 分别使用不同的指标学习模型融合参数,就能得到相应指标下表现最好的模型。

我们依据 4 个指标的验证集结果总和选择最后两个结果(F1 和 EM)作为最终提交。在测试集上,我们的方法具有一致的性能,并且在很大程度上优于 baseline。尤其在 EM 指标上,我们的方法比 baseline 高出 14%。

为下一节表述方便,我们将这两个结果表示为 KS-F1 和 KS-EM。

4.3 Response Generation 子任务

Response Generation 子任务实验结果如表 3 所示:

表3 knowledge selection 子任务实验结果

我们在生成回复过程中并没有使用模型融合方法。上述结果可以反映出知识选择子任务对生成任务的影响。

使用 KS-F1 的 BART-base 生成结果在所有指标上都优于 baseline。这一结果表明,KS-F1 提供了更高质量的知识条目,并再次证明了我们模型融合方法的有效性。

BART-large 和 T5 作为更大的模型,在大多数指标上都优于 BART-base。此外,BART-large (KS-F1) 的 BLEU 指标表现极好,在所有提交中排名第二。BART-large (KS-EM) 在 ROUGE 指标上表现更好,T5-3B (KS-EM) 在 METEOR 指标上更好。然而,T5 在测试集上的 BLEU 指标表现不佳,与 BART-large 相比没有明显的优势。

5 总结

我们在 DSTC11-track5 竞赛中提出了一种基于差异感知的模型融合方法。该方法很好的解决了竞赛的两大难点:

最后我们获得了客观指标排名第三的成绩,这一成绩证明了我们方法的有效性。

当然,未来也有很多工作可以尝试:

数据增强:

知识选择子任务:

回复生成子任务:

模型融合:

参考文献


  1. C. Zhao et al., “‘What do others think?’: Task-Oriented Conversational Modeling with Subjective Knowledge.” arXiv, May 20, 2023. Accessed: Jun. 05, 2023. [Online]. Available: http://arxiv.org/abs/2305.12091 ↩︎

  2. M. Eric et al., “MultiWOZ 2.1: A Consolidated Multi-Domain Dialogue Dataset with State Corrections and State Tracking Baselines.” arXiv, Dec. 03, 2019. doi: 10.48550/arXiv.1907.01669. ↩︎

  3. H. He et al., “Learning to Select External Knowledge with Multi-Scale Negative Sampling.” arXiv, Feb. 03, 2021. doi: 10.48550/arXiv.2102.02096. ↩︎

  4. L. Tang et al., “RADGE: Relevance Learning and Generation Evaluating Method for Task-oriented Conversational System” Google Docs. https://drive.google.com/file/d/1BdhrczeSPlRU26iBsmGHhw8vPkwI4dlk/view. ↩︎

  5. R. Yan et al., “Towards Generalized Models for Task-oriented Dialogue Modeling on Spoken Conversations.” arXiv, Mar. 08, 2022. doi: 10.48550/arXiv.2203.04045. ↩︎

  6. X. Xu, J. Li, G. Chen, and G. Jin, “Using Masked Span Language Modeling for Multi-domain Dialogue State Tracking”. ↩︎

  7. T. Whang, J. Lim, D. Lee, S. Lee, and H. Lim, “Towards Filling the Gap Between Written and Spoken Dialogues for Multi-Domain Dialogue State Tracking”. ↩︎

  8. H. Yu, T. Hong, Y. Ko, and K. Lee, “Adapting Pre-trained Language Model for Dialogue State Tracking on Spoken Conversations”. ↩︎

  9. J. Cho, T. Hong, C. Park, J. You, Y. Ko, and K. Son, “Various Uses of Pre-trained Language Model for a Knowledge-grounded Task Oriented Dialogue System”. ↩︎

  10. C.-H. Tan et al., “Learning to Retrieve Entity-Aware Knowledge and Generate Responses with Copy Mechanism for Task-Oriented Dialogue Systems.” arXiv, Dec. 22, 2020. Accessed: Jun. 05, 2023. [Online]. Available: http://arxiv.org/abs/2012.11937 ↩︎

  11. W. He et al., “GALAXY: A Generative Pre-trained Model for Task-Oriented Dialog with Semi-Supervised Learning and Explicit Policy Injection.” arXiv, Mar. 29, 2022. doi: 10.48550/arXiv.2111.14592. ↩︎

  12. Y. Lee, “Improving End-to-End Task-Oriented Dialog System with A Simple Auxiliary Task,” in Findings of the Association for Computational Linguistics: EMNLP 2021, Punta Cana, Dominican Republic: Association for Computational Linguistics, Nov. 2021, pp. 1296–1303. doi: 10.18653/v1/2021.findings-emnlp.112. ↩︎

  13. C.-H. Tan et al., “Learning to Retrieve Entity-Aware Knowledge and Generate Responses with Copy Mechanism for Task-Oriented Dialogue Systems.” arXiv, Dec. 22, 2020. Accessed: Jun. 05, 2023. [Online]. Available: http://arxiv.org/abs/2012.11937 ↩︎

  14. P. He, X. Liu, J. Gao, and W. Chen, “DEBERTA: DECODING-ENHANCED BERT WITH DISENTANGLED ATTENTION,” presented at the International Conference on Learning Representations, Jan. 2021. Accessed: Jun. 06, 2023. [Online]. Available: https://openreview.net/forum?id=XPZIaotutsD ↩︎

  15. Y. Liu et al., “RoBERTa: A Robustly Optimized BERT Pretraining Approach.” arXiv, Jul. 26, 2019. doi: 10.48550/arXiv.1907.11692. ↩︎

  16. J. Devlin, M.-W. Chang, K. Lee, and K. Toutanova, “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.” arXiv, May 24, 2019. Accessed: Sep. 23, 2022. [Online]. Available: http://arxiv.org/abs/1810.04805 ↩︎

  17. Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei, Ilya Sutskever, et al. Language models are unsupervised multitask learners. ↩︎

  18. Mike Lewis, Yinhan Liu, Naman Goyal, Marjan Ghazvininejad, Abdelrahman Mohamed, Omer Levy, Veselin Stoyanov, and Luke Zettlemoyer. 2020. Bart: Denoising sequence-to-sequence pretraining for natural language generation, translation, and comprehension. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pages 7871–7880. ↩︎

  19. C. Raffel et al., “Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer.” arXiv, Jul. 28, 2020. doi: 10.48550/arXiv.1910.10683. ↩︎

  20. S. Liu, X. Zhao, B. Li, F. Ren, L. Zhang, and S. Yin, “A Three-Stage Learning Framework for Low-Resource Knowledge-Grounded Dialogue Generation.” arXiv, Sep. 09, 2021. Accessed: Nov. 17, 2022. [Online]. Available: http://arxiv.org/abs/2109.04096 ↩︎

  21. H. Touvron et al., “LLaMA: Open and Efficient Foundation Language Models.” arXiv, Feb. 27, 2023. doi: 10.48550/arXiv.2302.13971. ↩︎

  22. S. Bubeck et al., “Sparks of Artificial General Intelligence: Early experiments with GPT-4.” arXiv, Apr. 13, 2023. doi: 10.48550/arXiv.2303.12712. ↩︎