因果NLP工具箱 - CFIE(二)

文章名称

【SIGIR-2021】【Shenzhen University/Huawei Noah’s Ark Lab】A General Knowledge Distillation Framework for Counterfactual Recommendation via Uniform Data

核心要点

文章旨在解决基于最大似然的信息抽取方法的结果中,实体与标签之间存在可疑关系的问题。作者首先为各种信息抽取任务,构建了统一的因果结构模型,以描述各种变量之间的关系。随后,基于该因果结构模型以及显示的语言结构模型生成反事实样本,进而在预测阶段,更准确的估计直接因果效应。最后提出一种原创的纠偏方法,以此获得更具鲁棒性的预测结果。

上一节介绍了信息抽取中,因类别长尾分布导致的模型性能下降,容易识别出spurious correlations的问题背景。并介绍了作者解决该问题的思路和归纳到SCM结构。本节继续介绍模型的训练与预测,以及模型是如何生成反事实的。

方法细节

问题引入

如上节所述,模型的整体框架和流程如下图所示。在训练模型的时候(子图b),输入的是观测数据。而在预测的时候,需要利用干预手段生成反事实样本来辅助预测。那么如何干预,如何生成反事实呢?

CFIE Demonstration

具体做法

Interventions

因果推断场景下,干预意味着修改IE因果图中一部分子节点的值,是的这些节点的因果依赖被切断,其示意如下图中的子图b所示。这种干预可以用do算子进行表示,例如,改变。

SCM for IE

Counterfactuals

不同于干预,反事实则是在想象,如果变量被改变了,那么结果变量会变成什么样子。可以表示为如下图所示的公式,其中表示假设进行了干预。其中,表示外生噪声。实际的干预操作是通过对句子中的部分词进行mask处理,得到反事实句子和上下文表示以及每个词(token)的表示

Counterfactual

此时,可以利用如下图所示的公式进行计算,其中是计算outcome的函数,按照上节介绍,作者假设其为各个父节点的(或者说各个有边指向outcome的变量的)线性变换。

Counterfactual Estimation

对比观测数据的估计公式(如下图所示),counterfactual仅仅是把替换为。

Observation estimation

Counterfactual Generation

有许多语法和语义信息可以用来实现干预,得到反事实样本。作者采用依存树,因为其能够捕获复杂的语法结构和语义信息,能够有效地保存跨度较大的语言依赖特征,被证明再许多IE任务重起到很重要的作用。作者期望利用反事实生成,找到对任务其决定性作用的要素。

如Figure2中的子图d所示,作者mask掉核心词(NER中的Entity或者ED中的trigger词)的一跳依存词,并把mask后的句子输入上下文语言模型(BiLSTM或者BERT)得到反事实上下文,进一步利用得到每个词的表示。

作者认为这样做能够消除掉至关重要的要素,使得模型能够区分main effect和side effect,从而减少识别出的spurious correlations。作者提到,这个思路和[1]的结论是互相印证的。

Causal Effect Estimation

为了去除因side effect引起的spurious correlations,需要对IE过程的各个token的实际因果效应进行评估,估计过程如下图所示。作者受到[1]的启发,对比原始(logits)输出和反事实(logits)的差异,来评估该token对预测的main effect,这样可以利用TDE(Total Direct Effect)缓解side effect的影响[2],即,其示意如Figure4(a)所示。

此外,作者认为上下文和token(这个token在NER中是当前被识别的entity,在ED中是事件trigger)对IE任务都很重要。因此,对上述TDE进行改进,同时利用main effect和side effect,只不过,通过控制side effect可以加强main effect。

其公式可以表示为。其中是超参数,用来平衡上下文和token对IE任务的影响。改进的Main Effect公式中,

  • 第一部分表示debias之后的上下文对main effect的贡献。
  • 第二部分表示token本身对Main Effect的贡献。

两者结合可以提供对main effect更鲁棒的估计。

在Figure4的是示意中,

  • 子图a估计了TDE,使得针对“The program was killed”这句话,biased event “Life:Die”的得分有所降低,而正确的分类“SW:Quit”的得分有所提升。
  • 子图b是改进后对main effect的估计,debias上下文帮助模型降低了错误类别“Life:Die”的评估概率,第二部分帮助模型理解了“program”的重要性,增加了预测的鲁棒性,使得模型能够正确估计出类别“SW:Quit”。

心得体会

Intervention

个人感觉,文章的亮点之一是作者提供了一种在NLP场景下进行干预的思路,通过mask的方式实现了反事实样本的生成(感觉替换也可以)。

文章引用

[1] Kaihua Tang, Yulei Niu, Jianqiang Huang, Jiaxin Shi, and Hanwang Zhang. 2020b. Unbiased scene graph generation from biased training. In Proc. of CVPR.

[2] Judea Pearl. 2009. Causality. Cambridge university press.

你可能感兴趣的:(因果NLP工具箱 - CFIE(二))