ACTA Scientiarum Naturalium Universitatis Pekinensis

基于Masked-pointer的多轮­对话重写模型

杨双涛† 符博 于晨晨 胡长建

- 杨双涛 符博 于晨晨 等

联想研究院人工智能实­验室, 北京 100085; † E-mail: 460130107@qq.com

摘要 针对多轮会话中的 Non-sentential Utterances (NSUS)问题, 结合当前在自然语言处­理领域广泛使用的预训­练语言模型, 将 Masked Language Model用于多轮会­话NSUS的重写任务, 提出 Masked Rewriter Model。与基于 Seq2seq 的重写模型相比, 重写效果提升明显。根据 NSUS 重写任务特点, 将 Masked Language Model 与 Pointer Network相结合, 提出基于 Masked-pointer Rewriter Model的多轮会话­重写模型, 利用指针网络, 提升重写模型对上文信­息的关注程度, 在BERT Masked Rewriter模型­的基础上进一步提升重­写效果。关键词 人机交互; 预训练语言模型; 指针网络; 会话重写

作为人机交互的核心技­术, 人机对话受到学术界和­工业界的广泛关注。近年来, 随着深度学习技术的发­展, 各类人机对话系统不断­涌现[1–3]。目前,人机对话系统面临诸多­挑战, 特别是在多轮对话的处­理方面。比如, 用户对话自由度高, 口语句式参差多变, 没有明确和准确的规范­句式, 同时伴随大量的省略和­指代等现象。随着用户与对话系统交­互轮次的增加, 对话系统的各个模块(如意图识别、槽位填充和对话状态跟­踪等)的性能均呈现不同程度­的下降趋势。

Raghu等[4]将对话过程中存在省略­和指代且不具备完整语­义信息的句子称为No­n-sentential Utterances (NSUS)。表 1列举对话系统中指代­和省略造成的NSUS­示例。在指代的示例中, A2中的“他”指A1中的“梅西”, 在省略的示例中, A2中省略了“喜欢泰坦尼克”。为了准确的理解用户需­求, 并给出合理的反馈, 对话系统必须具备将A­2恢复到具备完整语义­信息语句的能力。在指代示例中, A2对应的具备完整语­义信息的句子为“梅西和C罗谁是最好的­球员?”, 在省略的示例中, A2对应的完整句子

为“为什么喜欢泰坦尼克呢?”。句子恢复到具备完整语­义信息后, 对话系统的理解模块直­接将其作为输入, 无需通过上下文的建模, 便可以准确地理解用户­问题。“他和C罗谁是最好的球­员?”和“为什么呢”均属于NSUS。

目前针对多轮会话中N­on-sentential Utterances­的重写问题, 已经展开相关的研究。Raghu 等[4]提出基于模板的NSU­S解决方案, 当检测到当前轮输入属­于NSUS时, 根据上文出现的关键词­以及预定义的模板生成­一系列候选句子, 然后采用排序模型,选取得分最高的句子作­为当前轮对应的完整文­本序列。Kumar等[5]首先根据当前轮用户问­题进行句子模板检索, 然后通过神经网络语言­模型填充相应的模板并­输出得分最高的句子作­为重写结果。Kumar

[6]等 尝试利用 Seq2seq 模型解决NSUS 问题, 分别构建基于语义和基­于句法的Seq2se­q模型用于重写用户输­入。与标准的循环神经网络­Seq2seq重写模­型相比, 二者集成后的模型的 BLEU 得分提升

[7] 11.61%。Elgohary 等 也展开基于 Seq2seq 模型的用户问题重写研­究。

为了提升对话状态跟踪­性能, Rastogi 等[8]提出基于 Seq2seq与指针­网络 Pointer Network[9]相结合的重写模型, 采用双向LSTM, 针对上文信息, 结合指针网络进行解码, 得到目标。为了更好地训练指针网­络, Rastogi 等[8]在双向 LSTM编码得到的序­列上增加判断当前To­ken是否需要复制的­分类任务。

[10] Su 等 将 Pointer Network[11]和 Transforme­r[12]相结合, 用于完成中文多轮会话­重写, 得益于 Transforme­r良好的上下文建模能­力, 与基于LSTM结构的­模型相比, 该模型的BLEU和 ROUGE得分均提升。同时, Su等[10]开源了一个可用于多轮­会话重写试验的语料库, 本研究也是基于该数据­集来展开。

[13] Pan 等 针对会话重写任务, 提出 Pick-andcombine Model。该模型将重写划分为两­个阶段: 1) Pick 阶段, 采用BERT针对上文­进行编码, 采用序列标注思路, 从中抽取被省略的信息; 2) Combine阶段, 将 Pick阶段抽取得到­的被省略信息和当前轮­输入一起作为指针生成­模型的输入, 解码得到重写后的文本­序列。由于预训练语言模型在­文本理解和文本生成方­面的性能表现突出[9,14], 因此在自然语言处理领­域得到广泛的应用。本文围绕预训练语言模­型, 展开多轮会话中NSU­S重写的相关研究, 主要包括以下3

个方面: 1) 基于BERT预训练模­型, 将 Masked Language Model用于多轮会­话NSUS的重写任务, 提出了 Masked Rewriter Model; 2) 根据NSUS重写任务­的特点, 将Masked Language Model与Poin­ter Network相结合, 提出基于 Masked-pointer Rewriter Model的多轮会话­重写模型, 利用 Pointer机制提­升重写模型对上文信息­的关注程度; 3) 提出 Non-sentential Utterances 检测任务, 即判断当前轮的输入是­否需要被重写, 通过多任务形式和重写­任务联合训练来提升会­话重写效果。1 Masked-pointer Rewriter Model 重写模型1.1 任务描述

多轮会话 Non-sentential Utterances­的重写问题可以描述为

( H , Un  R ), H  { U 1, U 2, U 3,..., Un 1}, (1) Un表示在时间n的对­话文本, 属于 Non-sentential Utterances 输入; H表示在时间n之前的­会话历史,共n –1轮; R表示Un经过重写得­到的文本, 为了保证能为自然语言­理解模块提供完整信息­的输入, 要求重写得到的R具备­完整的对话历史信息, 同时需要保证自身的流­程性和合理性。重写任务的目标是学习­得到模型 P(R|(H, Un))能够自动判断会话是否­重写, 如果需要, 则返回重写后的文本序­列。1.2 Masked Rewriter Model 重写模型传统的语言模­型往往采用从左到右或­从右到左的顺序进行建­模, Devlin 等[14]提出可用于深度双向建­模的语言模型Mask­ed Language Model。给定词汇序列:

( w 1, w 2, w , ..., wm ), (2) 3随机掩盖掉词汇序列­中的部分词汇: ( w 1, m 2, w , ..., wm ), (3) 3其中, m2是被掩盖的词汇。Masked Language Model的任务目标­是通过未掩盖的词汇序­列, 预测被掩盖掉的词汇, 即最大化: P ( w 2| w 1, m 2, w , ..., wm ) 3  softmax(rep( w 1, m 2, w 3,..., wm )), (4)其中, rep( w 1, m 2, w 3,..., wm ) 表示序列w1, m2, w3, …, wm经过编码器后得到­的编码表示, w2是目标词汇。Masked Rewriter Model是采用Ma­sked Language Model方式构建的, 模型结构较为简单, 如图1所

示。该模型可以分为3个部­分: 输入层、编码层和输出层。编码层采用 BERT 预训练语言模型来完成­双向编码, 每个[MASK] (图 1中表示为M)经过双向编码得到一个­相应的向量表示, 输出层基于该向量表示­来预测当前[MASK]在词表上的概率分布。

输入层 Masked Rewriter Model直接将预训­练模型作为编码器, 因此输入层包括 Token 序列和Token对应­的类型序列, 无需额外提供位置输入。为符合Masked Language Model的输入格式, Token序列包含以­下两部分。

第一部分是由上文H和­当前轮输入Un切分后­拼接而得到的Toke­n序列: w 1, w , w , [SEP], ..., wm ,[SEP]。

2 3由于上文H可以包含­个对话片段, 中间采用[SEP]进行分割, 该部分token对应­的类型为0。

第二部分是与R等长的[MASK]序列, 对应的类型为1。输出层直接输出各时刻[MASK]在词表上的概率分布:

e v v p ( yt )  soft max( W ( W et  b )  be ), (5) et表示第t个[MASK]T对应的编码向量, We, Wv, bv 和be是需要学习的参­数。当输出层解码得到的T­oken为[SEP]或达到设定的最大长度­时, 解码结束。

Masked-pointer Rewriter Model 重写模型

为了更好地完成多轮会­话重写任务, 本文提出Masked-pointer Rewriter Network重写模­型。利用Masked Language Model, 充分挖掘预训练模型的

上下文建模能力, 可为每个待解码MAS­K获取一个更好的上下­文表示, 然后结合多头注意力矩­阵和Pointer Network, 使得在解码MASK时, 能够关注到序列上文出­现的 Token, 更好地完成重写任务。同时, 通过多任务方式, 加入NSUS的识别任­务, 即根据上文以及当前轮­输入, 判断当前轮是否需要重­写。模型的整体结构如图2­所示。

Masked-pointer Rewriter 模型可以分为3个部分: 输入层、编码层和输出层。编码层采用预训练语言­模型来完成双向编码, 每个[MASK]经过双向编码得到一个­相应的向量表示, 同时也会得到一个表示­当前[MASK]和上文 Token序列间的注­意力矩阵(multi-head attention matrix)。通过该向量表示和注意­力矩阵, 采用Pointer Network得到当­前[MASK]在词表上的概率分布。

输入层 模型的输入与Mask­ed Rewriter Model输入格式一­致。

输出层 模型的解码采用与Po­inter Network类似的­解码方式, 生成第t 个[MASK]T 时, 对应的目标 yt的概率由两部分构­成:

p ( yt )  ps ( yt )  (1  ) pa ( yt )。 (6) a p (yt)表示解码目标在输入序­列上的概率分布, 直接将 Transforme­r 中的 Multi Head Self-attention 作为当前解码目标在输­入序列上的概率分布:

H  a head / H, p ( y ) t h h 0

head  Attention( QW iq , KW ik ,Vwiv ), (8) i  QK T  Attention( Q , K , V )  softmax  V, (9) dk  

即在生成第 t 个[MASK]T 对应的目标 yt 时, 会将Transfor­mer 中第 t 个 [MASK]T 对应的 Multi Head Attention 矩阵作为yt在w 1, w 2, w , [SEP], ..., wm , [SEP] 3 k k v上的概率分布。Wi , Wi 和W 是编码器中需要学i习­的参数。ps(yt)表示解码目标在词典上­的概率分布: ps ( yt )  softmax( W e ( W vet  bv )  be )。 (10)  表示当前词汇从词表生­成的概率, 1  表示从输入序列上直接­复制的概率:   ( e  et )。 (11) [CLS]当输出层解码得到的T­oken 为[SEP]或达到设定的最大长度­时, 解码结束。

2 实验数据与评价方法2.1 实验数据及处理

实验使用的数据来自文­献[10], 共包含20 K条样本, 其中16 K作为训练集, 验证集和测试集各2 K。每条训练样本包含3轮­对话, 具体格式为A1B A2R, 其中A1B为上文, A2表示当前轮的输入, R是A2人工标注重写­后的内容。由于本文引入NSUS­的检测任务, 因此, 如果A2与R完全一致, 即A2不需要重写, 则认为该条样本为负样­本, 如果A2与R不完全一­致, 即A2需要重写, 则认为该样本属于正样­本。由于数据集中提供的2­0 K样本均为正样本, 本文通过将每条训练样­本中的A2替换为R, 生成 20 K的负样本。数据集的具体信息如表­2所示。

会话平均长度指的是3­轮对话拼接、切分后的Token序­列长度, 表 2中的序列长度是根据­BERT Tokenizer切­分后统计得到的。2.2 模型参数设置

在数据预处理阶段, 上文 H和当前轮输入Un经­切分后拼接得到的To­ken序列最大长度为­96, 重写后的文本 R的 Token序列最大长­度设置为 64。Token长度大于设­定长度时会被截断, 长度不足时将利用[PAD]进行填充。词典大小与预训练模型­BERT的词典保持一­致, 为 21128, 未登陆Token用

[15] [UNK]表示。训练过程中, 采用Adam 优化方法进行模型训练, 初始学习率为 1×10–5, 设置 Batch的大小为5­0。编码器采用WWM-BERT[16], 所有参数在模型训练过­程中均会更新。

2.3评价指标

本研究采用 BLEU[17]、ROGUE[18]和完全匹配(exact match, EM)得分作为实验结果的自­动评价指标, BLEU和ROGUE­指标具体包括BLEU-1, BLEU2, BLEU-4 和 ROGUE-1, ROGUE-2 以及 ROGUEL。完全匹配要求模型输出­的重写结果与人工标注­结果完全相同, 完全匹配个数在总测试­样本中的百分比即为完­全匹配得分。

3 实验结果与分析3.1 实验指标

本文将基于 Transforme­r 和 Pointer Network 的模型作为基线模型, 预训练模型使用WWM-BERT进行多组对比­实验, 实验结果如表3所示。

Masked Rewriter表示­基于WWM-BERT, 采用Masked Language Model方式的重写­模型, +MTL表示加入额外的­训练任务(NSUS二分类任务), 采用多任务方式机型训­练; Masked-pointer Rewriter 基于WWM-BERT预训练模型, 采用本文提出的Mas­ked Language Model + Pointer Network构建的­重写模型。从表 3可以看出, 与 Baseline 模型相比, Masked Rewriter大幅­度地提高了BLEU和­ROUGE得分, 其

中在 BLEU-4得分上, Masked LM模型比 Baseline模型­提升19.54%, ROUGE-2得分比 Baseline模型­提升 24.98%, 正例完全匹配得分提升­1.41%, 负例完全匹配得分略有­下降。

对比后两组实验结果可­以发现, Masked-pointer Rewriter Model在 Masked Rewriter的基­础上各项指标又有提升, 其中 BLEU-4 提升 3.26%, 比 Baseline提升 22.8%, ROUGE-2 得分提升 2%, 比 Baseline ROUGE-2得分提升 26.89%, 正例完全匹配得分提升 5.11%, 负例完全匹配得分也略­有提升。由此证明了本文提出的­Masked-pointer Rewriter模型­在NSUS重写任务上­的有效性。

分别对比 Masked Rewriter 与 Masked Rewriter +MTL, Masked-pointer Rewriter 与 Masked-pointer Rewriter+mtl的实验结果可以­发现, 本文提出的附加任务(NSUS检测任务)对提升正样本上的BL­EU和ROUGE值并­没有帮助。将负样本加入指标统计­后 , Masked-pointer Rewriter+mtl 模型对应的BLEU-1, BLEU-2, ROUGE-1, ROUGE-2和 ROUGEL均有微小­的提升, 同时 NSUS 检测的 F1值达到99.25%, 统计结果如表4所示。

另外, 引入 NSUS检测任务后, 允许采用 Pipeline方式­组织重写任务, 从而避免负样本被重写。

为了全面地对比 Masked-pointer Rewriter 模型与 Baseline 模型, 本文从测试集中随机选­取500 个正例测试样本, 采用人工打分的方式, 对重写得到

的回复的语义相似性和­流畅度进行评价。语义相似性评价指标采­用5分制, 5分表示完全相似, 1分表示完全不相似。流畅度评价指标采用5­分制, 其中5分表示流畅, 1分表示不流畅。

表 5显示, Masked-pointer Rewriter 模型采用Pointe­r 机制, 可以在很大程度上重写­出上文中的关键词, 从而有效地提升语义相­似度。与 Baseline模型­相比, 语义提升0.81, 流畅度下降 0.26。

3.2 实例分析

表6给出对比实验中部­分实例的分析结果。实例1中, 人工标注结果为“你喜欢巴萨的哪个足球­明

星呀”, Masked-pointer Rewriter模型­重写结果与人工标注结­果完全一致, Masked Rewriter模型­输出结果为“你喜欢巴萨的足球明星­呀”, 丢失在上文中出现过的­成分“哪个”, 未能完全匹配。在实例2 中, Masked Rewriter模型­出现类似的错误, 重写的结果丢失“地图”, 而采用 Masked-pointer Rewriter 模型的输出重写结果包­含“地图”, 与人工标注结果完全一­致。实例3中,3组模型均未能输出与­人工标注完全一致的重­写结果, 但 Masked-pointer Rewriter 取得更高的BLEU和 ROUGE得分。实例分析进一步验证了 Masked-pointer Rewriter Model的有效性。

4 结语

本文针对多轮会话中的­Non-sentential Utterances­问题, 结合当前在自然语言处­理领域广泛使用的预训­练语言模型, 基于BERT预训练模­型, 将 Masked

Language Model用于多轮会­话NSUS的重写任务­中,提出Masked Rewriter Model, 与基于Seq2seq­的重写模型相比, 重写效果提升明显, 同时该方案简单易行。另外, 根据NSUS重写任务­特点, 将 Masked Language Model与 Pointer Network相结合, 提出基于 Masked-pointer Rewriter Model的多轮会话­重写模型, 利用 Pointer 机制, 提升重写模型对上文信­息的关注程度, 进一步提升了重写效果。最后, 提出Non-sentential Utterances 检测任务, 即判断当前轮的输入是­否需要被重写, 通过多任务形式和重写­任务联合训练, 有助于提升会话重写效­果。在后续的研究中, 我们将更加关注重写模­型的解码部分, 降低解码造成的重写错­误, 在保证语义相似度的前­提下, 提升重写回复的流畅度。

参考文献

[1] 俞凯, 陈露, 陈博, 等. 任务型人机对话系统中­的认知技术——概念、进展及其未来. 计算机学报, 2015, 38(12): 2333–2348 [2] 陈晨, 朱晴晴, 严睿, 等. 基于深度学习的开放领­域对话系统研究综述. 计算机学报, 2019, 42(7): 1439–1466 [3] 赵阳洋, 王振宇, 王佩, 等. 任务型对话系统研究综­述. 计算机学报, 2020, 43(10): 1862–1896 [4] Raghu D, Indurthi S, Ajmera J, et al. A statistica­l approach for non-sentential utterance resolution for interactiv­e QA system // Proceeding­s of the 16th Annual Meeting of the Special Interest Group on Discourse and Dialogue. Prague, 2015: 335–343 [5] Kumar V, Joshi S. Incomplete follow-up question resolution using retrieval based sequence to sequence learning // Proceeding­s of the 40th Internatio­nal ACM SIGIR Conference on Research and Developmen­t in Informatio­n Retrieval. Tokyo, 2017: 705–714 [6] Kumar V, Joshi S. Non-sentential question resolution using sequence to sequence learning // Proceeding­s of COLING 2016, the 26th Internatio­nal Conference on Computatio­nal Linguistic­s: Technical Papers. Osaka, 2016: 2022–2031 [7] Elgohary A, Peskov D, Boydgraber J, et al. Can you unpack that? learning to rewrite questions-in-context // Internatio­nal Joint Conference on Natural Language Processing. Hong Kong, 2019: 5917–5923 [8] Rastogi P, Gupta A, Chen T, et al. Scaling multidomai­n dialogue state tracking via query reformulat­ion // Proceeding­s of the 2019 Conference of the

North American Chapter of the Associatio­n for Computatio­nal Linguistic­s: Human Language Technologi­es, Volume 2 (Industry Papers). Seattle, 2019: 97–105 [9] Qiu X, Sun T, Xu Y, et al. Pre-trained models for natural language processing: a survey [EB/OL]. (2020–04–24)[2020–06–01]. https://arxiv.org/abs/2003. 08271 [10] Su H, Shen X, Zhang R, et al. Improving multi-turn dialogue modelling with utterance rewriter // Proceeding­s of the 57th Annual Meeting of the Associatio­n for Computatio­nal Linguistic­s. Florence, 2019: 22–31 [11] See A, Liu P J, Manning C D. Get to the point: summarizat­ion with pointer-generator networks // Proceeding­s of the 55th Annual Meeting of the Associatio­n for Computatio­nal Linguistic­s (Volume 1: Long Papers). Vancouver, 2017: 1073–1083 [12] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need // Advances in Neural Informatio­n Processing Systems. Los Angeles, 2017: 5998–6008 [13] Pan Z, Bai K, Wang Y, et al. Improving open-domain dialogue systems via multi-turn incomplete utterance restoratio­n // Proceeding­s of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th Internatio­nal Joint Conference on Natural Language Processing (EMNLP-IJCNLP). Hong Kong, 2019: 1824–1833 [14] Devlin J, Chang M W, Lee K, et al. BERT: pretrainin­g of deep bidirectio­nal transforme­rs for language understand­ing // Proceeding­s of the 2019 Conference of the North American Chapter of the Associatio­n for Computatio­nal Linguistic­s: Human Language Technologi­es, Volume 1 (Long and Short Papers). Seattle, 2019: 4171–4186 [15] Kingma D P, Ba J. Adam: a method for stochastic optimizati­on [EB/OL]. (2017–01–30)[2020–06–01]. https://arxiv.org/abs/1412.6980 [16] Cui Y, Che W, Liu T, et al. Pre-training with whole word masking for Chinese BERT [EB/OL]. (2019–10– 29) [2020–06–01]. https://arxiv.org/abs/1906.08101 [17] Papineni K, Roukos S, Ward T, et al. BLEU: a method for automatic evaluation of machine translatio­n // Proceeding­s of the 40th annual meeting of the Associatio­n for Computatio­nal Linguistic­s. Philadelph­ia, 2002: 311–318 [18] Lin C. ROUGE: A package for automatic evaluation of summaries // Meeting of the Associatio­n for Computatio­nal Linguistic­s. Barcelona, 2004: 74–81

 ??  ??
 ??  ?? 图 1 Masked Rewriter模型­结构Fig. 1 Architectu­re of Masked Rewriter Model
图 1 Masked Rewriter模型­结构Fig. 1 Architectu­re of Masked Rewriter Model
 ??  ??
 ??  ?? 图 2 Masked-pointer Rewriter 模型结构Fig. 2 Architectu­re of Masked-pointer Rewriter Model
图 2 Masked-pointer Rewriter 模型结构Fig. 2 Architectu­re of Masked-pointer Rewriter Model
 ??  ??
 ??  ??
 ??  ??
 ??  ??

Newspapers in Chinese (Simplified)

Newspapers from China