人的社会属性决定了人与人之间的交互已经渗透到日常生活的方方面面,无论是在工作中与同事协作完成既定项目,亦或是到在线平台上参与公众讨论以实现个人向社会的发声,交互文本作为交互行为发生的基本载体可谓无处不在。如何让机器理解交互文本也一直是自然语言处理的重点任务。
然而,相较于常规文本(例如新闻和科学论文)的理解,交互文本的理解任务面临着更大挑战,其主要原因来源于交互文本的两个方面的特质:轮次内文本的简短性与轮次间交互的复杂性。前者主要追因于交互文本的随意性与口语化,一个轮次的交互文本往往内容较为简短,可用于理解与分析的特征不够丰富,因此产生了短文本的数据稀疏性问题。后者的发生主要因为轮次的来回和信息的交换之中导致了复杂的交互结构,整个交互过程的理解对人而言都是一个十分困难的任务,这导致了相关的人工标注困难重重,用于训练模型的标注数据很难大规模获得,在构建多语种对话系统时,这个挑战将变得尤其严峻,特别是小语种的人工标注数据通常不易获取。
针对交互文本的理解,腾讯AI Lab长期以来有着大量的投入,在本次EMNLP当中,分别针对短文本的处理和跨语种对话系统的理解,各有一个重要研究成果公开,它们分别是:
论文 | Topic Memory Networks for Short Text Classification
链接 | https://arxiv.org/abs/1809.03664
论文 | XL-NBT: A Cross-lingual Neural Belief Tracking Framework
链接 | https://arxiv.org/abs/1808.06244
Topic Memory Networks for Short Text Classification解读
首先是针对短文本分类的Topic Memory Networks for Short Text Classification,这篇论文由腾讯AI Lab主导,与香港中文大学合作完成。本文是主题模型与文本分类在神经网络框架下的一次结合,作为主题模型与深度学习联合训练的一个早期的探索,能够很自然地被扩展到很多深度学习任务的上。
短文本分类 (Short Text Classification)
短文本因为其内容简短、易于阅读和传播的特性作为信息交互的载体广泛存在,例如新闻标题、社交媒体的信息、短信等等,因此如何让机器自动而高效地理解短文本一直是自然语言处理的重要任务,而文本分类作为文本理解的基础任务、能够服务于大量的下游应用(例如文本摘要、情感分析、推荐系统等等),更是长期以来学术界与工业界关注的焦点。然而,短文本分类任务本身又十分困难,这其中的原因主要来自文本的内容简短而引起数据稀疏性问题,从而导致了模型分类的时候没有足够的特征进行类别的判断。为了理解短文本分类的挑战,表1展示了一个Twitter(推特)上的一个短文本分类例子。
表1
R1和R2都是训练样本分别属于Super Bowl (超级碗)以及New Music Live(新音乐盛典)类别,S是测试样本属于New Music Live类别,但是仅仅从给定的11个单词,很难判断出S与新音乐盛典的关系。但是R2中wristband(手环)与Bieber(比伯)的共现极大地丰富了wristband的语义,将wristband与New Music Live关联起来,因为当时Twitter上支持Bieber送手环的活动使得训练语料中wristband和Bieber在New Music Live类别的tweets中大量共现。如果模型能够定位到wristband是一个关键的词,就更容易判断出测试样本S应该被分类为New Music Live。否则的话,S很有可能被错误分类为Super Bowl,因为其与R1大部分的词都是重合的。
主题记忆网络 (Topic Memory Networks)
Topic Model(主题模型)的要旨是基于词在文章中的共现关系,从大量的词汇中找出主题词(例如S中的wristbands),这部分主题词在一部分的文章中经常出现,但并不似常用词一般在大部分文章中都频繁出现。因为主题词的这种特性,相较于低频词或常用词,往往能更好地指明文本的类别。因此,过去的工作已经证明,用主题模型学出的主题表示,能够有效地提高文本分类的性能。然而,目前的大多数文本分类任务在用到主题表示的时候,往往采用两步走的方法,先训练好主题模型,然后用主题模型输出的主题表示去初始化文本分类的特征空间。近期,Neural Topic Model(神经主题模型:https://arxiv.org/pdf/1706.00359.pdf)的提出,使得主题模型与大量的深度学习任务能够在多任务学习(multi-task learning)的框架下被联合训练,本文以深度学习最基础的任务——文本分类作为这种新的训练模式的一个初期的探索,提出了一种新的网络模型Topic Memory Networks(主题记忆网络),网络结构如图1所示。
图1
主题记忆网络一共可以分为三部分,从左到右分别是Neural Topic Model (神经主题模型)、Topic Memory Mechanism(主题记忆机制)、以及Classifier(文本分类器)。其中,神经主题模型主要用于学习主题表示;主题记忆机制主要用于将学到的主题表示映射到对文本分类有用的特征空间当中;文本分类器主要用于输出文本分类标签,可以适配多种分类器(例如卷积神经网络(CNN)或循环神经网络(RNN)),因为CNN在之前的的工作中被证明对文本分类更有效,因此在本文对于主题记忆网络的实验探索(将于下文重点讨论)中,我们选择CNN作为文本分类器。
为了实现主题模型与文本分类的联合训练,主题记忆网络的损失函数为主题模型的训练目标variational lower-bound以及文本分类器的训练目标cross-entropy的加权和。
实验分析
为了探索主题记忆网络对短文本分类的性能,本文选择了四个基准数据集,分别为:TagMyNews新闻标题、Snippets搜索片段、Twitter和Weibo(新浪微博),四个数据集的统计信息如表2所示。
表2
本文选择了当下最好的短文本分类模型与主题记忆网络的性能进行了比较,在四个实验数据集的实验结果如表3所示,从实验结果中可以看出,主题记忆网络在四个数据集上都显著提升了state-of-the-art的性能。
表3
考虑到主题记忆网络能够对主题模型与文本分类进行联合训练,那么主题模型是否能够获益于这种多任务训练,以学到更有意义的表示呢?本文对主题模型的输出进行了定量的分析。在该分析中,被广泛使用的CV coherence分数 (https://github.com/dice-group/Palmetto) 作为评测指标,比较模型包括经典的主题模型LDA、专门处理短文本的主题模型BTM、以及神经主题模型NTM。越高的CV score说明学到的主题表示越有意义,实验结果如表4所示,读者可以观察到,不仅文本分类可通过联合学习主题表示获益(见表 3),通过与文本分类联合训练,主题模型也能够学到更有意义的主题表示。
表4
为了探索为什么主题记忆网络能取得更好的性能,本文讨论了主题记忆网络对表 1的测试样例S学到了什么表示,结果如图2所示。由结果读者可以观察到,与S最相关的三个主题分别与Bieber、追星以及音乐相关。虽然三个主题的相关主题词大多都不被包含于S当中,但是通过挖掘词与词的共现关系,主题模型成功扩展了S中主题词wristband的语义,从而使得S得以被正确分类到New Music Live。
图2
结语
本文是主题模型与文本分类在神经网络框架下的一次结合,也是主题表示与其他深度学习任务联合训练的一个尝试,希望能够启发后续对于主题表示与深度学习的研究与应用。
XL-NBT: A Cross-lingual Neural Belief Tracking Framework 解读
接下来解读XL-NBT: A Cross-lingual Neural Belief Tracking Framework这篇关于跨语种对话系统的迁移学习的论文,由加州大学圣芭芭拉分校、腾讯AI Lab和俄亥俄州立大学联合合作完成。
在任务型对话系统中,状态跟踪器的学习对于对话理解至关重要。而学习状态跟踪器通常需要从大量的人工标注数据中学习。这一挑战在多语种对话系统中将更为严峻,特别是小语种系统的人工标注数据获取将更为昂贵。本文主要考虑的问题是如何利用迁移学习将已经学好大语种(如英语)对话状态跟踪器迁移至其他小语种,从而无需小语种的标注数据便可以得到性能较好的小语种对话状态跟踪器。
本文考虑的任务型对话系统状态跟踪器跨语种迁移学习的表述如下图所示。我们假设源语种(通常是大语种,如英语)有足够的人工标注数据,可以直接训练一个较好的状态跟踪器。而目标语种通常是小语种,缺乏人工标注数据直接有监督学习状态跟踪器。两个语种之间共享一个底层的任务数据库。
图1. 任务型对话系统状态跟踪器的跨语种迁移学习。源语种的状态跟踪器假设已经训练完成。目标语种没有人工标注数据用来做直接的监督学习。两个语种之间共享一个任务数据库系统(图中表格)。
思路
本文提出的迁移学习方法基于的主要思路是利用外部的辅助数据来帮助实现迁移学习。主要考虑的外部数据分为两种:(i) 平行语料, (ii) 双语字典。前者假设迁移学习的两个语种之间存在句子级别的平行语料(如机器翻译数据),后者假设两个语种之间只存在双语字典。需要说明的是前者的平行语料不一定是跟对话系统直接相关的数据。此外,我们修改了之前由(Mrksic et al., 2017)提出的神经网络状态跟踪器的网络结构使之在局部结构上结构(见下面详细论述)并利用Teacher-Student学习机制实现从源语言状态跟踪器迁移至目标语言状态跟踪器。
模型
解耦神经网络状态跟踪器。本文对之前由(Mrksic et al., 2017)提出的神经网络状态跟踪器的网络结构进行解耦,使其能被用于本文的迁移学习需要。解耦后的网络结构如下图所示。从图中可以看出,整个状态跟踪器主要由两部分构成:一部分是utterance encoding,主要负责将对话系统中输入文本编码。第二部分是Slot-value encoding,主要负责将候选slot-value以及系统应答编码。解耦成这样两部分后,我们将可以用teacher-student学习机制实现迁移学习。
图2. 解耦后的神经网络状态跟踪器网络结构
我们使用teacher-student学习机制来实现从源语言到目标语言的迁移学习。学习的目标是最小化如下函数:
这个目标函数中出现的变量定义如下:
为教师网络的状态跟踪器输入,为学生网络的状态跟踪器输入。这个目标函数刻画了教师和学生网络对应输出的均方误差。我们的目标是使得这两个网络的输出尽可能接近使得学生网络的输出能够逼近教师网络。然而这个目标函数在我们的问题里面是无法直接优化的,因为和的并行输入数据我们通常很难获取(因为这样还是需要对目标语种有直接的对话标注数据)。更困难的是我们通常都没有目标语种的输入utterance 数据。因为我们通常需要合成或者借助外部语料来辅助我们生成这样的数据。在我们这个问题中我们假设了两个语种之间共享一个任务数据库,所以和的平行数据通常可以通过合成方法得到。而平行的utterance数据和通常不易获取,在本文中借助两种不同类型的外部辅助数据获取(平行句子语料和双语词典)。从中我们可以看出教师网络和学生网络的输入需要通过不同方式来获取,这也是为什么我们无法直接优化原始的目标函数。为此,我们借助我们状态跟踪器网络的解耦结构,我们提出使用原始目标函数的上界来作为替代目标函数(具体推导过程见论文):
第一部分刻画的是教师网络和学生网络在utterance encoding上的误差,第二部分刻画的是教师网络和学生网络在slot-value decoding上的误差(见图2)。对于第一部分我们借助外部辅助数据学习,第二部分我们利用合成方法生成。这样解决了上面提到的困难。总体的方法见下图所示。
图3. 教师-学生学习机制
针对两种不同类型的外部辅助数据,我们分别提出了两种变种:XL-NBT-C和XL-NBT-D。前者针对有平行句子语料情况。后者针对只有双语字典情况。这两个变种的图示如下。
图4. XL-NBT-C和XL-NBT-D
实验
我们主要对比了我们的方法和五种不同的基线方法:监督学习、无迁移学习、ontology匹配、翻译方法以及逐词翻译。主要的实验结果如下面表格所示。可以看出我们提出的方法取得了非常好的迁移学习效果。在论文中给出了更多进一步的实验分析结果。
表1. 主要实验结果。所有实验结果是五次独立实验的平均。