最新模型-SUMBT【slot-utterance matching belief tracker】

论文名称:SUMBT: Slot-Utterance Matching for Universal and Scalable Belief Tracking

Abstract

本文的模型叫做SUMBT,全称slot-utterance matching belief tracker,槽-话语匹配的对话状态跟踪器。

根据多领域DST简史的调研,SUMBT属于fixed-vocabulary based DST方法,这种方法说白了就是基于预定义的本体和候选槽值列表,寻找合适的value。那么SUMBT好在哪呢?

以往的方法,建模的跟踪器都是领域/槽位依赖的,所以欠缺领域本体设置的灵活性。

本文把这些以往的方法统称为slot-dependent methods。

而根据这篇论文的题目,可以看出这个模型自我标榜的就是Universal 和Scalable。

SUMBT模型的思想简单归纳为两点:

  1. 通过基于上下文语义向量(contextual semantic vectors)的注意力机制学习出现在话语中的domain-slot-types与slot-values之间的关系。

  2. 模型以一种非参数(non-parametric)的方式预测slot-value标签

好下面进入具体内容。

一些名词:

utterance:话语。包括用户话语与系统话语。

Introduction

fixed-vocabulary based DST方法的一个优化方向,就是解决Scalable(可扩展性)问题,即灵活地追加新domain、slot或value的问题。

传统的基于统计学的DST(statistical belief trackers),对lexical and morphological variations(词汇和词形变化)很脆弱,因为它们依赖与人手动构造的语义字典

后来深度学习兴起,基于神经的DST(neural belief trackers)即NBT出现了,它们通过学习神经语义词表示大幅提高了性能。

但是,可扩展性调整依然没有被解决。以往的方法,要么对每一个domain/slot分别建模,要么难以集成本体中未定义的新value。

本文的模型标榜的就是Universal 和Scalable,所有domain和slot类型都靠一个跟踪器处理,从而实现了所谓的domain and slot-independent。

本文吸收了机器阅读理解方面的成果,把domain-slot type看做问题,把slot-value pair看做回答,从用户与系统的话语中寻找合适的回答(假定话语中存在)。

用户与系统的话语通过BERT编码,此处BERT提供了句子们的上下文语义表示(contextualized semantic representation of sentences)。

domain-slot type和把slot-values也通过BERT编码。

然后,SUMBT学习the way where to attend(啥意思?)。

模型基于一个特定指标以一种非参数方式预测slot-value label,这使得模型的结构是domain and slot-independent的。

最后,一个单一的SUMBT就能处理任何domain-slot type和把slot-values,并且使用了多领域多槽位之间共享的信息。

在这里插入图片描述

SUMBT

这一部分详细介绍本文DST的结构。

SUMBT的结构如图1。红字是一个对话例子,问题是restaurant-food,回答是modern European。 U t U_t Ut q s q^s qs y t v y^v_t ytv是编码器输出向量,

由图1可看出SUMBT分成四个部分:

  • BERT encoders:灰色(BERT_sv_)和蓝色部分(BERT),把所有该encode的东西(话语和本体)encode。
  • a slot-utterance matching network:红色方框,多头注意力机制
  • a belief tracker:黄色方框
  • a nonparametric discriminator:顶部虚线

Encoders

此处的编码器,学名Contextual Semantic Encoders,因为它们提供了句子们的上下文语义表示(contextualized semantic representation of sentences),而不是简单的静态词向量。

考虑domain-slot-types s, 轮次t下的slot-values v t v_t vt,输出向量分别是 x s x^s xs x t v x^v_t xtv编码输出成 q s q^s qs y t v y^v_t ytv。在训练中固定BERT_sv_的权重,以确保输出上下文向量的domain and slot-independence,从而能够对新领域scalable。

对于系统话语(n个word),用户话语(m个word),BERT把每个word $\omega 编 码 成 上 下 文 语 义 词 向 量 编码成上下文语义词向量 u , 一 个 用 户 系 统 话 语 对 通 过 一 个 [ S E P ] 标 志 符 拼 接 , 编 码 成 矩 阵 ,一个用户系统话语对通过一个[SEP]标志符拼接,编码成矩阵 [SEP]U_t$。

Slot-Utterance Matching

注意力机制是关键。encoders输出的domain-slot type 向量 q s q^s qs,q取自query。模型把这个query与上下文语义向量u在每个可能word上匹配,然后计算注意力分数。这里,我们使用多头注意力。

输入 q s q^s qs U t U_t Ut,输出attended context vector h t s h^s_t hts

Belief Tracker

这里是DST,很常规的方法。随着对话继续,对话状态不仅由当前turn决定,也由以往对话历史决定。

将上一步获取的参与上下文向量(attended context vector)喂入一个RNN:

d t s = R N N ( d t − 1 s , h t s ) d^s_t=RNN(d^s_{t-1}, h^s_t) dts=RNN(dt1s,hts)

得到了很接近target slot-value’s semantic vector的向量。

既然BERT中,输出被一个正则化层正则化,那么本文就业进行一次正则化,以增进训练收敛。

Training Criteria

a nonparametric discriminator,这是一个分类器,我们给出的模型需要通过训练学习最小化target slot-value’s semantic vector与上一步获取的输出向量的差异。

对于一个槽值 v t v_t vt的概率分布p,计算方法大致就是一种距离度量,每一个turn的每一个slot-types的p对数似然函数的加和就是目标函数L,从而对全部domain-slot-types一起训练,模型学习到slot-types与slot-types的一般关系。

Experimental Setup & Results

数据集是woz 2.0和multiwoz。前者包含一个领域,三种槽位。后者包含七个领域,35种槽位。

本文设计了3个基线模型:BERT+RNN,BERT+RNN+ontology,以及Slot-dependent SUMBT。

  • BERT+RNN:BERT指contextual semantic encoder,RNN指RNN-based
    belief tracker。
  • BERT+RNN+ontology:ontology指ontology-utterance matching network
  • Slot-dependent SUMBT:结构和SUMBT完全相同,但是模型对每个slot分别训练,所以是Slot-dependent。

网络细节什么的就略过了。

Joint Accuracy

在这里插入图片描述

WOZ 2.0数据集上的性能对比,可见三种基线模型彼此几乎没有区别,并且都比以前的模型好。而本文的SUMBT达到了0.91的联合准确率,效果拔群。可见通过一个单一模型利用普遍性知识是很好的。

multiwoz数据集上的性能就不上图了,反正宣称SOTA就是了。

Attention visualizations

在这里插入图片描述
这是一个注意力权重分析的例子,对话共三轮,每轮的两个柱状图分别是given slots。可以看出attention是有作用的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值