Generalizing to the Future: Mitigating Entity Bias in Fake News Detection (ENDEF)

Introduction

Generalizing to the Future: Mitigating Entity Bias in Fake News Detection, 被 SIGIR-2022所接收. Paper

  • 问题陈述:假新闻的广泛传播对个人和社会构成了日益严重的威胁。假新闻检测的目标是在现有新闻数据上训练模型,以便在未来检测出假新闻。尽管已有许多努力,但现有方法忽略了现实世界数据中存在的无意实体偏差,这严重影响了模型对未来数据的泛化能力。例如,2010-2017年间包含“Donald Trump”实体的新闻中,有97%是真实的,但在2018年这一比例骤降至33%,这可能导致基于前一组数据训练的模型难以泛化到后一组数据。
  • 研究方法:为了解决这个问题,论文提出了一个名为ENDEF的实体去偏框架。该框架从因果关系的角度出发,通过减少实体偏差来提高假新闻检测模型对未来数据的泛化能力。具体来说,框架基于实体、新闻内容和新闻真实性之间的因果图,分别对训练过程中每个原因(实体和内容)的贡献进行建模。
  • 框架实现:在推理阶段,ENDEF框架通过去除实体的直接影响来减轻实体偏差。这种方法允许模型在训练时明确意识到实体偏差,并在预测时去除相关实体的直接效应,从而进行去偏预测。
  • 实验结果:通过在英语和中文数据集上进行的广泛离线实验,论文证明了所提出框架能够显著提高基础假新闻检测器的性能。此外,在线测试也验证了该框架在实际应用中的优越性。据作者所知,这是首次明确提出改善假新闻检测模型对未来数据泛化能力的工作。

Dataset

使用的新数据集源自课程提供的GossipCop-LLM-Data-examples/gossipcop_v3_origin.json数据集,我们对这个新数据集进行了筛选和处理,具体代码可见data_preprocess.py

最终得到的数据集分为训练集、验证集和测试集,比例为6:2:2,且验证集和测试集中只有发表时间为2018年的新闻数据,作为未来预测数据。数据的具体情况如下表:

dataset_name total fake real
data/train.json 5127 1511 3616
data/val.json 1709 493 1216
data/test.json 1709 479 1230

以上的划分数据集可以在下载了原始数据集GossipCop-LLM-Data-examplesdata/目录后通过直接执行data_preprocess.py得到。

Run

参数配置:

  • max_len:样本的最大长度,默认为 170
  • early_stop:早停的轮数,默认为 5
  • epoch:训练轮数,默认为 50
  • aug_prob:数据增强的概率(掩码和丢弃),默认为 0.1
  • gpu:将要使用的 GPU 索引,默认为 0
  • lr:学习率,默认为 0.0001
  • model_name:模型名称,可选项为 bigru, bigru_endef, bert, bert_endef, eann, eann_endef, mdfend, mdfend_endef,默认为 bigru_endef

您可以通过以下方式运行此代码:

# Reset several parameters
python main.py --gpu 0 --lr 0.0001 --model_name bigr

Result

各个模型的实验结果可以在result/目录下可见,以下是对所有模型结果的总表:

model_name auc spauc f1 f1_real f1_fake recall recall_real recall_fake precision precision_real precision_fake acc acc_real acc_fake
bigru 0.852 0.755 0.791 0.897 0.684 0.770 0.941 0.599 0.827 0.858 0.797 0.845 0.858 0.797
bigru_endef 0.860 0.761 0.799 0.899 0.698 0.780 0.937 0.622 0.829 0.864 0.795 0.849 0.864 0.795
bert 0.879 0.766 0.801 0.884 0.718 0.809 0.870 0.747 0.795 0.898 0.691 0.836 0.868 0.691
bert_endef 0.880 0.764 0.803 0.896 0.711 0.793 0.915 0.672 0.816 0.878 0.754 0.847 0.878 0.754
mdfend 0.873 0.779 0.810 0.901 0.717 0.776 0.902 0.624 0.841 0.847 0.804 0.850 0.873 0.813
mdfend_endef 0.878 0.781 0.812 0.906 0.720 0.788 0.923 0.645 0.839 0.860 0.805 0.851 0.877 0.824
eann 0.874 0.780 0.809 0.904 0.713 0.790 0.942 0.637 0.840 0.869 0.811 0.857 0.869 0.811
eann_endef 0.877 0.780 0.814 0.907 0.721 0.794 0.946 0.643 0.847 0.872 0.821 0.861 0.872 0.821

其中模型名称中有_endef后缀的所在行是使用了文章所提出的框架的模型表现结果。