文章名称
【EMNLP-2021】【Nanjing Universit】Reinforced Counterfactual Data Augmentation for Dual Sentiment Classification
核心要点
文章旨在解决现有数据增广方法(包括随机扰动和对抗样本)只能生成“同义”增广样本(这里的同义是指NLP的语义),因而不能够解决文本分类任务中,由于数据偏差存在的“spurious association“或者称之为”Selection Bias“。作者提出一个强化学习框架(个人感觉是一个更偏对抗的框架,当然本来两者差别就不大),同时训练能够产生”反义“(语义相反的)且多样样本的生成器(generator)和文本分类器(discriminator)。并利用在原始数据上和增广数据上训练的两个分类器,给新生成的反事实样本进行打分,确保反事实的质量和”非同义“性。
研究背景
现有的方法,如下2种方法进行数据增广,提升模型抗攻击和泛化能力。
- 通过替换同义词之类的方法,生成同义的句子。
- 在词嵌入中添加随机噪声的方法,生成(同义)句子表示。
但这些方法仍然无法解决虚假“spurious association“。这些“spurious association“产生的根本原因是Selection Bias。例如,中性词“book“,在情感标签为”positive“的样本中出现频率高于标签为”negative“的样本中的出现频率,就可能导致模型学习了这种统计相关性,进而认为”book“是一个”positive“的词,出现”book“就尽可能的判断为”positive“。
反事实样本因为通过修改某些真正的因果关系,导致可以是模型的判别结果发生变化,进而改变中性词,例如“book”,在“positive”和“negative”的样本中出现的频率(尽可能使两者平衡),进而消除“Selection Bias”,也就消除了“spurious association“。
然而,现有反事实方法,仍然存在如下3方面问题,
- 大多数方法依靠人工标注,或基于规则进行反义样本生成,耗时耗力,并且生成样本的多样性有限。
- 大多数方法将样本生成和下游的分类任务看作两个独立的任务。
- 大多数方法将生成的反义样本合并到原训练集中,忽略了反义样本与原样本的一一对应关系。
方法细节
RCDA的整体框架如下图所示。大致可以分类2个模块,3个步骤。如前所述,两个模块包括Generator和discriminator。3个步骤如下,

生成同义词和反义词列表。这一步可以理解为生成反事实(或者叫反义样本,为了适合语境,下文统一用反义样本作为代称)的准备工作。具体是指,生成器使用从 WordNet 中获得的一对多反义词和同义词列表。也就是说,作者的生成方法仍然是利用了一些领域或场景知识的,并且也仍然可以被归类为词法增广。** 并且,不同于一些用词向量寻找同义词的方法,作者还是采用了wordnet这种人工只是的方法,在原始输入空间构造同义词和反义词。
生成多样的反义样本。这一步是利用上述同义词和反义词列表进行反义样本生成的过程。 基于多标签学习生成海量反义词候选,并基于强化学习自动选择最佳反义词。值得注意的是,作者并不是采用一个固定的概率随机替换句子中的每一个词,而是利用了语言学的一些知识。 具体来说,
- 作者认为 形容词,动词和副词 跟情感分类任务直接相关,且作用较大。因此,作者会把句子中,拥有反义词的这三类词,都用其反义词替换。
- 这三类词中,也有一些不包含反义词,作者采用其同义词进行替换。并且,对 名词 也利用其 同义词 进行替换。
- 对于 停词 等,则不采取任何动作。
当然,作者也不是穷尽所有可替换的内容来生成反义样本。而是利用多标签序列标注任务训练一个模型来得到可以替换词的概率分布,并重复抽样得到多个最终的反义样本。具体地说,给定输入句子
,作者把上述规则生成的替换词
当做当前词
的训练标签,得到一个多标签模型。这个多标签模型的标签空间是模型词典。有了该模型,可以得到如下图所示的替换概率,该概率表示把
替换为
的概率。
probability to replace w_t with y^j
值得注意的是,这个概率现在在每个词之间是独立的。 为了可以抽样,作者把TOP-K个词抽出来,进行归一化(但是不在wordnet中的词的概率始终为0),其具体操作可以形式化为如下图所示(这个
只有
个元素)。
multinomial word distribution
有了这个分布,就可以从中抽词进行替换了。对于给定的样本
,经过
次生成过程,得到
个反义样本
。其中
分别表示原始标签和反义标签。
本节介绍了作者研究问题的背景,以及现有方法的缺陷,并介绍其提出的RCDA框架及反义样本生成的方法。下节继续介绍,分类模块和训练方法。
心得体会
与下游任务衔接紧密
虽然作者在introduction中说现有方法主要采用了规则等方法。但作者采用wordnet和有规则的同义词和反义词替换,其实还是引入了很强的业务知识,并也基于和下游任务强相关的同义词、反义词替换规则。不过。该规则在比较宽泛的文本任务都可以适用。
个人认为,作者提出的框架和思路都是可迁移的,并且有比较大的借鉴价值,只是一些生成细节需要做调整才能迁移和普适。
多标签分类器?
个人感觉作者把事情搞复杂了。如果只是为了构造采样分布,真的需要训练一个多标签分类模型么?况且,这个模型还根据出现频次筛选出来的TOP-K个同义词和反义词得到的label训练的。
网友评论