0%

A Bi-model based RNN Semantic Frame Parsing Model for Intent Detection and Slot Filling

论文地址,作者是 Yu Wang et.al.,发表于 2018 年 12 月。

摘要翻译

意图检测和 slot filling 是构建 SLU 的两个主要任务。现在,多个基于深度学习的模型在这些任务上都取得了良好的效果。最有效的算法是基于 seq2seq(or encoder-decoder)的结构,并使用单独或联合的模型生成意图语义标记semantic tags)。然而,以往的研究大多将意图检测和 slot filling 作为两个独立的平行的任务来处理,或者使用 seq2seq 模型来生成语义标记和意图。这些方法大多采用一个(联合的(joint))神经网络模型(包括 encoder-decoder 结构)对两个任务进行建模,因此可能无法充分利用它们之间的交叉影响。本文设计了一种新的基于 Bi-modelRNN 语义框架解析神经网络结构RNN semantic frame parsing network structures),利用两个有关联的双向 LSTMs(BLSTM)来将它们之间的相互影响考虑进去,共同完成意图检测和 slot filling 任务。我们的带 decoder 的 Bi-model 结构在 ATIS 上取得了一流的结果,意图准确率提高了0.5%,slot filling 准确率提高了0.9%。

引言

过去几十年内,SLU 上的研究进展迅速。 1. 意图识别做法:regression, SVM, deep NN 2. slot filling 做法:CRF, RNN

余下章节如下所述: 1. 第二节:已知的深度学习方法简要概述(意图检测和 slot filling) 2. 第三节:介绍 Bi-model 3. 第四节:展示不同数据集上的实验

Bi-model RNN structures for joint semantic frame parsing

尽管在这两个任务上使用 seq2seq 获得了成功,但是大多数方法仍旧在每个任务上使用单一的 RNN 模型。他们将意图检测和 slot filling 看作是两个独立的任务。本节,使用 B-model 考虑它俩的关联,从而进一步提高性能。

Bi-model RNN Structures

两个模型(a)Bi-model structure with a decoder; b)Bi-model structure without a decoder)的图例如图 1 所示。两个结构十分相似,图 1a 包含了一个基于 LSTM 的 decoder,因此除了有一个 encoder state \(h_t\) 之外,还有一个额外的 decoder state \(s_t\)注意:从多个模型/多模态中使用某些信息以实现更好性能的概念已经被广泛应用于深度学习、系统识别以及最近也有被用在强化学习领域之中。除开使用共用的信息,本论文,我们将引入一个全新的方法(通过分享它们之间的内部 state 信息)以异步地训练多个神经网络。

Bi-model structure with a decoder

Bi-model structure with a decoder 如图 1a 所示,架构中有两个互联的 Bi-LSTMs(BLSTMs),一个用于意图检测,一个用于 slot filling。每个 BLSTM 分别正向和反向地在输入语句序列(\(x_1, x_2, \cdots, x_n\))上读取信息,并且生成两个隐藏状态序列 \(hf_t\)\(hb_t\)。然后将 \(hf_t\)\(hb_t\) 拼接成在第 t 个时间步上的最终 BLSTM state \(h_t = [hf_t, hb_t]\)。因此我们的双向 LSTM \(f_i(\cdot)\) 生成了一个隐藏状态序列 \((h^i_1, h^i_2, \cdots, h^i_n)\),其中 i=1 对应神经网络的意图检测任务,i = 2 对应 slot filling 任务。 为了进行意图检测,隐藏状态 \(h^1_t\) 与 slot filling 任务中 由\(f_2(\cdot)\) 产生的 \(h^2_t\) 组合在一起,以生成在第 t 个时间步由 \(g_1(\cdot)\) 产生的状态 \(s^1_t\)\[ s^1_t = \Phi(s^1_{t-1}, h^1_{n-1}, h^2_{n-1})\\ y^1_{intent} = \arg\max_{\hat{y}^1_n} P(\hat{y}^1_n | s^1_{n-1}, h^1_{n-1}, h^2_{n-1}) \] 其中 \(\hat{y}^1_n\) 包含在最后一个时间步 t 的所有意图标签的预测概率。 对于 slot filling 任务类似。

\(g_1(\cdot)\)\(g_2(\cdot)\) 实际上就是 decoder

Bi-Model structure without a decoder

就是没有 \(g(\cdot)\) 产生的 s。

Asynchronous training