Exploiting domain-slot related keywords description for Few-Shot Cross-Domain Dialogue State Trackin

0 Abstract

我们设计了一个提取模块来提取对话中与domain-slot相关的动词和名词。然后,我们将它们集成到描述中,目的是提示模型识别slot信息。此外,我们引入了一种随机采样策略来提高模型的领域泛化能力。我们利用预先训练的模型对上下文和描述进行编码,并以自回归的方式生成答案。

1 Introduction

两种方式来处理小样本跨域场景中的DST任务:(1)模块化方法。他们需要专门设计一个槽门来预测当前轮次中槽的运行状态,并且可以处理分类槽和非分类槽。这些模块无疑增加了模型的复杂性。(2) 端到端方法。这些策略降低了模型的复杂性,促进了模型的传递能力。通常,他们需要一些描述来帮助模型理解插槽。图1的上部显示了以前作品中三种不同风格的描述。然而,这些方法仍然面临两个挑战。首先,由于缺乏与域槽相关的描述信息作为提示,这些描述可能会误导模型在资源不足的情况下输出错误的答案。

在这里插入图片描述

本文提出Domain-slot Related Information Awareness(DRIA),该方法基于领域槽相关关键词提取模块和随机抽样策略。具体来说,对于提取模块,我们首先使用TF-IDF算法和CoreNLP POS标记工具提取对话中的几个动词和名词作为关键词,然后将它们整合到我们的描述中。我们认为,名词和动词在对话中总是暗示主题或领域槽的相关信息。如图1所示,用户查询为“我想在allenbel预订8人的4晚”。用户的意图之一是告诉代理商在酒店住多久,可以表达为“预订4晚酒店”。动词“book”和名词“nights”表示域名位置:hotel-book stay。同样,“book”、“nights”和“people”也暗示了域槽:hotel-book people。此外,随机采样策略是为了解决描述过于简单的问题而设计的。我们在训练过程中通过随机抽样提取关键词,以确保每一个领域槽的描述在每一轮都会变得更有信息性。在评估过程中,我们将所有提取的关键词注入到描述中,为模型提供尽可能多的信息。

我们的贡献总结如下:
(1)我们提出了一个有效的框架来构建与领域槽相关的关键词描述。
(2) 我们设计了一种随机抽样训练策略,在训练过程中集成丰富的域槽相关信息,旨在提高泛化能力。

2 Methodology

2.1 Keyword-description

如图2所示,我们为每个插槽构建了一个关键字列表。这些关键词主要分为两类:与领域槽相关的动词和名词。此外,我们将槽类型添加到关键字列表中,这可以根据槽值的类型提示模型的输出,并使同一域槽的模型输出更加一致。我们描述的格式是" The [slot] of the [domain] which may include {slot_v} or {slot_n}, and its output type is [output_type]"。

2.2 Keyword extraction module

该提取模块的过程分为三个步骤:(1)遍历整个数据集。对于每个域槽,如果在对话回合中提到域槽,则标记该回合中每个token的词性(此处使用CoreNLP POS标记工具),然后将每个单词记录在该回合的列表中。(2) 计算每个插槽列表中的单词频率,并取前20个。(3) 使用TF-IDF算法,我们计算每个槽对应的列表中单词的权重,然后将前5个作为每个类别关键字的内容。

2.3 Random sampling strategy

为了提高模型的领域泛化能力,我们提出了一种随机采样策略,丰富了训练过程中的描述内容。如图2所示,在训练过程中,我们打乱了每个类别的关键词列表,然后随机选择一些关键词(或空列表)来构建描述。这样,对于相同的域槽,描述内容的输入每次都可能有很大的差异概率,这使得模型更好地理解描述内容,从而提高了模型的泛化能力。在评估和测试过程中,我们不使用这种随机训练方法,而是将所有关键字输入到模型中,以提供尽可能多的信息。

在这里插入图片描述

2.4 Keywords-prompt DST

在本节中,我们定义了对话历史 C t C_t Ct,它是从开始到当前回合t的对话积累。每个回合的对话都由系统和用户的话语组成。我们将对话历史记录为 C t C_t Ct={ M 1 , N 1 , … , M n , N n M_1,N_1,…,M_n,N_n M1,N1,,Mn,Nn},其中 t 表示对话轮数,M和N分别表示系统和用户。模型的第i个输入由对话历史和第i个域槽的描述组成:

在这里插入图片描述

其中[sep]表示连接器。第i个输出是第i个域槽的值,该值对应于T轮中对话状态中的描述。如果对话圈中没有槽值,则输出为“None”:

在这里插入图片描述

最后,我们使用交叉熵作为损失函数。

2.5 Training and evaluation process

首先,我们利用提取模块来获取每个领域槽的关键词列表。在训练过程中,根据随机抽样策略提取关键词来构建描述。在每一轮中,我们遍历每个槽的描述,并将描述和上下文作为输入连接起来。然后模型输出相应的结果。在评估阶段,提取的关键词将用于构建描述,其他步骤与训练阶段大致相同。请注意,在小样本域微调过程中,我们随机选择(1%、5%、10%)数据集进行关键词提取,然后使用相同的数据进行训练。我们使用T5 small作为我们的实验模型,以与T5-DST一致。

3 Experiments

3.1 Dataset, metric and Evaluation

MultiWOZ 2.0 dataset有7个不同的领域。其中餐厅、火车、景点、酒店和出租车领域用于训练和测试。我们使用联合目标准确性,即正确预测给定服务的所有时段分配的平均准确性,以评估模型的结果。

3.2 Baselines

(1) TRADE:可转移对话状态生成器,利用复制机制促进领域知识转移。(2) DSTQA:通过本体图上的问答进行对话状态跟踪。(3) T5DST:基于T5的零样本和小样本跨域DST的时隙描述增强方法。

3.3 Implementation

为了确保模型与T5DST的一致性(Lin等人,2021b),我们基于T5-small(60M参数)模型实现了DRIA,该模型具有6个编码器-解码器层,隐藏大小为512。所有模型都使用AdamW优化器进行训练,基本学习率为0.0001。对小样本跨域实验,首先在批次大小为8的4个域上对2个epoch的模型进行训练,然后分别用1%、5%和10%的目标域数据对5个epoch进行微调。联合目标精度用于评估模型的性能。只有当所有预测值与正确值完全匹配时,预测的对话状态才是正确的。

3.4 Prompt Description Variants

(1) Naive: 槽名从 “domain-slot” pair 到 “[slot] of the [domain]“的简单迁移;
(2) 槽类型: 每个槽类型的模板遵循 “[slot type] of [slot] of the [domain]” 以促进不同插槽之间的知识转移;
(3) 槽相关的名词和动词: 描述格式是” The [domain] of the [slot] which may include {slot_v} or {slot_n}, and its output type is [output_type]”. 注意 “[output_type]” 遵循槽类型格式。

3.5 Main Results

在这里插入图片描述

Ablation Studies
如表1所示。

Slot Accuracy Analysis

在这里插入图片描述

Case Studies

在这里插入图片描述

在第一种情况下,T5DST错过丢失了域槽:餐厅食物,但我们的方法正确地识别了这对域槽。分析是因为关键字描述为模型提供了丰富的信息,以预测尽可能多的正确槽。在第二种情况下,没有随机抽样策略的T5DST和DRIA都将景点名称视为酒店名称,而DRIA则避免了这一错误。在这种情况下,随机采样策略可以缓解槽预测错误所导致的误导性信息和缺乏领域泛化的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值