Press "Enter" to skip to content

ICLR 2020 | 清华提 NExT 框架,用「神经元执行树」学习可解释性

作者 | 秦禹嘉

编辑 | 贾伟

ICLR 2020会议将于 4 月 26 日在非洲埃塞俄比亚(亚斯亚贝巴)举行。本届会议共有 2594篇投稿,其中 687篇论文被接收(48篇oral论文,107篇spotlight论文和531篇poster论文),接收率为26.5%。本文介绍的是清华大学、南加州大学和Snap研究院共同完成,发表在ICLR 2020 上的论文《Learning from Explanations with Neural Execution Tree》。

 

 

论文链接:
https://openreview.net/forum?id=rJlUt0EYwS

 

尽管深度学习模型已经在许多自然语言处理任务上取得了非常好的效果,它们通常依赖于大量的训练数据;然而在实际应用场景下,标注能力、训练数据并不充足的情况经常出现,因此如何让标注者高效率地标注是一个十分有意义的问题。

 

传统的标注方式让标注者经过分析后对每个例子打上一个标签。但是鉴于标注者对整个例子有着充分的理解,简单给出一个标签在一定程度上限制了标注者能够提供的信息量,很多情况下我们不仅关注标注者打出的标签,更加关注于其打出该标签的理由。因此一种更加高效的做法是让标注者在给出标签的同时给出相应的自然语言解释(Natural Language Explanation)来解释其做出该决定的原因,举例如下:

 

 

在这个例子中,标注者需要标注原句中的TERM的情感倾向,标注者在给出Positive的标签后同时给出解释:“very nice”出现在TERM后3个词之内。

 

自然语言解释已经被证明是非常有效的额外的监督性信息
,利用少量的自然语言解释可以对大量的无标签数据进行粗略的标注。然而从直观上看来,直接利用自然语言解释具有如下两个困难:

 

1)自然语言本身形式是无结构的(unstructured),我们需要预先将其解析成可执行的函数才能将其作用到大量的无标签数据上;

 

2)在实验中作者发现标注者通常会给出过分细致的解释,这就使得自然语言解释的泛化(generalization)能力受到限制。例如标注者通常会给出如下严格限定:某个特定的词组出现在句子的某个特定位置。这样的限定使得大量例子无法得到很好的匹配。

 

针对这两个问题,作者提出了NExT训练框架。NExT首先使用基于CCG(combinatory categorial grammar)语法的语义分析(Semantic Parsing)
将无结构的自然语言解释转换成结构化的标注函数(labeling function)
;此外,为了提升这些标注函数的泛化能力,
作者提出了包含四个模块的神经元执行树(Neural Execution Tree),将原先的严格匹配(Exact Matching)放宽为模糊匹配(Fuzzy Matching)。

 

 

一、任务概览

 

 

文章的总体目标是在资源匮乏(Low-Resource)的情形下,从少量的自然语言解释中获取信息来训练文本分类模型。

 

给定大量的无标注文本
,随机取样一小部分让标注者标注标签以及自然语言解释。NExT使用语义分析将自然语言解释解析为标注函数,对整体文本进行标注,可以直接严格匹配到一部分例子,形成一部分带标签数据

 

对于无法被标注函数直接严格匹配的例子,NExT使用神经元执行树进行模糊匹配,对每个例子给出一个伪标签(Pseudo Label)以及相应的置信度(Confidence Score),得到

 

最后将严格匹配和模糊匹配的例子一起送给下游分类器(Downstream Classifier)
进行训练。该框架适用于所有文本分类任务(Text Classification),同时也具有模型无关(Model Agnostic)的特点,即对于任何下游分类器均能适用。

 

 

二、基于CCG语法的语义分析

 

 

基于CCG语法的语义分析的目的是将无结构的自然语言解释解析为结构化的标注函数,从而能够将其作用到无标注文本上。如上图所示,首先将自然语言解释中的每个词语/词组映射到预先确定的谓语(Predicate)。

 

每个谓语有特定的语法(Syntax),利用CCG语法,可以自动生成许多可能的谓语组合形式(Possible Logical Form,也可以被视为标注函数)。

 

为了从大量的谓语组合形式中选取正确的,作者为每一个谓语组合自动设定一个feature,引入可训练参数
,并最大化所有执行结果正确的谓语组合的概率之和来训练模型。在推断阶段,选取概率最大的谓语组合作为代表该自然语言解释的标注函数。

 

 

三、神经元执行树

 

 

神经元执行树的输入是一个解析自然语言解释后得到的谓语组合,以及一个无法被直接严格匹配的句子,它的输出是二者的匹配概率(Matching Score)。

 

语义分析已经将自然语言解释解析成树的形式,树中的节点代表相应的谓语,这些谓语代表不同的执行方式,例如字符串匹配、距离计算等。神经元执行树使用四种神经模块处理不同类型的谓语,输出相应节点的匹配概率,概率沿着树结构传递到顶节点,输出最终的匹配概率。

 

神经元执行树的四个模块分别为:字符串匹配模块(String Matching Module),软化的计数模块(Soft Counting Module),决定性函数模块(Deterministic Function Module)和逻辑组合计算模块(Logical Calculation Module)。

 

下面逐一对其介绍:

 

1) 字符串匹配模块

 

 

该模块用于匹配语义相近的字符串并输出匹配概率。整体结构采用孪生神经网络,对于自然语言解释中提到的某词组,该模块需要返回该词组的语义在句子中各个位置出现的概率。作者使用了弱监督的方式训练该模块。

 

2) 软化的计数模块

 

该模块用于放宽自然语言解释中对数量、距离等数值的限制。

 

3) 决定性函数模块

 

该模块作用在决定性的谓语(例如between, Left, Right等)上,输出的概率为0或者1。

 

4) 逻辑组合计算模块

 

 

 

 

该模块使用概率软逻辑(Probabilistic Soft Logic)来组合不同节点输出的概率。

 

 

四、模型联合训练

 

 

如前所述,解析后的自然语言解释可以直接严格匹配到一部分例子,形成一部分带标签数据
,其余无标签数据记为
。下游分类模型与神经元执行树进行联合训练,在训练阶段的每一轮中,模型会从
中随机选取一部分做监督性训练,从
中选取一部分用NExT进行伪标签标注后进行带权重的监督性训练。

 

 

五、实验结果

 

作者在关系抽取(Relation Extraction)和情感分析(Sentiment Analysis)两个任务上实验,使用的数据集分别为TACRED, SemEval(关系抽取)和SemEval 2014 Task 4(情感分析),所使用的自然语言解释通过Amazon Mechanical Turk平台标注得到,实验结果如下下图所示。从实验结果中可以看出,NExT相对于全监督的以及半监督的算法均有很大的效果提升。

 

 

关系抽取

 

 

情感分析

文章同时测试了在不同数量的自然语言解释下NExT的效果,实验结果显示NExT均比Baseline更好(如下图所示)。

 

 

另外,对比相同时间内标注(1)自然语言解释和(2)纯标签的效果,NExT作用在前者上相对于Baseline作用在后者上有更好的效果。
这说明相对于传统的标注方式,NExT有更高的标注效率。

 

 

 

六、总结

在这篇文章中,作者提出了一种利用少量自然语言解释增加文本分类训练样本的方法,主要解决了自然语言解释的(1)无结构性和(2)泛化能力差两个问题。

 

作者在多个文本分类任务上对模型效果进行了验证。实验结果证明,
使用该方法利用自然语言解释相对于传统标注方式是更加高效的。
未来的工作方向会聚焦在将该模型拓展到更加复杂的自然语言任务中(例如Question Answering等)。

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注