Robust Cross-lingual Dialogue System Based on Multi-granularity Adversarial Training
-
摘要:
跨语言对话系统是当前国际研究的热点和难点. 在实际的应用系统搭建中, 通常需要翻译引擎作为不同语言之间对话的桥梁. 然而, 翻译引擎往往是基于不同训练样本构建的, 无论是所在领域, 还是擅长处理语言的特性, 均与对话系统的实际应用需求存在较大的差异, 从而导致整个对话系统的鲁棒性差、响应性能低. 因此, 如何增强跨语言对话系统的鲁棒性对于提升其实用性具有重要的意义. 提出了一种基于多粒度对抗训练的鲁棒跨语言对话系统构建方法. 该方法首先面向机器翻译构建多粒度噪声数据, 分别在词汇、短语和句子层面生成相应的对抗样本, 之后利用多粒度噪声数据和干净数据进行对抗训练, 从而更新对话系统的参数, 进而指导对话系统学习噪声无关的隐层向量表示, 最终达到提升跨语言对话系统性能的目的. 在公开对话数据集上对两种语言的实验表明, 所提出的方法能够显著提升跨语言对话系统的性能, 尤其提升跨语言对话系统的鲁棒性.
Abstract:Cross-lingual dialogue system is attractive and also very difficult for current international research. In real-word system implementations, machine translation engines are often needed to serve as a bridge for different languages. However, machine translation engines are often built based on different training data. No matter the field they focus on, or the characteristics of the language that they are expert at processing, there still remains huge gaps to the demands of the dialogue system, resulting in poor robustness and low response performance of the entire dialogue system. Therefore, how to improve the robustness of the cross-lingual dialogue system has very important realistic significance for boosting its practicability. This paper proposes a robust cross-lingual dialogue system building method based on multi-granularity adversarial training. This method firstly constructs multi-granularity noise data oriented to machine translation, generating corresponding adversarial samples at the word, phrase, and sentence level. Then, the adversarial training over multi-granularity noise data and clean data is adopted to update the parameters of the dialogue system, guiding the dialogue system to learn noise-independent hidden representations, so as to improve the performance of the cross-lingual dialogue system. Experimental results on publicly available dialogue datasets and two language pairs show that the proposed method can significantly improve the performance of the cross-lingual dialogue system, especially the robustness of the cross-lingual dialogue system.
-
Key words:
- Multi-granularity noise /
- adversarial training /
- robust /
- cross-lingual /
- dialogue system
-
任务型对话系统旨在通过对话交互的方式在有限的回合内帮助用户完成特定的任务, 比如导航、订机票等. 近年来, 对话系统成为学术界和工业界关注的焦点. 尤其是端到端任务型对话系统[1-5]引起了研究者广泛的兴趣, 此类系统能够接收用户的输入, 并直接生成对应的回复.
随着全球化的快速发展和跨境电子商务的普及, 跨语言交流变得愈发频繁. 在此背景下, 开发和部署跨语言的任务型对话系统已成为迫切需求. 然而, 目前的任务型对话系统主要使用特定的单语数据进行训练. 对于一种新的语言, 须重新对该语言的对话数据进行收集和标注, 这将耗费巨大的成本, 同时使得系统的开发周期变长. 因此, 能否利用已有的单语对话系统构建跨语言系统, 成为本文关注的焦点.
近年来, 随着深度学习技术的快速发展, 机器翻译技术取得了长足的进展, 包括谷歌、百度和微软在内的诸多互联网公司都已经部署了各自的开源机器翻译系统, 这为跨语言对话系统的构建提供了便利. 因此, 本文借助已有的机器翻译系统作为不同语言之间的桥梁, 提出了“翻译−对话−回翻”的跨语言对话框架. 如图1所示, 该框架包括三个系统: “用户语言(中)−源语言(英)”的机器翻译系统、“源语言(英)”的对话系统和“源语言(英)−用户语言(中)”的机器翻译系统. 其工作流程包括三个步骤: 1) 翻译步骤, 即采用“用户语言−源语言”机器翻译系统将用户的输入翻译成对话系统所支持的语言; 2) 对话步骤, 即对话系统根据步骤 1) 转换得到的源语言句子生成回复; 3) 回翻步骤, 即采用“源语言−用户语言”机器翻译系统将系统生成的源语言回复翻译至用户语言以反馈给用户.
本文所提出的跨语言对话框架可以充分利用现有的翻译系统和单语对话数据, 无须重新标注数据即可将单语的对话系统扩展至多种语言, 便于实际开发与部署.
然而, 当“用户语言−源语言”缺乏机器翻译平行数据或机器翻译平行数据的领域与任务型对话的领域存在显著差异时, 机器翻译系统的结果不可避免地会引入各种干扰和错误. 原始的对话系统通常是在干净数据上进行训练的, 无法有效地处理机器翻译系统所引入的噪声, 从而严重制约跨语言对话系统的质量. 事实上, 许多研究表明, 大多数神经网络系统对输入的变化十分敏感, 微小的输入扰动可能会引起较大的输出差异[6-9]. 因此, 构建面向由机器翻译所引入噪声的鲁棒性跨语言对话系统, 对于提升跨语言对话服务的性能至关重要.
针对上述问题, 本文提出了一种基于多粒度对抗训练的鲁棒跨语言对话系统构建方法, 以提升跨语言对话系统对于多粒度翻译噪声数据的鲁棒性. 具体地, 该方法首先利用“翻译−回翻”的方式, 构造了词汇、短语、句子三种粒度的噪声对抗样本. 之后, 该方法利用对抗训练的方式学习噪声无关的隐层向量表示, 进而提升对话系统应对翻译系统所引入噪声的能力. 本文提出的方法在“中文到英语”和“德语到英语”两种语言对上开展了实验, 实验结果表明本文所提方法能够在保持源语言性能的情况下, 显著提升跨语言场景下对话系统的性能.
1. 相关工作
1.1 任务型对话系统
任务型对话系统旨在通过对话交互帮助用户完成特定任务. 根据实现方式的不同, 现有的任务型对话系统可以分为两类: 基于管道的系统和基于端到端的系统. 基于管道的系统[10-11]由自然语言理解模块(Spoken language understanding, SLU)[12-13]、对话管理模块[14-16]和语言生成模块[17]组成, 每个模块单独设计, 成本较高且存在误差传递. 为缓解管道式系统的缺点, 研究人员提出了多种端到端对话系统[18-21]. 其中, Lei等[21]提出了一种简化的序列到序列的对话模型(Two stage copynet, TSCP), 其核心思想是对上下文编码后分为两步进行解码. 该模型第一步根据上下文解码出每个语义槽的对话状态, 第二步根据上下文以及前一步解码出的对话状态解码出系统回复. 这种两阶段解码方式简化了对话状态追踪模块(Dialogue state tracking, DST), 取得了较好的对话生成效果. 本文将使用TSCP作为图1所示跨语言对话框架中的单语对话系统.
1.2 跨语言对话系统
目前的跨语言对话系统相关研究主要集中于管道式对话系统中某些模块的跨语言迁移. 针对SLU模块的迁移, García等[22]和Calvo等[23-24]提出通过不同的策略利用机器翻译系统将源语言的SLU数据转换成目标语言训练数据, 从而训练相应的SLU系统. Bai等[25]使用强化学习进一步提升了SLU的语言迁移能力. 除此之外, Chen等[26]也对DST的跨语言迁移问题展开了研究, 并提出了一种用于DST跨语言迁移学习的“教师−学生”框架. Schuster等[27]则提出了一个多语言意图识别和语义槽填充数据集, 并探索了从资源充足语言迁移到资源稀少语言的不同策略. 上述工作只关注对话系统的个别模块, 而本文着眼于整个跨语言对话系统的构建, 直接使用机器翻译系统将用户话语翻译成目标语言, 然后与对话系统进行交互.
1.3 对抗学习
基于对抗学习提升系统鲁棒性的方法已经被应用于多个自然语言处理任务, 包括文本分类[28-29]、机器翻译[30-32]、对话生成[33]等. 其基本思想是通过构造对抗样本对已训练完备的网络进行攻击, 从而调整网络参数以提高鲁棒性, 使网络能够抵抗这些攻击. Belinkov等[30]通过在训练数据中引入对抗样本提升基于字符级别的翻译模型的鲁棒性. 在对话领域, Tong等[34]探讨了生成式任务型对话系统的敏感性和稳定性问题. 他们通过不同的策略生成对抗样本, 包括随机交换、去掉停用词、数据级改写、生成式改写、语法错误等, 实验结果证明利用对抗样本进行训练不仅可以提高原始模型的鲁棒性, 还可以提升在原始数据上的性能. 不同于上述方法, 本文所提方法能够构建面向特定翻译系统的噪声, 并利用对抗学习提升对话系统的鲁棒性.
2. 背景介绍
本文将TSCP[21]作为图1中的单语对话系统来评估所提方法的有效性. 该系统的框架如图2所示. TSCP提出了信念跨度(Belief span)以记录对话系统每一轮的对话状态. 在此基础上, TSCP将任务型对话系统拆分为信念跨度生成和回复生成两个任务, 并通过一个序列到序列模型(Sequence to sequence, seq2seq)实现. 具体而言, TSCP将解码划分为两阶段. 在第一个阶段, 生成一个信念跨度, 以便于同知识库进行交互, 这一阶段对应着对话状态追踪, 即根据上下文解码出每个语义槽的对话状态. 之后在第二个阶段生成机器回复, 即根据上下文及知识库检索结果解码出系统回复.
一个多轮对话可以表示为
$\{({B}_{0}{R}_{0}{U}_{1};\;{B}_{1}{R}_{1}); $ $ ({B}_{1}\,{R}_{1}\,{U}_{2}; \; {B}_{2}\,{R}_{2});\cdots;\;({B}_{t-1}\, {R}_{t-1}\,{U}_{t};\;{B}_{t}\,{R}_{t})\},$ 其中$ {B}_{t} $ 表示第t轮对话的状态追踪, 即当前所涉及的所有语义槽信息,$ {B}_{t} $ 仅由模型使用, 对用户不可见;$ {U}_{t} $ 表示第t轮用户的输入;$ {R}_{t} $ 为第t轮系统的回复;$ {B}_{0} $ 和$ {R}_{0} $ 初始化为空序列.TSCP的两阶段解码可形式化表示如下:
第一阶段, 使用信念跨度
$ {B}_{t-1} $ 、系统回复$ {R}_{t-1} $ 和当前用户的输入$ {U}_{t} $ , 解码生成当前的信念跨度$ {B}_{t} $ 并对知识库进行搜索, 如式(1)所示$${B_t} = {\rm{seq}} 2{\rm{seq}}({B_{t - 1}}{R_{t - 1}}{U_t}|0,0)$$ (1) 第二阶段, 根据知识库搜索结果
$ {k}_{t} $ 与解码所得的信念跨度$ {B}_{t} $ 对机器回复进行解码, 如式(2)所示$${R_t} = {\rm{seq}} 2{\rm{seq}}({B_{t - 1}}{R_{t - 1}}{U_t}|{B_t},{k_t})$$ (2) 在具体实现的过程中, 使用两阶段CopyNet[35]实现, 以允许在生成信念跨度和机器回复时可以直接对输入端的关键信息进行复制.
3. 本文方法
为提升跨语言场景下对话系统对机器翻译步骤所引入噪声的鲁棒性, 本文提出了一种基于多粒度对抗训练的鲁棒跨语言对话系统构建方法. 具体而言, 该方法包括多粒度对抗样本的构造和对抗训练两步.
3.1 多粒度对抗样本构造
在跨语言场景下, 对话系统所接收到的用户输入
$ {U}_{t} $ 是经过机器翻译系统处理后的结果. 然而, 翻译过程难免会引入一些噪声, 使得对话系统的性能受到一定程度的制约. 为缓解该问题, 本文将干净的对话训练数据转换为包含机器翻译噪声的带噪数据, 从而使得对话系统能够学习如何处理噪声.本文使用“翻译−回翻”技术生成包含翻译噪声的对话数据. 假设对话系统所支持的语言定义为源语言
${S}$ , 用户所使用的语言定义为用户语言${T} ,\;$ 对话系统的训练数据记作$ {X}_{S} $ . 首先, 我们使用一个${S}\to {T}$ 的机器翻译系统将训练数据$ {X}_{S} $ 从语言${S}$ 翻译至语言${T}$ , 之后使用一个${T}\to {S}$ 的机器翻译系统进行反向翻译, 所获得的数据记作$ {X}_{S}' $ . 通过这种方法, 可以生成一组数据$({X}_{S},\;{X}_{S}')$ . 由于$ {X}_{S}' $ 是由翻译系统生成的, 与原始数据$ {X}_{S} $ 相比, 其中便引入了机器翻译系统的噪声和误差. 该数据是直接通过对句子级进行翻译再回翻构造的, 因此本文将这类数据记为句子级对抗样本.仅生成句子级对抗样本在噪声类型和数据多样性上是不够的, 在很多情况下, 噪声的粒度是短语或词汇级别的. 因此, 本文构造了词汇级对抗样本和短语级对抗样本. 具体的构造方法如图3所示, 其中MT表示机器翻译系统,
$ {L}_{S} $ 表示源语言句子,$ {L}_{T} $ 表示利用机器翻译系统将$ {L}_{S} $ 进行翻译得到的用户语言句子,$L'_{S}$ 表示利用机器翻译系统对$ {L}_{T} $ 进行回翻得到的句子. 该框架分为两步: 第一步, 借助机器翻译系统和词对齐, 构造词汇和短语两种粒度的噪声; 第二步, 利用构造的噪声及对话系统训练数据生成词汇级和短语级两种粒度的对抗样本.词汇和短语级噪声构建. 给定
$ {L}_{S} $ 中的一个句子$x=\{{w}_{1},\;{w}_{2},\cdots,\;{w}_{n}\}$ , 首先利用机器翻译将其翻译至用户语言, 之后再利用机器翻译将该句子回翻至源语言${x}'=\{{w}_{1}',\;{w}_{2}',\cdots,\;{w}_{m}'\}$ , 从而获取一批句对$\left\{\left(x,\;{x}{'}\right)\right\}$ , 其中${x}{'}$ 包含了机器翻译过程可能对原始句子$ x $ 产生的变化.本文借助统计机器翻译的思想, 利用
$\left\{\left(x,\;{x}{'}\right)\right\}$ 构造词汇级、短语级两种粒度的噪声.1) 词汇级噪声
$\left\{\right({w}_{i},\;{w}_{i}'\left)\right\}$ , 其中$ {w}_{i} $ 是正确单词,${w}_{i}'$ 是对应的噪声单词. 本文将统计机器翻译中的词对齐方法[36]用于构造词汇级噪声. 首先使用GIZA++ 对$\left\{\left(x,\;{x}{'}\right)\right\}$ 进行词对齐, 从而将$ x $ 中的单词与翻译系统中常用单词建立对应关系, 如“nearest”和“latest”. 在词对齐的基础上, 可以抽取单词对$({w}_{i},\;{w}_{i}')$ . 然而, 词对齐往往存在噪声, 本文将以下两个策略用于提高词对齐的准确性: a) 双向词对齐, 即仅保留在两个方向上均存在的对齐结果; b) 阈值过滤, 即对于一个词对$({w}_{i},\;{w}_{i}')$ , 若其词汇翻译概率小于预设阈值, 那么就将其从词对齐结果中移除. 本文将经过上述方法处理之后得到的词汇表记作词汇级噪声.2) 短语级噪声
$\left\{\right({p}_{i},\;{p}_{i}'\left)\right\}$ , 其中$ {p}_{i} $ 是正确短语,${p}_{i}'$ 为对应的噪声短语, 比如“6am”和“six in the morning”. 相比于词汇级噪声, 短语级噪声包含更多的上下文信息. 此处使用开源的统计机器翻译工具Moses[37]在词对齐的基础上抽取短语表,从而构建短语级噪声. 为提高短语表的质量, 本文仅保留满足以下条件的短语对: a) 源端短语$ {p}_{i} $ 和目标端短语${p}_{i}'$ 的长度均不小于2; b) 源端短语的边界和目标端短语的边界必须均有对齐点; c) 短语翻译概率$p\left({p}_{i}\right|{p}_{i}')$ 和$p({p}_{i}'|{p}_{i})$ 均大于一定阈值. 本文将经过上述方法处理之后得到的短语表记作短语级噪声.对抗样本生成. 在得到词汇噪声和短语噪声后, 本文利用上述噪声生成对应的对抗样本, 具体生成方法如下.
1) 词汇级对抗样本. 本文使用词汇级噪声对原始用户话语中的词汇进行替换, 从而在词汇层面产生包含翻译噪声的用户话语. 为了保证替换之后生成的用户话语语义不会发生改变, 本文只允许对除了限定词(如the、a、an、some、most、any、every)、人称代词(如she、hers、herself、he、him、himself、it)和情态动词(如can、cannot、could、couldn' t、must)之外的词进行替换. 这主要是因为替换限定词、人称代词和情态动词很容易导致陈述不一致甚至语义发生变化. 对于其他词汇, 将从词汇级噪声中查找其对应的噪声词汇. 对于每个用户话语, 随机抽取一个满足替换规则的单词, 并随机从噪声词汇中选择一个单词对该单词进行替换, 例如将“the nearest grocery”替换成“the closest grocery”. 这样可以为训练数据中的每个原始语句随机生成多个包含翻译噪声的用户话语.
2) 短语级对抗样本. 类似于词汇级对抗样本生成, 本文使用短语级噪声对原始用户话语中的短语进行替换, 从而在短语层面产生包含翻译噪声的用户话语. 对于用户话语, 我们在短语级噪声中查找用户话语中的N元组(N-gram)及其对应的噪声短语. 对于用户话语中的每个N元组, 随机抽取一个满足替换规则的片段, 并从候选噪声短语中随机选择一个短语替换它, 例如将“where's the nearest parking garage”替换成“where is the latest car park site”.
总体而言, 本文所提多粒度对抗样本构造方法如算法1所示.
算法1. 面向机器翻译噪声的对抗样本构造方法
输入. 对话系统训练数据
${X}_{S}=\left\{\right({u}_{i},\;{r}_{i}\left)\right\}$ , 其中$ {u}_{i} $ 和$ {r}_{i} $ 分别表示第$ i $ 轮用户输入和系统回复; 源语言单语口语数据$ {L}_{S}=\left\{{x}_{i}\right\} $ ; 正向翻译系统$ {\theta }_{S\to T} $ , 反向翻译系统$ {\theta }_{T\to S} $ .输出. 多粒度对抗样本数据
${X}_{{\rm{adv}}}=\left\{\right({u}_{i}',\;{r}_{i}\left)\right\}$ .1) 利用
$ {\theta }_{S\to T} $ 将$ {L}_{S} $ 翻译为$ {L}_{T} $ , 将$ {X}_{S} $ 翻译为$ {X}_{T} $ ;2) 利用
$ {\theta }_{T\to S} $ 将$ {L}_{T} $ 翻译为${L}_{S}'$ , 将$ {X}_{T} $ 翻译为${X}_{S}'$ ;3) 利用
$ {L}_{S} $ 和$ {L}_{S}' $ 抽取词汇级噪声lex$=\left\{\right({w}_{i},\;{w}_{i}'\left)\right\}$ ;4) 利用
$ {L}_{S} $ 和$ {L}_{S}' $ 抽取短语级噪声phrase$=\left\{\right({p}_{i},\;{p}_{i}'\left)\right\}$ ;5) 利用
$ {X}_{S} $ 和$ {X}_{S}' $ 抽取句子级噪声sent$=\left\{\right({u}_{i},\;{u}_{{i}}'\left)\right\}$ ;6) for 每轮对话数据
$ ({u}_{i},\;{r}_{i}) $ , do;7) 构建词汇级对抗样本
$ ({u}_{i\_{\rm{lex}}}',\;{r}_{i}) $ ;8) 构建短语级对抗样本
$({u}_{i\_{\rm{phrase}}}',\;{r}_{i})$ ;9) 构建句子级对抗样本
$ ({u}_{i\_{\rm{sent}}}',\;{r}_{i}) $ ;10) 将上述三种对抗样本加入
$ {X}_{{\rm{adv}}} $ ;11) End;
12) 返回
$ {X}_{{\rm{adv}}} $ .图4展示了一个多粒度对抗样本实例, 包括词汇级对抗样本、短语级对抗样本和句子级对抗样本. 由该实例可以看出, 通过本文所提的多粒度对抗样本生成方法可以在词汇、短语、句子级别生成更加丰富多样的对抗样本, 从而为后续增强模型鲁棒性奠定数据基础.
3.2 对抗训练
在得到对抗样本后, 本文须利用上述对抗样本提升跨语言对话系统的鲁棒性. 图5给出了本文所提对抗训练的示意图. 给定干净上下文
$ x $ 和包含扰动的上下文$ {x}{'} $ , 对抗训练旨在使得上下文编码器输出的隐层向量${{\boldsymbol{H}}}_{x}$ 和${{\boldsymbol{H}}}_{{x}'}$ 能够尽量相似, 同时要求解码器端能够输出相同的信念跨度和应答语句.具体的对抗训练优化目标如下:
$$L = {L_{{\rm{clean}}}} + {L_{{\rm{noise}}}} + \lambda {L_{{\rm{adv}}}}$$ (3) 其中,
${L_{{\rm{clean}}}}$ 是对话系统原始的训练目标, 当输入干净上下文$ x $ 时, 解码器能够生成正确的信念跨度和应答语句;${L_{{\rm{noise}}}}$ 则是包含扰动的上下文${x}{\rm{'}}$ 及其对应的信念跨度和应答语句之间的损失;${{L}_{{\rm{adv}}}}$ 则是鼓励上下文编码器能够生成尽量一致的隐层向量.上下文编码器作为生成器
$ G $ , 引入一个判别器$ D $ 来区分${{\boldsymbol{H}}}_{x}$ 和${{\boldsymbol{H}}}_{{x}{'}}$ . 上下文编码器的目标是针对$ x $ 和${x}{'}$ 生成尽量相似的隐层向量, 以混淆判别器$ D $ , 而判别器$ D $ 则尽量去区分这两种隐层向量表示.$ G $ 和$ D $ 通过极小化极大算法进行训练, 其优化目标为:$$\begin{split} & {{L}_{{\rm{adv}}}}(x,\;x';\;G,\;D) = {E_{x\sim X_S}}[ - \log D(G(x))] + \\ & \qquad{E_{x'\sim {X_{\rm{adv}}}}}[ - \log (1 - D(G(x')))] \end{split} $$ (4) 本文采用多层感知机作为判别器, 判别器根据输入的隐层向量输出分类分数, 并尝试将
$ D\left(G\right(x\left)\right) $ 最大化, 将$D\left(G\right({{x}}{'}\left)\right)$ 最小化.$ G $ 和$ D $ 的最终训练目标是使得编码器可以针对干净数据$ x $ 和噪声数据${x}{'}$ 进行相似编码表示, 从而使得判别器$ D $ 无法区分干净数据和噪声数据的隐层向量表示.本文在两种测试场景下(如图6所示)对所提方法的有效性进行验证: 1) 跨语言测试 (Cross-test), 在这种场景下, 对话系统接收通过机器翻译系统翻译之后的语句作为输入, 以评估对抗训练是否能够让对话模型更加鲁棒; 2) 源语言干净测试(Mono-test), 在这种场景下, 对话系统接收原始干净测试数据作为输入, 并评估对抗训练是否能使得模型在源语言干净测试数据上具备更好的性能表现. 整体而言, 本文的目标是提升跨语言对话系统的鲁棒性, 而该目标是以不损害对话系统在干净数据上的性能为前提. 本文认为不应该以降低在源语言上的系统性能为代价实现跨语言场景下的鲁棒性提升. 因此, 本文旨在构造一个能够满足包括源语言及机器翻译系统所支持的其他语言需求的对话系统.
4. 实验
4.1 实验设置
对话数据集. 本文在CamRest676[3]和KVRET[18]两个公开的任务型对话数据集上对本文所提方法进行评估. 其中, CamRest676包含了餐馆预定单一领域的676个对话; 而KVRET则是一个多领域的多轮对话数据集, 包括日程规划、天气信息查询和导航三个领域. 本文遵循原始论文中的数据划分方式, 数据的详细信息见表1.
表 1 数据集统计信息Table 1 Statistics of datasets数据集 CamRest676 规模 训练集: 405 验证集: 135 测试集: 136 领域 餐馆预定 数据集 KVRET 规模 训练集: 2425 验证集: 302 测试集: 302 领域 日程规划、天气信息查询、导航 为进行跨语言实验, 本文通过人工的方式将CamRest676和KVRET的测试集翻译成中文. 此外, 为验证在其他语言对上的有效性, 本文还将KVRET的测试集翻译至德语. 为进一步开展实验, 本文需要与上述两种语言对相对应的机器翻译系统, 包括中英和德英双向翻译系统.
对话模型. 本文使用Lei等[21]提出的TSCP作为单语基线对话系统. 隐层向量和词向量的维度
$ d $ 均设置为50维. CamRest676和KVRET的词表规模$ \left|V\right| $ 分别为800和1400, min-batch设置为32. 本文使用Adam[38]优化器进行模型的参数更新, 其学习率为0.003, 衰减参数为0.5. 在解码过程中, CamRest676和KVRET均采用贪婪搜索策略(Greedy search). 在训练过程中采用提前终止法(Early stopping)提高训练效率, 在每一轮迭代过程中对上下文编码器和判别器的参数进行同步更新. 对抗性训练过程中, CamRest676和KVRET使用的词表规模分别设置为1800和2500. 经过在验证集上调参, CamRest676和KVRET上对抗训练的超参数$ \mathrm{\lambda } $ 分别设置为0.2和0.1.机器翻译系统. 本文需要机器翻译系统将用户输入从用户语言翻译至源语言, 从而与对话系统进行交互. 此外还需要利用机器翻译系统构造三种粒度的噪声对抗样本. 本文使用大约包含210万句对的LDC (Linguistic data consortium)双语训练数据对中英翻译系统(ZH→EN)和英中翻译系统(EN→ZH)进行训练; 使用大约包含200万句对的德英双语训练数据对德英翻译系统(DE→EN)和英德翻译系统(EN→DE)进行训练. 上述翻译系统均使用字节对编码 (Byte pair encoding, BPE) 技术对训练数据进行切分, 学习30000个融合操作, 然后分别限制词表为频次最高的前30000个亚词. 所有系统均采用transformer_base设置.
评价指标. 本文使用实体匹配率(Entity match rate, mat.)、成功率
$ {F}_{1} $ (Success$ {F}_{1}) $ 和BLEU作为对话系统的三种自动评价指标. 同时, 与Mehri等[39]类似, 本文使用一个组合分数(combined score)作为总体评价指标. 该指标计算公式为:$$combined\;{{ score = (}}mat. + {F_1}{\rm{)\times0}}.5 + BLEU$$ (5) 4.2 实验结果
中到英的跨语言实验. 为生成对抗样本, 首先需要构造对应粒度的噪声. 本文使用大约包含80万句英语口语的数据集构造词汇级和短语级噪声. 在词对齐之后, 保留双向词汇翻译概率均大于0.01的词对作为词汇级噪声, 保留满足条件的短语对及双向短语翻译概率均大于0.01的短语对作为短语级噪声. 对于句子级噪声, 则直接将对话训练数据中的用户话语通过翻译系统翻译再回翻生成. 本文使用以下几种方法进行实验对比.
表 2 CamRest676数据集上的实验结果Table 2 Experimental results on CamRest676对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 0 基线系统 0.1731 0.4776 0.6485 0.7361 0.2001 0.9328 0.8204 1.0767 1 随机交换 0.1759 0.4851 0.6599 0.7484 0.2159 0.9104 0.7639 1.0530 2 停用词 0.1692 0.5000 0.6347 0.7365 0.2300 0.9179 0.7803 1.0791 3 同义词 0.1805 0.4403 0.7051 0.7532 0.2159 0.9030 0.7824 1.0586 4 词汇级 0.1941 0.4552 0.7503 0.7969 0.2056 0.8955 0.8227 1.0647 5 短语级 0.2017 0.4478 0.7602 0.8057 0.2215 0.8507 0.7992 1.0465 6 句子级 0.1937 0.4925 0.7662 0.8231 0.2127 0.8731 0.8121 1.0553 7 多粒度 0.2178 0.5149 0.7925 0.8715 0.2343 0.8881 0.8269 1.0918 表 3 KVRET数据集上的实验结果Table 3 Experimental results on KVRET对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 0 基线系统 0.1737 0.4218 0.7073 0.7382 0.2096 0.7929 0.7948 1.0034 1 随机交换 0.1751 0.4436 0.7122 0.7531 0.2056 0.8400 0.8033 1.0273 2 停用词 0.1676 0.4327 0.7183 0.7431 0.1961 0.8109 0.8016 1.0023 3 同义词 0.1680 0.4145 0.7234 0.7370 0.1944 0.8109 0.7898 0.9947 4 词汇级 0.1805 0.4436 0.7696 0.7871 0.2095 0.8109 0.8202 1.0251 5 短语级 0.1933 0.4727 0.7603 0.8097 0.2219 0.8255 0.8170 1.0431 6 句子级 0.1803 0.4727 0.7843 0.8088 0.1965 0.8218 0.8136 1.0142 7 多粒度 0.1762 0.5236 0.7859 0.8309 0.1944 0.8218 0.8235 1.0171 1)随机交换: 通过随机交换句子中两个相邻词的位置生成对抗样本, 如“Where is the nearest gas station?”和“Where is the gas nearest station?”;
2)停用词: 通过删除句子中的停用词生成对抗样本;
3)同义词: 通过同义词典中的同义词替换句子中的词生成对抗样本, 本文使用WordNet查找同义词.
表2和表3分别给出了使用不同方法生成的对抗样本在CamRest676和KVRET上的Cross-test和Mono-test的实验结果. 通过该实验结果, 可以得出以下结论.
1) 机器翻译的噪声对于对话系统性能的影响很大. 通过表2和表3中基线系统在跨语言测试集和源语言测试集上的性能表现(表2第0行和表3第0行), 可以发现当使用机器翻译作为桥梁翻译用户语句, 再输入到对话系统后, 对话系统的性能下降明显. 在CamRest676上, 对话系统的性能从1.0767下降至0.7361; 在KVRET上, 对话系统性能从1.0034下降至0.7382.
2) 本文方法能够生成与翻译噪声更相关的对抗样本, 对于对话系统性能的提升更加明显. 在CamRest676上, 相比于随机交换、停用词、同义词, 本文方法在跨语言测试集上的效果提升更加显著(表2第1 ~ 3行和第4 ~ 6行), 最高可提升至0.8231. 在KVRET上也有相同的效果(表3第1 ~ 3行和第4 ~ 6行). 当将词汇−短语−句子三种级别的对抗样本集成训练后, 对话系统在跨语言测试集上取得了最佳效果(表2第7行和表3第7行).
3) 本文方法不仅可以提升对话系统处理跨语言输入的性能, 在源语言上还能取得与原始系统相当的水平. 在某些情况下, 还能超过原始系统处理源语言的性能. 在CamRest676上, 使用三种级别对抗样本集成训练后, 对话系统的性能可从1.0767提升至1.0918 (表2第0行和第7行). 在KVRET上, 使用三种级别对抗样本集成训练后, 相较于原始系统, 对话系统性能均有一定提升, 最高可从1.0034提升至1.0431.
德到英的跨语言实验. 本文在KVRET数据集上还进行了德语至英语的跨语言实验, 实验结果如表4所示. 实验设置与中文到英语的设置相同. 通过实验结果可以看出, 德语到英语的跨语言性能与中文到英语的性能具有相同的趋势. 使用本文提出的三种粒度的对抗样本, 可以显著提升对话系统在跨语言场景下的性能, 同时还能保证对话系统在源语言上的性能.
表 4 KVRET数据集上德到英的跨语言实验结果Table 4 Cross-lingual experimental results from German to English on KVRET对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 0 基线系统 0.1641 0.3964 0.7162 0.7203 0.2096 0.7927 0.7948 1.0034 1 词汇级 0.1661 0.4618 0.7596 0.7768 0.2011 0.8109 0.8163 1.0147 2 短语级 0.1842 0.5127 0.7922 0.8367 0.1975 0.8218 0.8248 1.0208 3 句子级 0.1844 0.5091 0.7774 0.8277 0.2067 0.8291 0.8095 1.0260 4 多粒度 0.1743 0.5309 0.8117 0.8456 0.1905 0.7964 0.8186 0.9981 跨语言对话实验结果实例分析. 表5展示了三个中文到英语的跨语言对话实验结果实例, 其中实例1来自CamRest676数据集, 实例2和实例3来自KVRET数据集. 表5分别展示了这三个实例在基线系统和本文所提多粒度方法上的跨语言实验结果(Cross-test)和源语言实验结果(Mono-test). 在跨语言实验中, 用户输入中文话语, 经过翻译系统翻译成英语话语后, 输入到英语单语对话系统中与对话系统进行交互, 生成回复. 从这三个实例可以看出, 机器翻译的过程会引入一些噪声, 使得对话系统无法正常工作. 比如实例1中, 机器翻译系统将用户话语中的“价位适中”翻译成“appropriate price”, 而基线对话系统能够处理的是“moderately priced”, 当输入翻译系统生成的用户话语后, 对话系统不能正常回复. 使用本文所提多粒度对抗训练方法更新对话系统后, 由于从词汇−短语−句子三个粒度构造了面向机器翻译噪声的对抗样本, 使得对话系统能够更好地处理由机器翻译引入的噪声. 除此之外, 我们可以发现, 本文所提方法还能一定程度上提升对话系统生成回复的质量(实例1和实例3).
表 5 跨语言对话实验结果实例Table 5 Examples of cross-lingual experimental resultsCross-test Mono-test CamRest676 实验结果实例 实例1 User: 请推荐给我一些位于南方的价位适中的餐厅.
MT: please recommend me some restaurant at the
appropriate price in the south.User: please suggest me some moderately priced
restaurant in the south.Gold_bspan: moderate south Gold_response: i found two moderately priced restaurants in the south part of town. would you prefer food_SLOT or food_SLOT food? 基线系统 generated_bspan: south
generated_response: there are no restaurants in the
south part of town.generated_bspan: moderate south
generated_response: there are two restaurants in
the south part of town.多粒度 generated_bspan: moderate south
generated_response: there are two moderately priced
restaurants in the south part of town. would you like
more information?generated_bspan: moderate south
generated_response: there are two moderately priced
restaurants in the south part of town. would you like
more information?KVRET 实验结果实例 实例2 Driver: 最近的停车场怎么走?
MT: how can the latest car park go?Driver: what are the direction to the closest parking garage? Gold_bspan: parking garage
Gold_response: the closest parking garage is poi_SLOT, located distance_SLOT away at address_SLOT.基线系统 generated_bspan: ITEM_3
generated_response: there is a ITEM_0 one and poi_SLOT, distance_SLOT away with traffic_info_SLOT.generated_bspan: parking garage
generated_response: the nearest parking garage is
poi_SLOT, distance_SLOT away.多粒度 generated_bspan: parking garage
generated_response: the closest parking garage is
distance_SLOT away.generated_bspan: parking garage
generated_response: the closest parking garage is
poi_SLOT.实例3 Driver: 安排 5 日上午 11 点与副会长会面.
MT: arranged for him to meet with the vice
president at 11am on the 5th.Driver: schedule a conference with the vice president
on the 5th at 11am.Gold_bspan: 5th; vice president; conference; 11am
Gold_response: conference scheduled for the 5th at 11am with the vice president.基线系统 generated_bspan: 5th; vice president; vice president
generated_response: the 5th is set the president
to discus the president.generated_bspan: 5th; vice president; conference; 11am
generated_response: the 5th is with a vice president for
the 5th at address_SLOT with a high of the 5th of the 5th
of the 5th of the 5th of the 5th of the 5th is with the 5th.多粒度 generated_bspan: 5th; vice president; conference; 11am
generated_response: your conference with vice president
at this 5th at with the vice president at the 5th.generated_bspan: 5th; vice president; conference; 11am
generated_response: you have a conference with the
vice president on the 5th at this 5th.翻译系统累计错误分析. 对话系统接受翻译系统的翻译结果作为输入并生成回复. 为对比翻译噪声对于对话系统性能的影响, 本文利用CamRest676测试集对翻译系统引入的噪声进行了详细分析. 从CamRest676测试集中随机选取60个对话数据, 人工分析了英语测试集和经过中英翻译系统翻译生成的英语测试集之间的区别, 以及这些区别对于对话系统性能的影响. 这60个对话总共包含241轮用户输入, 去掉用户表示感谢的轮数之后, 本文总共分析了177轮. 通过对数据集进行分析, 将翻译现象归类为以下4种类别. 表6分别给出了类别1、 类别2和类别3的实例.
类别1: 关键词语义错误. 这里关键词指的是与对话系统信念跨度相关的词汇.
类别2: 关键词表达不一致.
类别3: 未登录非关键词. 这里的未登录非关键词指的是当关键词翻译正确时, 不在基线系统词表中的词.
类别4: 其他.
表 6 翻译现象类别实例Table 6 Categories of translation phenomena类别 1 原始单语句子 I am looking for a moderately priced restaurant in the south part of town. 中文测试集 你知道镇北部有什么价格适中的餐馆吗? MT I' m looking for a cheap restaurant in the south of the town. 类别 2 原始单语句子 A restaurant in the moderately priced range, please. 中文测试集 请给我一家中等价位的餐馆. MT Please give me a mid-priced restaurant. 类别 3 原始单语句子 I would like a cheap restaurant that serves greek food. 中文测试集 我想要一家供应希腊食物的便宜餐馆. MT I' d like a cheap restaurant to supply greek food. 本文对177轮经过机器翻译系统翻译之后的用户话语进行分析, 该数据在以上4种类别上的分布情况如表7所示.
表 7 翻译系统噪声类型分析Table 7 Noise type analysis of machine translation翻译结果分类 轮数 类别 1 27 类别 2 72 类别 3 23 类别 4 55 基线系统和本文所提多粒度方法在这4个类别上的性能如表8所示. 从基线系统在跨语言测试和源语言测试上的表现可以发现, 这4个类别的翻译现象对于单语对话系统的性能都是有影响的. 根据性能下降的程度可以发现, 类别1的影响 > 类别2的影响 > 类别3的影响 > 类别4的影响. 这主要是由于关键词对于信念跨度和回复生成都非常重要, 关键词翻译错误会导致对话系统难以正常工作. 而类别3性能下降的主要原因是这些非关键词是未登录词, 也会对单语对话系统的性能造成一定的影响.
表 8 4种翻译现象上的实验结果Table 8 Experimental results on four translation phenomena类别 Cross-test Mono-test BLEU/ 实体匹配率/ 成功率${{F} }_{1}$ BLEU/ 实体匹配率/ 成功率${{F} }_{1}$ 基线系统 1 0.1229/ 0.2632/ 0.3548 0.1987/ 1.0000/ 0.6571 2 0.1672/ 0.2879/ 0.4234 0.2093/ 0.9394/ 0.6239 3 0.1429/ 0.3500/ 0.5538 0.1588/ 0.8500/ 0.6757 4 0.1640/ 0.5909/ 0.5629 0.1891/ 0.8864/ 0.6595 多粒度 1 0.1706/ 0.4737/ 0.5135 0.2301/ 1.0000/ 0.6835 2 0.2327/ 0.5000/ 0.6748 0.2594/ 0.8939/ 0.6935 3 0.1607/ 0.3000/ 0.5352 0.1801/ 0.7000/ 0.5278 4 0.2066/ 0.5909/ 0.5989 0.1924/ 0.8182/ 0.6448 从本文所提方法的实验结果可以看出, 本文所提方法主要提升了类别1和类别2的性能, 而这两种类别也是对对话系统性能影响最大的. 后续可以通过有针对性地生成更多的多粒度对抗样本来提升对话系统处理类别3和类别4的能力. 因此, 本文所提多粒度对抗训练方法主要通过在词、短语、句子三个粒度生成针对机器翻译噪声的对抗样本, 并利用对抗样本更新对话系统, 使得对话系统能够更好地处理由翻译系统翻译生成的话语.
4.3 扩展实验
在之前的实验中, 本文利用TSCP作为单语基线对话系统进行实验, 验证了本文所提出的多粒度对抗样本及对抗训练的有效性. 为进一步验证本文所提方法的有效性, 本文还使用了以下两个端到端任务型对话系统作为单语基线对话系统进行实验.
1) SEDST[40]: 该模型与TSCP具有相同的模型结构. 所不同的是, 该模型对信念跨度的训练引入了后验正则化, 使得状态追踪的训练更加稳定.
2) LABES-S2S[41]: 该模型是一个概率对话模型, 其中信念状态(Belief states)使用离散隐变量进行表示, 并与系统响应进行联合建模. 具体实现过程中, 使用了两阶段序列到序列方法.
本文在CamRest676数据集上进行了中文到英语的跨语言实验, 实验结果如表9所示. 其中, 第0行和第1行显示的是使用SEDST作为单语基线对话系统的实验结果, 第2行和第3行显示的是使用LABES-S2S作为单语基线对话系统的实验结果. 实验结果表明, 使用本文提出的三种粒度的对抗样本, 可以显著提升对话系统在跨语言场景下的性能, 同时还能保证对话系统在源语言上的性能.
5. 结束语
本文提出了面向跨语言对话系统的多粒度对抗训练的方法, 通过机器翻译系统和源语言对话数据构造词汇−短语−句子三种粒度的噪声数据, 并利用对抗训练提升对话系统在跨语言场景下的鲁棒性. 在CamRest676和KVRET数据集上的实验结果验证了本文所提方法的有效性, 本文方法不仅可以提升对话系统在跨语言场景下的鲁棒性, 还能提升对话系统在干净数据下的性能.
表 9 CamRest676数据集上使用其他单语基线对话系统的跨语言实验结果Table 9 Cross-lingual experimental results using other monolingual baseline dialogue systems on CamRest676对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 SEDST 0 基线系统 0.1671 0.6455 0.7294 0.8545 0.2107 0.9545 0.8120 1.0940 1 多粒度 0.2093 0.8333 0.8193 1.0356 0.2292 0.9259 0.8378 1.1111 LABES-S2S 2 基线系统 0.1910 0.7450 0.7260 0.9265 0.2350 0.9640 0.7990 1.1165 3 多粒度 0.2300 0.8150 0.8290 1.0520 0.2400 0.9440 0.8580 1.1410 -
表 1 数据集统计信息
Table 1 Statistics of datasets
数据集 CamRest676 规模 训练集: 405 验证集: 135 测试集: 136 领域 餐馆预定 数据集 KVRET 规模 训练集: 2425 验证集: 302 测试集: 302 领域 日程规划、天气信息查询、导航 表 2 CamRest676数据集上的实验结果
Table 2 Experimental results on CamRest676
对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 0 基线系统 0.1731 0.4776 0.6485 0.7361 0.2001 0.9328 0.8204 1.0767 1 随机交换 0.1759 0.4851 0.6599 0.7484 0.2159 0.9104 0.7639 1.0530 2 停用词 0.1692 0.5000 0.6347 0.7365 0.2300 0.9179 0.7803 1.0791 3 同义词 0.1805 0.4403 0.7051 0.7532 0.2159 0.9030 0.7824 1.0586 4 词汇级 0.1941 0.4552 0.7503 0.7969 0.2056 0.8955 0.8227 1.0647 5 短语级 0.2017 0.4478 0.7602 0.8057 0.2215 0.8507 0.7992 1.0465 6 句子级 0.1937 0.4925 0.7662 0.8231 0.2127 0.8731 0.8121 1.0553 7 多粒度 0.2178 0.5149 0.7925 0.8715 0.2343 0.8881 0.8269 1.0918 表 3 KVRET数据集上的实验结果
Table 3 Experimental results on KVRET
对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 0 基线系统 0.1737 0.4218 0.7073 0.7382 0.2096 0.7929 0.7948 1.0034 1 随机交换 0.1751 0.4436 0.7122 0.7531 0.2056 0.8400 0.8033 1.0273 2 停用词 0.1676 0.4327 0.7183 0.7431 0.1961 0.8109 0.8016 1.0023 3 同义词 0.1680 0.4145 0.7234 0.7370 0.1944 0.8109 0.7898 0.9947 4 词汇级 0.1805 0.4436 0.7696 0.7871 0.2095 0.8109 0.8202 1.0251 5 短语级 0.1933 0.4727 0.7603 0.8097 0.2219 0.8255 0.8170 1.0431 6 句子级 0.1803 0.4727 0.7843 0.8088 0.1965 0.8218 0.8136 1.0142 7 多粒度 0.1762 0.5236 0.7859 0.8309 0.1944 0.8218 0.8235 1.0171 表 4 KVRET数据集上德到英的跨语言实验结果
Table 4 Cross-lingual experimental results from German to English on KVRET
对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 0 基线系统 0.1641 0.3964 0.7162 0.7203 0.2096 0.7927 0.7948 1.0034 1 词汇级 0.1661 0.4618 0.7596 0.7768 0.2011 0.8109 0.8163 1.0147 2 短语级 0.1842 0.5127 0.7922 0.8367 0.1975 0.8218 0.8248 1.0208 3 句子级 0.1844 0.5091 0.7774 0.8277 0.2067 0.8291 0.8095 1.0260 4 多粒度 0.1743 0.5309 0.8117 0.8456 0.1905 0.7964 0.8186 0.9981 表 5 跨语言对话实验结果实例
Table 5 Examples of cross-lingual experimental results
Cross-test Mono-test CamRest676 实验结果实例 实例1 User: 请推荐给我一些位于南方的价位适中的餐厅.
MT: please recommend me some restaurant at the
appropriate price in the south.User: please suggest me some moderately priced
restaurant in the south.Gold_bspan: moderate south Gold_response: i found two moderately priced restaurants in the south part of town. would you prefer food_SLOT or food_SLOT food? 基线系统 generated_bspan: south
generated_response: there are no restaurants in the
south part of town.generated_bspan: moderate south
generated_response: there are two restaurants in
the south part of town.多粒度 generated_bspan: moderate south
generated_response: there are two moderately priced
restaurants in the south part of town. would you like
more information?generated_bspan: moderate south
generated_response: there are two moderately priced
restaurants in the south part of town. would you like
more information?KVRET 实验结果实例 实例2 Driver: 最近的停车场怎么走?
MT: how can the latest car park go?Driver: what are the direction to the closest parking garage? Gold_bspan: parking garage
Gold_response: the closest parking garage is poi_SLOT, located distance_SLOT away at address_SLOT.基线系统 generated_bspan: ITEM_3
generated_response: there is a ITEM_0 one and poi_SLOT, distance_SLOT away with traffic_info_SLOT.generated_bspan: parking garage
generated_response: the nearest parking garage is
poi_SLOT, distance_SLOT away.多粒度 generated_bspan: parking garage
generated_response: the closest parking garage is
distance_SLOT away.generated_bspan: parking garage
generated_response: the closest parking garage is
poi_SLOT.实例3 Driver: 安排 5 日上午 11 点与副会长会面.
MT: arranged for him to meet with the vice
president at 11am on the 5th.Driver: schedule a conference with the vice president
on the 5th at 11am.Gold_bspan: 5th; vice president; conference; 11am
Gold_response: conference scheduled for the 5th at 11am with the vice president.基线系统 generated_bspan: 5th; vice president; vice president
generated_response: the 5th is set the president
to discus the president.generated_bspan: 5th; vice president; conference; 11am
generated_response: the 5th is with a vice president for
the 5th at address_SLOT with a high of the 5th of the 5th
of the 5th of the 5th of the 5th of the 5th is with the 5th.多粒度 generated_bspan: 5th; vice president; conference; 11am
generated_response: your conference with vice president
at this 5th at with the vice president at the 5th.generated_bspan: 5th; vice president; conference; 11am
generated_response: you have a conference with the
vice president on the 5th at this 5th.表 6 翻译现象类别实例
Table 6 Categories of translation phenomena
类别 1 原始单语句子 I am looking for a moderately priced restaurant in the south part of town. 中文测试集 你知道镇北部有什么价格适中的餐馆吗? MT I' m looking for a cheap restaurant in the south of the town. 类别 2 原始单语句子 A restaurant in the moderately priced range, please. 中文测试集 请给我一家中等价位的餐馆. MT Please give me a mid-priced restaurant. 类别 3 原始单语句子 I would like a cheap restaurant that serves greek food. 中文测试集 我想要一家供应希腊食物的便宜餐馆. MT I' d like a cheap restaurant to supply greek food. 表 7 翻译系统噪声类型分析
Table 7 Noise type analysis of machine translation
翻译结果分类 轮数 类别 1 27 类别 2 72 类别 3 23 类别 4 55 表 8 4种翻译现象上的实验结果
Table 8 Experimental results on four translation phenomena
类别 Cross-test Mono-test BLEU/ 实体匹配率/ 成功率${{F} }_{1}$ BLEU/ 实体匹配率/ 成功率${{F} }_{1}$ 基线系统 1 0.1229/ 0.2632/ 0.3548 0.1987/ 1.0000/ 0.6571 2 0.1672/ 0.2879/ 0.4234 0.2093/ 0.9394/ 0.6239 3 0.1429/ 0.3500/ 0.5538 0.1588/ 0.8500/ 0.6757 4 0.1640/ 0.5909/ 0.5629 0.1891/ 0.8864/ 0.6595 多粒度 1 0.1706/ 0.4737/ 0.5135 0.2301/ 1.0000/ 0.6835 2 0.2327/ 0.5000/ 0.6748 0.2594/ 0.8939/ 0.6935 3 0.1607/ 0.3000/ 0.5352 0.1801/ 0.7000/ 0.5278 4 0.2066/ 0.5909/ 0.5989 0.1924/ 0.8182/ 0.6448 表 9 CamRest676数据集上使用其他单语基线对话系统的跨语言实验结果
Table 9 Cross-lingual experimental results using other monolingual baseline dialogue systems on CamRest676
对抗样本 Cross-test Mono-test BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 BLEU 实体匹配率 成功率${{F} }_{1}$ 组合分数 SEDST 0 基线系统 0.1671 0.6455 0.7294 0.8545 0.2107 0.9545 0.8120 1.0940 1 多粒度 0.2093 0.8333 0.8193 1.0356 0.2292 0.9259 0.8378 1.1111 LABES-S2S 2 基线系统 0.1910 0.7450 0.7260 0.9265 0.2350 0.9640 0.7990 1.1165 3 多粒度 0.2300 0.8150 0.8290 1.0520 0.2400 0.9440 0.8580 1.1410 -
[1] Li X J, Chen Y N, Li L H, Gao J F, Celikyilmaz A. End-to-end task-completion neural dialogue systems. In: Proceedings of the Eighth International Joint Conference on Natural Language Processing. Taipei, China: Asian Federation of Natural Language Processing, 2017. 733−743 [2] Liu B, Lane I. End-to-end learning of task-oriented dialogs. In: Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Student Research Workshop. New Orleans, Louisiana, USA: Association for Computational Linguistics, 2018. 67−73 [3] Wen T H, Vandyke D, Mrkšić N, Gašić M, Rojas-Barahona L M, Su P H, et al. A network-based end-to-end trainable task-oriented dialogue system. In: Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics. Valencia, Spain: Association for Computational Linguistics, 2017. 438−449 [4] Wang W K, Zhang J J, Li Q, Zong C Q, Li Z F. Are you for real? Detecting identity fraud via dialogue interactions. In: Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. Hong Kong, China: Association for Computational Linguistics, 2019. 1762−1771 [5] Wang W K, Zhang J J, Li Q, Hwang M Y, Zong C Q, Li Z F. Incremental learning from scratch for task-oriented dialogue systems. In: Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics. Florence, Italy: Association for Computational Linguistics, 2019. 3710−3720 [6] Goodfellow I J, Shlens J, Szegedy C. Explaining and harnessing adversarial examples. In: Proceedings of the 3rd International Conference on Learning Representations. San Diego, California, USA: arXiv Press, 2015. 1412.6572 [7] Szegedy C, Zaremba W, Sutskever I, Bruna J, Erhan D, Goodfellow I J, et al. Intriguing properties of neural networks. arXiv preprint arXiv: 1312. 6199, 2013. [8] 董胤蓬, 苏航, 朱军. 面向对抗样本的深度神经网络可解释性分析. 自动化学报, DOI: 10.16383/j.aas.c200317Dong Yin-Peng, Su Hang, Zhu Jun. Towards interpretable deep neural networks by leveraging adversarial examples. Acta Automatica Sinica, DOI: 10.16383/j.aas.c200317 [9] 孔锐, 蔡佳纯, 黄钢. 基于生成对抗网络的对抗攻击防御模型. 自动化学报, DOI: 10.16383/j.aas.c200033Kong Rui, Cai Jia-Chun, Huang Gang. Defense to adversarial attack with generative adversarial network. Acta Automatica Sinica, DOI: 10.16383/j.aas.c200033 [10] Young S, Gasic M, Thomson B, Williams J D. POMDP-based statistical spoken dialog systems: a review[J]. Proceedings of the IEEE, 2013, 101(5): 1160−1179. doi: 10.1109/JPROC.2012.2225812 [11] Williams J D, Young S. Partially observable markov decision processes for spoken dialog systems[J]. Computer Speech & Language, 2007, 21(2): 393−422. [12] Mesnil G, Dauphin Y, Yao K, Bengio Y, Zweig G. Using recurrent neural networks for slot filling in spoken language understanding[J]. IEEE/ACM Transactions on Audio Speech & Language Processing, 2015, 23(3): 530−539. [13] Bai H, Zhou Y, Zhang J J, Zong C Q. Memory consolidation for contextual spoken language understanding with dialogue logistic inference. In: Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics. Florence, Italy: Association for Computational Linguistics, 2019. 5448−5453 [14] Lee S, Stent A. Task lineages: Dialog state tracking for flexible interaction. In: Proceedings of the 17th Annual Meeting of the Special Interest Group on Discourse and Dialogue. Los Angeles, California, USA: Association for Computational Linguistics, 2016. 11−21 [15] Zhong V, Xiong C, Socher R. Global-locally self-attentive encoder for dialogue state tracking. In: Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne, Australia: Association for Computational Linguistics, 2018. 1458−1467 [16] Wang W K, Zhang J J, Zhang H, Hwang M Y, Zong C Q, Li Z F. A teacher-student framework for maintainable dialog manager. In: Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing. Brussels, Belgium: Association for Computational Linguistics, 2018. 3803−3812 [17] Sharma S, He J, Suleman K, Schulz H, Bachman P. Natural language generation in dialogue using lexicalized and delexicalized data. In: Proceedings of the 5th International Conference on Learning Representations Workshop. Toulon, France: arXiv Press, 2017. 1606.03632v3 [18] Eric M, Manning C D. Key-value retrieval networks for task-oriented dialogue. In: Proceedings of the 18th Annual SIGdial Meeting on Discourse and Dialogue. Saarbrücken, Germany: Association for Computational Linguistics, 2017. 37−49 [19] Madotto A, Wu C S, Fung P. Mem2seq: Effectively incorporating knowledge bases into end-to-end task-oriented dialog systems. In: Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne, Australia: Association for Computational Linguistics, 2018. 1468−1478 [20] Wu C S, Socher R, Xiong C. Global-to-local memory pointer networks for task-oriented dialogue. In: Proceedings of the 7th International Conference on Learning Representations. New Orleans, Louisiana, USA: arXiv Press, 2019. 1901.04713v2 [21] Lei W Q, Jin X S, Kan M Y, Ren Z C, He X N, Yin D W. Sequicity: Simplifying task-oriented dialogue systems with single sequence-to-sequence architectures. In: Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne, Australia: Association for Computational Linguistics, 2018. 1437−1447 [22] García F, Hurtado L F, Segarra E, Sanchis E, Riccardi G. Combining multiple translation systems for spoken language understanding portability. In: Proceedings of the 2012 IEEE Spoken Language Technology Workshop (SLT). Miami, FL, USA: IEEE, 2012. 194−198 [23] Calvo M, García F, Hurtado L F, Jiménez S, Sanchis E. Exploiting multiple hypotheses for multilingual spoken language understanding. In: Proceedings of the Seventeenth Conference on Computational Natural Language Learning. Sofia, Bulgaria: Association for Computational Linguistics, 2013. 193−201 [24] Calvo M, Hurtado L F, Garcia F, Sanchis E, Segarra E. Multilingual Spoken Language Understanding using graphs and multiple translations[J]. Computer Speech & Language, 2016, 38: 86−103. [25] Bai H, Zhou Y, Zhang J J, Zhao L, Hwang M Y, Zong C Q. Source critical reinforcement learning for transferring spoken language understanding to a new language. In: Proceedings of the 27th International Conference on Computational Linguistics. Santa Fe, New Mexico, USA: Association for Computational Linguistics, 2018. 3597−3607 [26] Chen W H, Chen J S, Su Y, Wang X, Yu D, Yan X F, et al. Xl-nbt: A cross-lingual neural belief tracking framework. In: Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing. Brussels, Belgium: Association for Computational Linguistics, 2018. 414−424 [27] Schuster S, Gupta S, Shah R, Lewis M. Cross-lingual transfer learning for multilingual task oriented dialog. In: Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Minneapolis, Minnesota: Association for Computational Linguistics, 2019. 3795−3805 [28] Ebrahimi J, Rao A, Lowd D, Dou D J. HotFlip: White-box adversarial examples for text classification. In: Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne, Australia: Association for Computational Linguistics, 2018. 31−36 [29] Miyato T, Dai A M, Goodfellow I. Adversarial training methods for semi-supervised text classification. In: Proceedings of the 5th International Conference on Learning Representations. Toulon, France: arXiv Press, 2017. 1605.07725 [30] Belinkov Y, Bisk Y. Synthetic and natural noise both break neural machine translation. In: Proceedings of the 5th International Conference on Learning Representations. Vancouver, BC, Canada: arXiv Press, 2018. 1711.02173 [31] Cheng Y, Jiang L, Macherey W. Robust neural machine translation with doubly adversarial inputs. In: Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics. Florence, Italy: Association for Computational Linguistics, 2019. 4324−4333 [32] Cheng Y, Tu Z P, Meng F D, Zhai J J, Liu Y. Towards robust neural machine translation. In: Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne, Australia: Association for Computational Linguistics, 2018. 1756−1766 [33] Li J W, Monroe W, Shi T L, Jean S, Ritter A, Jurafsky D. Adversarial learning for neural dialogue generation. In: Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing. Copenhagen, Denmark: Association for Computational Linguistics, 2017. 2157−2169 [34] Tong N, Bansal M. Adversarial over-sensitivity and over-stability strategies for dialogue models. In: Proceedings of the 22nd Conference on Computational Natural Language Learning. Brussels, Belgium: Association for Computational Linguistics, 2018. 486−496 [35] Gu J T, Lu Z D, Li H, Li V O K. Incorporating copying mechanism in sequence-to-sequence learning. In: Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics. Berlin, Germany: Association for Computational Linguistics, 2016. 1631−1640 [36] Och F J, Ney H. A systematic comparison of various statistical alignment models[J]. Computational Linguistics, 2003, 29(1): 19−51. doi: 10.1162/089120103321337421 [37] Koehn P, Hoang H, Birch A, Callison-Burch C, Federico M, Bertoldi N, et al. Moses: Open source toolkit for statistical machine translation. In: Proceedings of the 45th Annual Meeting of the Association for Computational Linguistics Companion Volume Proceedings of the Demo and Poster Sessions. Prague, Czech Republic: Association for Computational Linguistics, 2007. 177−180 [38] Kingma D, Ba J. Adam: A method for stochastic optimization. In: Proceedings of the 3rd International Conference on Learning Representations. San Diego, California, USA: arXiv Press, 2015. 1412.6980 [39] Mehri S, Srinivasan T, Eskenazi M. Structured fusion networks for dialog. In: Proceedings of the 20th Annual SIGdial Meeting on Discourse and Dialogue. Stockholm, Sweden: Association for Computational Linguistics, 2019. 165−177 [40] Jin X S, Lei W Q, Ren Z C, Chen H S, Liang S S, Zhao Y H, et al. Explicit state tracking with semi-supervision for neural dialogue generation. In: Proceedings of the 27th ACM International Conference on Information and Knowledge Management. New York, USA: Association for Computing Machinery, 2018. 1403−1412 [41] Zhang Y C, Ou Z J, Wang H X, Feng J L. A probabilistic end-to-end task-oriented dialog model with latent belief states towards semi-supervised learning. In: Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing. Online: Association for Computational Linguistics, 2020. 9207−9219 期刊类型引用(6)
1. 谭郁松,张钰森,蹇松雷. 面向有向图的特征提取与表征学习研究. 计算机工程与应用. 2025(03): 234-241 . 百度学术
2. 成淑慧,武优西. 基于序贯三支神经网络的个性化推荐. 控制与决策. 2024(03): 1012-1020 . 百度学术
3. 晏芳,罗刚峰,司海峰. 面向平行语料库和多层次语言特征的英语翻译系统研究. 自动化与仪器仪表. 2023(03): 213-217 . 百度学术
4. 赵石楠,杜文. 基于改进短语翻译模型的外语数据库智能校对系统. 自动化与仪器仪表. 2022(02): 90-93+99 . 百度学术
5. 付敏. 基于特征提取的英汉机器自动转换翻译系统设计. 自动化与仪器仪表. 2022(05): 166-169 . 百度学术
6. 冯仁君,刘思雨,薛劲松. 对抗样本驱动的网络指纹防御方法. 福建电脑. 2021(09): 19-23 . 百度学术
其他类型引用(6)
-