当时的方法都无法扩展到更大、更复杂的对话领域中,问题在于:
作者提出了一种新的神经信念跟踪 (NBT) 框架,基于 表示学习 的最新进展,克服了上述问题。NBT 模型是对预先训练好的单词向量进行推理,学习将它们组合成用户话语和对话上下文的分布式表示。我们对两个数据集的评估表明,这种方法超过了过去的局限性,匹配了最先进的模型的性能,这些模型依赖于手工制作的语义词汇,并在不提供这些词汇时表现优于它们。
神经信念跟踪器 (NBT) 是一种模型,设计用于检测在对话过程中在给定回合中构成用户目标的槽值对。它的输入包括在用户输入之前操作的系统对话、用户话语本身以及它需要做出决定的单个候选插槽值对。例如,模特可能不得不预测 "FOOD=IATLIAN" 的目标是否在“I am looking for good pizza”中表达出来。为了执行信念跟踪,NBT 模型迭代所有候选插槽值对(由本体定义),并决定哪些插槽值对刚刚由用户表示。
上图显示了模型中的信息流。NBT 层次结构中的第一层在给定三个模型输入时执行表示学习,为用户话语 (r)、当前候选槽值对(c) 和系统对话作用 (t_q、t_s、t_v) 生成向量表示。随后,学习到的向量表示通过上下文建模和语义解码子模块进行交互,获得中间交互 (summary vectors) 摘要向量 d_r、d_c 和 d。这些作为最终决策模块的输入,该模块决定用户是否表示候选槽值对所表示的意图。
对于任何给定的用户话语、系统行为和候选槽值对,表示学习子模块生成向量表示,作为模型下游组件的输入。并且,所有的表示学习子组件都使用预先训练好的词向量集合。作者使用的是 Paragram-SL999 word vectors,一种基于语义相似度训练的词向量表示。这样,在测试时,unseen 的单词与熟悉的槽值语义相关。将纯粹通过它们在原始向量空间中的位置来识别。
个词向量的连接:
\oplus: vector concatenation
作者提出了两种不同于生成 u 表示的方法的模型变体:NBT-DNN 和 NBT-CNN。两者都作用于话语的组成 n -gram 表示。
该模型生成话语的 累加 unigrams, bigrams, trigrams 表示:
再难过 softmax 函数归一化:
最后将三者相加后得到最终表示:
该模型使用的累加 n -gram 表示只是话语中所有单词向量的未加权和。理想情况下,该模型应该学会识别话语的哪些部分与后续的分类任务更相关。例如,它可以学会忽略动词或停止词,并更注意更有可能表达插槽值的形容词和名词。
, 则 3 个中间表示为:
F_n^s : 滤波器
之后经过非线性变化和最大值池化:
同样三者相加后得到最终表示:
这个模块对表征 r 检测是否包含候选 slot-value 对 c,处理方法也比较简单。(c_s,c_v)分别是 slot 和 value 的词向量表示,投影映射成与 r 相同维度的向量,点积求相似度 d。
当用户询问时,仅从当前用户的输入还不足以抽取意图,belief tracker应该考虑对话的上下文,特别是上一句系统的动作。作者提出了两种动作:System Request和System Confirm。
第一种情景是,系统对一个特定的 slot 发出提问,用户一般会给出具体的 value。第二种是系统询问用户,某个 slot-value 是否正确,用户一般只会回答对或错。这两个场景应分别计算。t_q 是 request 的参数,(t_s,t_v) 是 comfirm 的参数。t_q,t_s,t_v 都是 slot/value 的词向量,多个词直接求和得到。通过系统动作,候选对 (c_s,c_v) 作为一个 gate, 控制输入表征 r 的信息输出般情况下系统要么是请求,要么是确认,那么此时 t_q 为 0 向量或者 (t_s,t_v) 是零向量。):
将输入 x xx 映射到维度为 size 的向量,softmax 二分类,完成 slot-value 对的存在检测:
论文提出了一种简单的 belief state 的更新机制:先估计当前轮对话的 slot-value,再更新历史记录。在嘈杂的环境中,取 ASR 输出的前 N 个最佳结果(N-best list)进行分析。对于第 t 轮对话,sys^{t-1} 表示前一个系统动作,h^t 是 ASR 输出的结果假设,h_i^t 是 N-best list 中的第 i 个,s 是 slot, v 是 value,NBT 模型需要估计 (s,v) 在用户的口语输入中的概率:
对于当前和历史对话的 belief state 更新,引入一个权重系数 \lambda:
然后对于 slot s ss检测到的 values,取概率最大的作为当前的 goal value。
实验仍然是 task-oriented 的对话任务,数据集有两个:DSTC2 和 WOZ 2.0。
可以看到,NBT-DNN 和 NBT-CNN 都能超过基于语义词典的模型,当然 NBT-CNN 多了不同 n -grams 特征的权重学习,会更好一点。论文还做了不同词向量对结果影响的实验。
可以看出,专门针对语义任务的词向量 Paragram-SL999 对实验效果提升明显,这也很显然,先验知识更丰富,对下游的任务当然效果更佳。