Towards Debiasing Fact Verification Models

Towards Debiasing Fact Verification Models

  1. 发布时间

    2019-11 (该论文发表于 EMNLP-IJCNLP 2019 会议)

  2. 研究背景

    1. 研究领域现状:事实核查(Fact Verification, FV)旨在判断给定声明(Claim)相对于证据(Evidence)是“支持”(SUPPORTS)、“驳斥”(REFUTES)还是“信息不足”(NOT ENOUGH INFO, NEI)。随着大规模数据集(如FEVER)的出现,基于深度学习的FV模型在标准测试集上取得了显著的性能。
    2. 存在的主要问题或挑战:尽管模型在基准测试中表现优异,但研究发现它们常常依赖数据集中的统计偏见(spurious correlations)和捷径学习(shortcut learning),而非进行真正的逻辑推理。例如,模型可能仅根据声明中的特定词汇(如否定词)就预测“驳斥”,或者过度依赖声明与证据之间的词汇重叠,而不是理解语义内容。这种现象导致模型在面对分布外(OOD)或对抗性样本时表现脆弱,泛化能力差。
    3. 先前相关工作及其局限性:早期的FV模型主要采用自然语言推断(NLI)的技术,但未充分考虑到FV任务特有的偏见问题。一些研究指出了FEVER等数据集中存在的偏见,例如“声明偏见”(claim-only bias),即仅凭声明内容就能以较高准确率预测标签。
    4. 本研究的出发点或动机:为了提升FV模型的鲁棒性和泛化能力,使其真正基于证据进行推理,而不是依赖数据集的表面统计特征,迫切需要研究和开发去偏见的方法。本研究旨在识别这些偏见,并提出有效的策略来缓解它们对模型性能的负面影响。
  3. 研究问题

    1. 现有的事实核查模型在多大程度上依赖于数据集中的偏见(如声明偏见、词汇重叠偏见)?
    2. 如何有效地量化和诊断事实核查模型中的偏见?
    3. 如何设计训练策略或修改数据,以减少事实核查模型对已知偏见的依赖?
    4. 去偏见后的模型在标准测试集和更具挑战性的、旨在暴露偏见的评估集上的表现如何?它们能否展现出更强的鲁棒性和泛化能力?
  4. 研究方法

    • 偏见感知训练 (Bias-Aware Training Methods)

      • 核心思想:通过识别并利用一个“偏见模型”(仅学习偏见特征的模型)的输出来指导主模型的训练或推断,从而降低主模型对这些偏见特征的依赖。

      • 具体实现

        1. 训练偏见模型 (Bias-Only Model) :首先训练一个只能访问 “偏见特征” 的模型。例如,一个仅使用声明(hypothesis-only)作为输入来预测标签的模型,用于捕捉声明偏见。

        2. 去偏方法 (Debiasing Techniques)

          • 重加权 (Reweighting) :在训练主模型(接收声明和证据作为输入)时,根据偏见模型的表现来调整训练样本的权重。具体来说,如果一个样本能被偏见模型轻易且正确地分类,那么这个样本在主模型训练中的权重就会被降低。例如,权重 w_i = 1 - p_bias(y_i | x_bias_i),其中 p_bias 是偏见模型预测正确标签 y_i 的概率,x_bias_i 是偏见特征。主模型的损失函数会乘以这个动态计算的权重。
          • 偏见乘积 (Bias Product - 推断时集成) :这是一种在推断(测试)阶段应用的集成方法。主模型 P_main(y | claim, evidence) 的预测概率会与偏见模型 P_bias(y | claim) 的预测概率进行结合。一种常见的做法是 P(y | claim, evidence) ∝ P_main(y | claim, evidence) / P_bias(y | claim) (或者乘以偏见模型概率的负指数幂)。这种方法旨在惩罚那些主模型和偏见模型都高度自信的预测,鼓励主模型关注偏见模型无法捕捉到的信息(即证据)。论文中也称之为基于“专家乘积”(Product of Experts, PoE)思想的方法。
    • FEVER-Symmetric 数据集构建

      • 核心思想:通过生成对抗性的、对称的样本来创建一个新的评估数据集,该数据集旨在挑战模型的声明偏见,并促使模型更关注证据。

      • 具体实现

        1. 数据来源:基于原始FEVER数据集。

        2. 对称样本生成:对于FEVER数据集中每个 (声明 C, 证据 E, 标签 L) 的实例:

          • 如果原始标签 L 是 SUPPORTS,则尝试为该声明 C 找到或生成一个新的证据 E',使得 (C, E', REFUTES) 成立。
          • 如果原始标签 L 是 REFUTES,则尝试为该声明 C 找到或生成一个新的证据 E'',使得 (C, E'', SUPPORTS) 成立。
          • 对于NEI标签的样本,也尝试找到能使其变为SUPPORTS或REFUTES的证据。
        3. 目标:生成的 FEVER-Symmetric 数据集包含许多声明相同但由于证据不同而导致标签相反的样本对。这使得仅依赖声明特征的模型难以在该数据集上取得好成绩,从而可以更准确地评估模型的鲁棒性。

  5. 算法流程

    1. 偏见识别与基线模型评估

      • 输入:FEVER数据集,标准的事实核查模型(如基于BERT的分类器)。

      • 过程:

        • 训练标准的事实核查模型。
        • 训练 “偏见模型”(例如,仅使用声明作为输入的模型,或仅使用词汇重叠特征的模型)。
        • 在 FEVER 的开发集和测试集上评估这些模型,分析它们在不同子集(如特定偏见类型主导的子集)上的表现,以量化偏见的影响。
      • 输出:对现有模型偏见程度的评估,以及偏见模型的性能基准。

    2. 应用偏见感知训练方法

      • 输入:FEVER训练集,预训练的偏见模型(来自步骤1),主模型架构。

      • 过程:

        • 对于重加权方法

          • 对每个训练样本,使用偏见模型计算其预测正确标签的概率。
          • 根据此概率计算样本权重(如 w_i = 1 - p_bias(y_i | x_bias_i))。
          • 使用加权损失函数训练主模型。
        • 对于偏见乘积方法(用于推断) :主模型正常训练,但在推断时,其输出与偏见模型的输出通过乘积(或除法)方式结合。

      • 输出:经过偏见感知训练的(去偏的)事实核查模型。

    3. 构建FEVER-Symmetric数据集

      • 输入:原始FEVER数据集。

      • 过程:

        • 遍历FEVER中的样本。
        • 对于每个声明,尝试通过修改/替换证据来生成具有相反标签(SUPPORTS vs. REFUTES)的对称样本。这通常需要人工标注或半自动流程来确保证据的合理性和标签的准确性。
        • 筛选并整合这些对称样本,形成FEVER-Symmetric的开发集和测试集。
      • 输出:FEVER-Symmetric数据集。

    4. 评估去偏效果

      • 输入:标准模型、去偏模型(来自步骤2)、FEVER原始测试集、FEVER-Symmetric测试集。

      • 过程:

        • 在FEVER原始测试集上评估所有模型,以检验去偏方法是否牺牲了原始任务的性能。
        • 在FEVER-Symmetric测试集上评估所有模型,以检验去偏方法在抵抗特定偏见方面的有效性。
        • 分析模型在不同类型样本上的表现,例如,比较模型在对称样本对上的预测一致性。
      • 输出:各模型在不同评估集上的性能指标(如准确率),以及关于去偏方法有效性的结论。

posted @ 2025-05-27 18:12  别关注我了,私信我吧  阅读(36)  评论(0)    收藏  举报
Live2D