[论文阅读]Attacking Open-domain Question Answering by Injecting Misinformation

发布于:2025-03-30 ⋅ 阅读:(27) ⋅ 点赞:(0)

Attacking Open-domain Question Answering by Injecting Misinformation

Attacking Open-domain Question Answering by Injecting Misinformation - ACL Anthology

IJCNLP-AACL 2023

一个典型的问答 (QA) 系统首先从网络检索一组相关的上下文文档,然后由机器阅读器检查以识别正确答案。现有工作通常将维基百科等同于网络语料库。 因此,所有检索到的上下文文档都被假定为干净且可信的。 然而,现实世界中的 QA 面临着更加嘈杂的环境,其中网络语料库被错误信息污染。 这包括人类撰写者无意中犯下的事实性错误以及旨在欺骗的蓄意虚假信息。 除了人为制造的错误信息之外还面临着人工智能生成的错误信息的不可避免性。 随着文本生成技术的持续进步,恶意行为者可以大规模生成逼真的虚假网络文档

虚假信息的出现——无论是否故意制造,无论是由人撰写还是机器生成——都会通过引入相互矛盾的信息来影响问答系统的可靠性。图1右半,当真实信息和虚假信息都被作为上下文文档检索时,鉴于问答模型无法识别虚假信息并对相互矛盾的上下文进行推理,它们很容易被双方给出的相互矛盾的答案所迷惑。 尽管当前的问答模型在干净上下文的理想情况下通常能够取得令人满意的性能,但在更现实的包含虚假信息的混合上下文中,它们很容易失效。

本文通过研究问答模型在一个充斥虚假信息的网络语料库(其中混合了真实和虚假信息)上的行为,来研究虚假信息对问答的风险。

这样需要一个语料库,因此提出了一种虚假信息攻击(misinformation attack)策略 ,该策略整理维基百科文章的虚假版本然后将其注入干净的维基百科语料库。

对于一篇维基百科文章P,通过修改其中的信息创建其虚假版本P',使得:①两个文档中的某些信息互相矛盾②P'流畅、一致并且看起来逼真。

研究了人工撰写和模型生成的虚假信息。人工撰写部分,请Mechanical Turkers 通过修改原始维基文章来创建虚假文章。模型生成部分,提出了一种强大的改写模型BART-FG,可以控制性地屏蔽和重新生成原始文章中的文本片段以生成虚假信息,然后评估问答性能。        

相关工作

 开放域问答系统采用检索器-阅读器范式,该范式首先从大型证据语料库中检索相关文档,然后根据检索到的文档预测答案。 由于维基百科被用作证据语料库,以前的工作都默认检索到的文档是可信的。这项工作主动研究了错误信息可能给问答系统带来的潜在威胁,呼吁构建新的免疫于错误信息的问答系统。

问答模型通常依赖于问题和上下文之间的虚假模式,而不是学习期望的行为。 它们可能会完全忽略问题,主要关注答案类型,或忽略任务的“预期”推理模式

问答模型在域外 (OOD) 数据上的泛化能力也很差,例如,对于不同的语义等效问题,它们经常做出不一致的预测

虚假信息文档生成

通过将人工撰写和模型生成的虚假文档注入证据语料库,模拟问答模型对语料库中虚假信息污染的潜在脆弱性,并评估其对这些系统性能的影响。研究基于SQuAD,这是评估问答系统的最流行基准之一。使用验证集中所有 2,036 个独特的维基百科段落进行研究。对于每个维基百科段落创建一组 N个 虚假段落

1.人工创建虚假段落

在AMT平台上发布了2000个HIT(人工智能任务),其中每个HIT向众包工作者展示一个在SQuAD验证集中的段落 𝒫R ,要求工作人员修改给定段落的内容以创建虚假版本,遵循以下指南:

  • 至少在不同的地方编辑M处修改,其中M等于上下文句子数目加一
  • 至少进行一次较长的编辑,重写至少半个句子
  • 编辑应该修改关键信息使其与原文矛盾,例如时间,地点,目的,结果,原因等
  • 修改后的段落流畅且看起来真实,没有常识性错误

 将任务限制在位于五个英语为母语的国家并且批准率至少为90%的工作人员,具体的操作参考指南在附录A中。

2.虚假段落模型生成

为了评估逼真神经虚假段落的有效性,提出了 BART 虚假段落生成器 (BART-FG),它通过迭代修改原始段落来生成逼真且可控的文本。 如图2所示,对于每个句子 S 的原始段落,BART-FG 生成其虚假版本 S′ 通过一个两步过程:

1) 跨度掩码。 首先从输入句子中获得一组候选文本跨度。 然后我们随机选择一个跨度,并将其替换为一个特殊的掩码符元 [MASK]。 我们采用两种不同的方法来获取候选跨度。 1) 命名实体识别 (NER): 使用 Spacy来提取命名实体作为候选跨度。 2) 句法结构分析: 应用 AllenNLP4 中实现的句法结构分析器从输入句子中提取句法结构跨度作为候选跨度。 我们选择掩盖命名实体/句法短语而不是随机跨度,因为:1)它们代表完整的语义单元,例如“超级碗 50”,避免了无意义的随机短语,例如“碗 50”;2)它们通常代表句子中的重要信息——例如时间、地点、原因等。

2) 片段重生成。 通过生成一个与被掩盖的短语不同的短语来填充掩码。 掩码由在维基百科转储数据上使用名为gap span filling的新型自监督任务微调的BART模型填充,稍后将进行介绍。

上述流程迭代运行 K 次以生成句子 S′ . 我们选择迭代地而不是并行地进行编辑,以模拟多个编辑之间的交互。 例如,在图2,如果之前的编辑将“Santa Clara”更改为“Atlanta”,则下一个编辑可以选择将“California”更改为“Georgia”,以使内容更一致和更真实。

 间隔跨度填充 (GSF) 预训练

3.生成虚假段落的分析

(1) 实体替换:用相同类型的其他实体替换实体(例如,人、地点、时间、数字),这对于人工编辑和BART-FG来说都是一种常见的修改类型。

(2) 动词替换:用其反义词替换动词或动词短语,例如,“强迫这些孩子” → “阻止这些孩子”。

(3) 添加限制:通过插入额外的限制条件来创建与原始内容相矛盾的内容,例如,“每天” → “每天除了星期天”。

(4) 句子改写:改写整个句子以表达相反的含义,例证见(4)。 这在人工编辑中很常见,但在模型生成的段落中很少见,因为这需要深入的阅读理解能力。

(5) 扰乱顺序:通过扰乱实体的某些属性来制造矛盾;例如,示例(5)交换了“算法分析”和“复杂性理论”的属性。

(6)连续替换:人类更好地进行连续编辑以创建一个相互矛盾但相干的句子,以(6)为例。

用错误信息污染语料库

给定由人类和我们的BART-FG模型整理的虚假段落,现在研究提取式问答模型在一个被错误信息污染的证据语料库下的行为

首先创建一个用于问答的干净语料库,其中包含一百万个真实的维基百科段落。从知识密集型语言任务(KILT)基准提供的 2019/08/01 维基百科转储中获取维基百科段落,其中的维基百科文章已经过预处理并分成段落。从 KILT 中抽取了 100 万个段落,并确保 SQuAD 数据集中的 20958 个维基百科段落都包含在语料库中。然后探索了以下五种用人工创建和合成的虚假文档污染干净语料库的方法。

  1. 污染-人工:把人工制作的2023个虚假段落注入干净语料库
  2. 污染-命名实体识别NER:使用BART-FG为SQuAD开发集中的每个真实段落生成10个虚假段落,使用命名实体识别(NER)来获取候选片段。掩盖并重新生成所有候选片段以创建每个虚假段落。 使用核采样Holtzman et al. (2020)来确保生成的样本多样性,总共得到18233个不重复的虚假段落。 我们将它们注入干净语料库。
  3. 污染选区。在 BART-FG 中,我们使用选区解析为每个真实段落生成 10 个假段落,以获得候选跨度。由于句子中的选区短语远多于命名实体,为确保效率,我们将每个句子的替换次数 K = 3。我们得到了 19796 个不重复的虚假段落,并将它们注入到干净的语料库中。
  4. 污染-混合:把上述所有生成的虚假信息注入到了干净的语料库中
  5. 污染-目标:在上述设置中,攻击者(人类或 BART-FG 模型)试图在不知道目标问题的情况下制造具有误导性的虚假信息。然而,在另一种攻击模式中,攻击者有自己感兴趣的特定问题,他们想误导质量保证系统得到错误的答案。为了探索 QA 系统如何应对此类攻击,在这种情况下,我们假设攻击者的目标是 SQuAD 开发集中的问题。然后,我们使用 BART-FG 屏蔽并重新生成这些问题的答案跨度,从而创建虚假段落。通过这种方法,我们得到了 10101 个虚假段落,并将它们插入到干净的语料库中。

模型和实验

问答系统采用先检索后阅读的流程,首先检索 N (设置 N=5 )来自证据语料库的相关上下文文档,然后根据检索到的文档预测答案。应用基于BM25的广泛使用的稀疏检索。问答模型:RoBERTa-large (Liu等人,2019),Span-BERT (Joshi等人,2020),Longformer (Beltagy等人,2020),ELECTRA (Clark等人,2020)和DeBERTa-V3 (He等人,2023)。 使用他们在Hugging Face库中对SQuAD训练集进行微调的模型检查点。 使用标准的精确匹配 (EM) 和 F1 指标来衡量问答性能。

主要结果

当将生成的虚假段落引入干净的证据语料库时,性能显著下降:相对 EM 值的平均性能下降最小为 7.72% (Polluted-Human),而最大下降为 53.19% (Polluted-Targeted)。表明 问答模型对虚假信息攻击很敏感;即使是少量注入的虚假段落(占整个语料库的 0.2% (Human) 到 4.0% (Hybrid)),也会显著影响下游问答性能。 

Polluted-Targeted 造成的性能下降比最有效的非针对性问题攻击 (Polluted-Hybrid) 更显著 ( ∼ 53% vs. ∼22%的相对EM下降),表明 在针对问题的虚假信息攻击下,问答模型更易受攻击。当攻击者想要改变问答系统针对特定感兴趣问题生成的答案时,虚假信息攻击会带来更大的威胁。

对于其他四种非针对性问题的设置,其中污染并非针对特定问题,仍然观察到所有模型的性能 EM 值有显著下降 ( ∼20%)。 其中,Polluted-NER造成的性能下降大于Polluted-Constituency,这表明通过替换命名实体来生成错误信息比替换成分跨度更有效。 这可能是由于SQuAD数据集的特性,其中大部分答案跨度都是命名实体。

错误信息对检索器的影响

攻击的成功依赖于这样一个前提:虚假段落可以被检索器从污染的语料库中检索出来。

了BM25检索器中前k 检索到的段落中误导性证据的百分比(F@k,对于 k∈{1,5})

发现F@1和F@5都非常高,而对于污染的语料库,真实证据出现在前1(R@1)和前5(R@5)的可能性显著下降。 结果表明, 注入的虚假段落可以很容易地被检索到,作为下游问答的证据。 缺乏事实核查能力的QA模型很容易被这种错误信息误导。

使用了ColBERT-V2最先进的稠密检索器采用后期交互架构来模拟它们的相似性。使用在MSMARCO上预训练的ColBERT,并使用来自SQuAD训练集的(问题,上下文)对作为正样本,以及(问题,随机上下文)作为负样本对其进行微调。

错误信息攻击也影响了ColBERT检索器,降低了所有设置下的R@1和R@5,正如F@1和F@5所反映的那样,检索到的虚假段落比例很高。与BM25相比,ColBERT对错误信息攻击的抵抗力较弱。 在干净的语料库中,ColBERT在检索和下游问答性能方面都优于BM25。 然而,在所有污染的语料库中,ColBERT的相对性能下降幅度大于BM25。 可能的解释是:由于无法识别虚假信息,更“准确”的检索器往往会检索更多看似相关但错误的文档,这使其对错误信息攻击的鲁棒性较差。

注入虚假段落大小的影响

对于目标攻击(Targeted)和非目标攻击(NER),随着虚假段落数量的增加,EM得分稳步下降。前者导致下降趋势更加陡峭,这进一步证实了在更了解目标问题的情况下,错误信息攻击更具杀伤力。得出结论:当错误信息大规模生成时,其对问答系统的影响可能更为严重。

哪个更具有欺骗性:人为生成的错误信息还是模型生成的错误信息?

这个实验的方法:对于每个问题Q,使用干净文档、人工扰动文档、BART-FG(NER)和BART-FG(句法结构)四种类型文档同时作为上下文,看答案到底更倾向于从哪里获取

错误来源的分布表明,大多数错误答案是从模型生成的虚假段落中提取的。 人为创建的虚假段落在欺骗问答模型方面并没有显示出比BART-FG更明显的优势。

错误信息能否欺骗人类

表明人类也很容易被问答中的错误信息分散注意力,这说明了对于普通读者来说,区分问答中的错误信息、生成的虚假段落的质量以及检测此类攻击的难度所带来的挑战。

讨论

三种防御问答中错误信息威胁的可能方法

知识来源工程。 尽管维基百科是一个值得信赖的知识来源,但它不足以满足现实生活中问答所需的所有信息。 因此,最近的一些工作Piktus et al. (2021)开始使用网络作为问答语料库。 然而,当转向网络语料库时,我们不再能确定任何文档都是真实的。 因此,语料库需要更仔细的整理以避免错误信息。 这也带来了对未来检索模型的需求,使其能够评估检索到的文档的质量并优先考虑更值得信赖的来源。

整合事实核查和问答。 随着在线错误信息的增多,自动事实核查在自然语言处理领域受到了越来越多的关注Guo et al. (2022)。 将事实核查模型集成到开放域问答的流程中,可能是对抗错误信息的一种有效措施,这是先前工作忽略的一个方向。 一种可能的方法是检测检索到的上下文中的潜在虚假说法,并降低其在下游问答模型中的重要性。

在矛盾的语境下进行推理。 人类在信息搜索过程中处理矛盾信息是很常见的。 随着在线不准确和虚假信息的存在,未来的模型应该关注综合和推理矛盾信息以得出正确答案的能力。

研究表明,在错误信息污染的环境下,问答模型确实容易受到攻击。 我们还表明,我们的BART-FG模型可以大规模生成与人类一样具有欺骗性的虚假文档。 这对当前的开放域问答模型在防御神经网络虚假信息攻击方面构成了威胁。