PromptRobust: Towards Evaluating the Robustness of Large Language Models on Adversarial Prompts
https://arxiv.org/pdf/2306.04528
PromptRobust:评估大型语言模型对对抗性提示的鲁棒性
摘要
对大型语言模型(LLMs)的日益依赖要求我们全面了解它们对提示的鲁棒性。在本文中,我们介绍了PromptRobust,一个旨在衡量LLMs对对抗性提示的弹性的鲁棒性基准测试。本研究使用了大量对抗性文本攻击,这些攻击针对提示的多个层面:字符、单词、句子和语义。这些对抗性提示被设计成模仿合理的用户错误,如错别字或同义词,旨在评估微小的偏差如何影响LLM的结果,同时保持语义完整性。然后,这些提示被用于各种任务,包括情感分析、自然语言推理、阅读理解、机器翻译和数学。我们生成了4,788个对抗性提示,并在超过8个任务和13个数据集上进行了评估。我们的发现表明,LLMs对对抗性提示并不鲁棒。此外,我们提供了全面的分析,以理解提示鲁棒性背后的神秘性及其可转移性。然后,我们提供了深入的分析和实用的建议,对于提示的组成,对研究人员和日常用户都有益。
1 引言
大型语言模型(LLMs)因其在各种任务中的前所未有的表现而越来越受欢迎,例如情感分析(Wang等人,2019年)、问答(Wang等人,2019年)、逻辑推理(Liu等人,2023年)等。LLM的输入是提示和(可选的)样本的串联,其中提示旨在指导LLM执行什么任务,样本是任务的数据。
鉴于LLMs的广泛采用,特别是在安全关键和决策领域,检查LLMs对输入扰动的鲁棒性变得至关重要。事实上,现有的工作(Wang等人,2021年;Nie等人,2020年;Wang等人,2023年b;Zhuo等人,2023年;Yang等人,2023年)已经从不同角度尝试评估LLMs的鲁棒性。例如,AdvGLUE(Wang等人,2021年)和ANLI(Nie等人,2020年)是两个公共数据集,用于评估语言模型对对抗性样本的鲁棒性,这些样本是经过仔细扰动的样本,以使语言模型产生错误的响应。在大型语言模型的时代,Wang等人(2023年b)评估了ChatGPT和其他LLMs对对抗性样本和分布外(OOD)样本的鲁棒性。Zhuo等人(2023年)评估了LLMs在特定任务——语义解析上的鲁棒性。
图1:LLMs对提示不鲁棒:错别字和同义词导致数学和情感分析问题中的错误。红色字符和单词是扰动。
这些研究表明,当前的LLMs对于一些流行的自然语言处理任务来说,对对抗性和分布外(OOD)样本并不鲁棒。通常使用单一的提示来指导LLM针对多个样本执行任务。例如,在数学问题中(如图1所示),可以使用提示针对多个样本(即,数学问题)。因此,一个受到干扰的提示可能会导致LLM对多个干净样本输出错误的响应。结果,一个受到干扰的提示可能对LLMs的影响比对抗性样本更大,因为后者只影响LLM对单一样本的响应。然而,尽管其核心重要性,LLMs对提示扰动的鲁棒性在很大程度上尚未被探索。
在本文中,我们的目标是通过引入PromptRobust来填补这一空白,PromptRobust是一个全面基准测试,旨在评估LLMs对提示扰动的鲁棒性,理解影响其鲁棒性的因素(或缺乏鲁棒性),并识别鲁棒提示的关键属性。我们考虑了各种提示扰动,包括1)轻微的错别字、同义词以及以相同语义意义表达句子的不同方式,这些在非对抗性设置中可能常见于普通用户或开发者在LLMs的日常使用中,以及2)攻击者在对抗性设置中策略性地制造的扰动。在术语上略有滥用,我们称这两种情况下受到干扰的提示为对抗性提示。图1显示了导致错误响应的带有错别字和同义词的对抗性提示的例子。
PromptRobust由提示、攻击、模型、任务、数据集和分析组成。具体来说,我们评估了4种类型的提示:零样本(ZS)、少样本(FS)、角色导向和任务导向提示。我们创建了4种类型的攻击(称为提示攻击),以制造对抗性提示:通过扩展原本设计用于生成对抗性样本的7种对抗性攻击(Li等人,2019;Gao等人,2018;Li等人,2020;Jin等人,2019;Naik等人,2018;Ribeiro等人,2020),我们进行了字符级、单词级、句子级和语义级攻击。我们注意到,尽管我们称它们为攻击,但它们生成的对抗性提示也作为测试平台,模仿真实LLM用户自然发生的多样化提示和潜在的扰动。PromptRobust涵盖了9种流行的LLMs,从较小的模型如Flan-T5-large(Chung等人,2022)到较大的模型如ChatGPT(OpenAI,2023a)和GPT-4(OpenAI,2023b)。此外,我们选择了8个任务进行评估,即情感分析(SST-2(Socher等人,2013))、语法正确性(CoLA(Warstadt等人,2018))、重复句子检测(QQP(Wang等人,2017)和MRPC(Dolan & Brockett,2005))、自然语言推理(MNLI(Williams等人,2018)、QNLI(Wang等人,2019)、RTE(Wang等人,2019)和WNLI(Levesque等人,2012))、多任务知识(MMLU(Hendrycks等人,2021))、阅读理解(SQuAD V2(Rajpurkar等人,2018))、翻译(UN Multi(Eisele & Chen,2010)和IWSLT 2017(Cettolo等人,2017))以及数学问题解决(Mathematics(Saxton等人,2019))。总共,我们创建了4,788个对抗性提示,代表多样化、实用和具有挑战性的场景。
我们使用PromptRobust进行了广泛的实验和分析。结果突出显示了当前LLMs普遍缺乏对对抗性提示的鲁棒性,单词级攻击证明最有效(所有任务平均性能下降39%)。我们通过探索LLMs在与干净和对抗性输入相关的错误响应中每个输入单词的注意力权重,深入探讨了这种脆弱性背后的原因,其中对抗性输入是对抗性提示和干净样本的串联。
我们的发现揭示了对抗性提示导致LLMs将注意力转向受到干扰的元素,从而产生错误的响应。我们还检查了对抗性提示在模型之间的可转移性,并建议成功地将一个LLM的对抗性提示转移到另一个LLM。此外,我们分析了词频模式,以指导未来在提高鲁棒性方面的研究,并帮助最终用户制定更鲁棒的提示。我们通过讨论提高鲁棒性的潜在策略来结束讨论。
总结来说,我们的贡献如下:
- 我们介绍了PromptRobust,这是第一个系统化的基准测试,用于评估、理解和分析LLMs对对抗性提示的鲁棒性。
- 我们对LLMs对对抗性提示的鲁棒性进行了全面的评估,并进行了广泛的分析,包括对观察到的漏洞的视觉解释、对抗性提示的可转移性分析,以及词频分析,为下游用户和提示工程师提供实用的指导,以制定更鲁棒的提示。
2 PromptRobust
2.1 提示和模型
我们研究了四种不同类型的提示。任务导向提示明确描述了模型需要执行的任务,这鼓励模型仅基于其预训练知识生成特定任务的输出。而角色导向提示通常将模型框架为具有特定角色的实体,例如专家、顾问或翻译。通过整合角色信息,这些提示旨在隐含地传达预期的输出格式和行为。这两类提示都可以为零样本(ZS)和少样本(FS)学习场景设计。在零样本场景中,输入定义为[ [P, x] ],其中P表示提示,x是样本,[ ]表示串联操作。对于少样本场景,一些示例被添加到输入中,结果形成了格式[ [P, E, x] ],其中E代表示例。例如,E = {[x1, y1], [x2, y2], [x3, y3]} 表示在三样本学习场景中的三个示例。
在我们的实验中,我们从任务的训练集中随机选择三个示例并将它们附加到提示上。附录A.1显示了不同类型的提示示例。
我们的评估包括了一系列多样化的LLMs,以全面评估它们在各种任务和领域中的表现。我们考虑的模型如下:Flan-T5-large (Chung等人,2022) (0.8B),Dolly-6B (Databricks,2023),Vicuna-13B (Chiang等人,2023),Llama2-13b-chat (Touvron等人,2023b),Cerebras-GPT-13B (Dey等人,2023),GPT-NEOX20B (Black等人,2022),Flan-UL2 (20B) (Brain,2023),ChatGPT (OpenAI,2023a),和GPT4 (OpenAI,2023b)。1 通过整合具有不同架构和大小的LLMs,我们旨在提供对它们的优势和劣势的见解,最终促进为特定应用或用例选择模型。这些LLMs的详细信息在附录B.1中。
2.2 攻击
给定一个单一样本x及其标签y,文本对抗性攻击的目标是找到一个扰动δ,使得LLM fθ产生错误的响应。形式上,δ是通过解决以下优化问题来找到的:[ \max_{\delta \in C} L[f_{\theta}(x + \delta); y] ],其中x + δ是对抗性样本,fθ(x + δ)是LLM在将对抗性样本单独作为输入时的响应,C表示对扰动δ的约束,L表示损失函数。
提示攻击。在本文中,我们的重点是攻击提示而不是样本。这是由于LLMs在不同应用中的普及,它们使用上下文学习对提示(即,指令)和样本生成响应。提示要么由用户输入,要么由系统或开发人员生成。此外,执行这种“攻击”的最终目的实际上并不是真正攻击模型,而是模拟在实际情况下可能自然发生的扰动。表8显示了由对抗性方法生成的多个提示,这些提示用于模仿可能的用户提示,这些是用户常犯的错误或表达。由于用户在输入提示时可能会犯不同的错误,例如错别字、不同的单词使用、不同的句子风格等,因此对提示鲁棒性的研究是必要的,以便了解LLMs。
我们将输入到LLMs的表示为[ [P, x] ],其中P是提示,x是样本,[ ]表示串联。请注意,在少样本学习场景中,一些示例被附加到提示上;在某些应用场景中,样本x是可选的。我们的提示攻击也可以扩展到这些场景,但我们为了简单起见使用符号[ [P, x] ]。
给定一个数据集D = {(xi, yi)}i∈[N],其中N个样本及其真实标签,提示攻击的目标是扰动P,使得LLM fθ为数据集D中的所有样本产生错误的响应。
定义2.1(提示攻击)。给定一个LLM fθ,一个数据集D = {(xi, yi)}i∈[N],和一个干净的提示P,提示攻击的目标可以表述如下:
[ \max_{\delta \in C} \sum_{(x,y) \in D} L[f_{\theta}([P + \delta, x]), y], \quad (1) ]
其中δ是添加到干净提示P的文本扰动,C是允许的扰动集,即扰动约束。我们注意到这种攻击类似于通用对抗性扰动(UAP)(Moosavi-Dezfooli等人,2017;Brown等人,2017)和通用对抗性触发器(UAT)(Wallace等人,2019),将这些概念扩展到提示领域。附录A.4显示了更多的比较。
不同的攻击。然后,我们修改现有的黑盒文本攻击以实现等式(1),因为它们的效率和不依赖于模型梯度。因此,开源和专有的LLMs都可以成为攻击目标。我们的实例跨越了四个不同的层次,捕捉了从简单的字符操作到复杂的语义变化的广泛复杂性。每种攻击的详细信息在附录A.3中。
-
字符级:我们使用TextBugger (Li等人,2019)和DeepWordBug (Gao等人,2018),通过引入错别字或单词错误来操作文本,例如,通过添加、删除、重复、替换和排列某些单词的字符。
-
单词级:我们使用BertAttack (Li等人,2020)和TextFooler (Jin等人,2019)用同义词或上下文相似的词替换单词,以欺骗LLMs。
-
句子级:我们实现StressTest (Naik等人,2018)和CheckList (Ribeiro等人,2020)在提示的末尾附加不相关或多余的句子,目的是分散LLMs的注意力。对于StressTest,我们采用与(Wang等人,2019)中相似的设置,在提示末尾附加“and true is true”,“and false is not true”,或“and true is true”五次。对于CheckList攻击,我们生成50个由字母和数字组成的随机序列,每个序列长度为10,并将此随机序列附加到提示的末尾。
-
语义级:我们通过选择6种常见语言(中文、法语、阿拉伯语、西班牙语、日语和韩语)并为每种语言的数据集构建10个提示来模拟不同国家人的语言行为。然后这些提示被翻译成英语,引入可能影响LLMs的语言细微差别和变化。
对抗性提示的语义保留。
对抗性提示是否现实?我们的目的是模拟合理的用户错误;因此,这些提示保留语义完整性至关重要,确保它们对人类理解是可接受和不可察觉的。
保持我们对抗性设计提示的连贯性和现实性至关重要。我们在附录A.2中的人类研究表明,至少85%的受试者认为生成的提示是可接受的。
2.3 任务和数据集
目前,PromptRobust支持从情感分析到数学推理的8个任务和13个数据集。由于空间限制,我们把数据集的详细信息留在附录B.2中。
表 1:本文中使用的数据集统计数据。
3 实验
设置。生成对抗性提示的广泛计算需求需要平均在整个数据集上迭代100次。因此,使用LLMs评估整个数据集是不可行的。为了缓解计算限制并保持公平的研究过程,我们采用了一种抽样策略,即从不同数据集的验证集或测试集中选择一部分样本。每个数据集和任务的统计数据总结在表 1 中。2 抽样细节在附录 C 中。
我们最初评估了所有LLMs在没有提示攻击时的性能,以提供性能基线。我们发现某些LLMs即使在干净的提示下也无法展示令人满意的性能,我们将选择范围缩小到6个LLMs:Flan-T5-large、Vicuna-13B、Llama2-13B-chat、UL2、ChatGPT 和 GPT-4。关于所有LLMs在干净提示下性能的更多细节和讨论可在附录 C.2 中找到。我们为角色导向和任务导向类别分别生成了10个不同的提示。每个提示都可以用三个示例增强,形成少样本提示。总的来说,每个数据集上每个LLM有40个提示。为了更好的效率和性能,我们选择每种类型的前3个最佳表现的提示来执行提示攻击。结果,我们评估了9个LLMs在13个数据集上的对抗性漏洞,涵盖了总共4,788个提示3及其各自的对抗性对应物。这种全面评估使我们能够深入了解LLMs在广泛的情境和提示风格中的鲁棒性和性能。
表 2:不同攻击在不同数据集上的APDR和标准偏差。
表 3:不同LLMs上的APDR。
表 4:不同提示上的APDR。
评估指标。考虑到不同任务的评估指标多样,以及不同模型和数据集的基线性能不同,绝对性能下降可能无法提供有意义的比较。因此,我们引入了一个统一的指标,性能下降率(PDR)。PDR量化了提示攻击后的相对性能下降,提供了一个在不同攻击、数据集和模型之间进行比较的上下文归一化度量。PDR由下式给出:[ \text{PDR}(A, P, f_{\theta}, D) = 1 - \frac{\sum_{(x;y) \in D} M[f_{\theta}([A§,x]),y]}{\sum_{(x;y) \in D} M[f_{\theta}([P,x]),y]} ],其中A是应用于提示P的对抗性攻击,M[·]是评估函数:对于分类任务,M[·]是指示函数 (1[y^{\wedge}, y]),当 (y^{\wedge} = y) 时等于1,否则为0;对于阅读理解任务,M[·]是F1分数;对于翻译任务,M[·]是Bleu指标(Papineni等人,2002)。注意,一个负的PDR意味着对抗性提示可以提高性能。
4 结果和分析
4.1 跨攻击、模型和提示的结果
我们报告并讨论了不同攻击、LLMs和提示的平均性能下降率(APDR)。我们的主要结果基于所有提示,其结论与附录 C.4 一致,在那里我们展示了排除不可接受的对抗性提示的结果。注意,尽管我们的语义保留研究表明至少85%的对抗性提示是可以接受的,但仍有一些对抗性提示偏离了它们的预期语义含义。此外,注意APDR方差值的差异是由于不同攻击、提示、模型和数据集的PDR值不同所致。
攻击分析。表 2 总结了7种攻击在13个数据集上的APDR,计算公式为 ( \text{APDRA}(A, D) = \frac{1}{|P|} \sum_{P \in P} \sum_{f_{\theta} \in F} \text{PDR}(A, P, f_{\theta}, D) ),其中P是4种提示的集合,F是所有模型的集合。结果提供了几个关键见解。首先,攻击效果高度可变,单词级攻击证明是最有力的,导致所有数据集上平均性能下降33%。字符级攻击排名第二,在大多数数据集上引起20%的性能下降。值得注意的是,语义级攻击表现出与字符级攻击几乎相当的效力,强调了细微语言变化对LLMs性能的深远影响。相反,句子级攻击的威胁较小,表明在这一级别的对抗性干预效果减弱。此外,提示攻击的效果因不同数据集而异。例如,StressTest攻击在SQUAD V2上仅导致2%的性能下降,而在MRPC上造成了25%的下降。此外,我们观察到StressTest攻击在某些数据集上反常地增强了模型的性能,我们在附录 D.3 中深入探讨了这一现象。
请注意,虽然字符级攻击可以通过语法检测工具检测到,但单词级和语义级攻击强调了对LLMs进行鲁棒的语义理解以及准确呈现/翻译任务的重要性。对这些细微差别的全面理解将有助于更深入地理解对LLMs的对抗性攻击。
LLMs分析。表 3 总结了9个LLMs在13个数据集上的APDR,计算公式为 ( \text{APDR}{f{\theta}}(f_{\theta}, D) = \frac{1}{|A|} \frac{1}{|P|} \sum_{A \in A} \sum_{P \in P} \text{PDR}(A, P, f_{\theta}, D) ),其中P是4种提示的集合,A是7种攻击的集合。我们的分析显示,GPT-4和UL2在鲁棒性方面显著优于其他模型,其次是T5-large、ChatGPT和Llama2,Vicuna显示出最差的鲁棒性。UL2、T5-large和ChatGPT对对抗性提示的鲁棒性在不同数据集上有所不同,UL2和T5-large在情感分类(SST-2)、大多数NLI任务和阅读理解(SQuAD V2)上显示出较少的脆弱性。具体来说,UL2在翻译任务上表现出色,而ChatGPT在某些NLI任务上显示出鲁棒性。然而,Vicuna在所有任务上都表现出一贯的高易感性。可以看出,面对由ChatGPT生成的相同对抗性提示,GPT-4在所有任务上展现出更好的鲁棒性。然而,必须意识到这种观察到的鲁棒性可能归因于专门为ChatGPT制作的对抗性提示的弱可转移性。在未来,GPT-4和ChatGPT的性能可能会提高,因为这些专有模型在不断发展。
模型与攻击。我们在表 10 中展示了模型和攻击之间的关系。通常,单词级攻击是最有力的,BertAttack在所有模型中始终优于其他攻击。然而,其他攻击的有效性并没有明显的模式。例如,尽管TextBugger对于某些模型(如Llama2和ChatGPT)比DeepWordBug更有效,但对于T5-large来说情况正好相反。值得注意的是,Vicuna和Llama2对句子级攻击特别脆弱,与此相反,像T5-large和ChatGPT这样的模型基本上不受影响。这样的观察可能暗示了特定于基于Llama的模型的固有漏洞。
提示类型分析。表 4 总结了13个数据集上4种提示类型的APDR,计算公式为 ( \text{APDR}{t}(D) = \frac{1}{|A|} \frac{1}{|P{t}|} \frac{1}{|F|} \sum_{A \in A} \sum_{P \in P_{t}} \sum_{f_{\theta} \in F} \text{PDR}(A, P, f_{\theta}, D) ),其中 ( P_{t} ) 是特定类型t的提示集合,A是7种攻击的集合,F是所有模型的集合。在我们的分析中,少样本提示在所有数据集上与零样本提示相比始终展现出更好的鲁棒性。此外,尽管任务导向提示在整体鲁棒性上略胜于角色导向提示,但两者在不同数据集和任务上表现出不同的优势。例如,角色导向提示在SST-2和QQP数据集中表现出增加的鲁棒性,而任务导向提示在MRPC、QNLI、SQuAD V2和IWSLT数据集中更为坚韧。对提示类型对模型脆弱性的不同影响的洞察可以指导更好的提示设计和调整策略,增强LLMs对对抗性提示攻击的鲁棒性。
表 5:注意力可视化,这些样本通过干净提示被正确分类,但被对抗性提示误分类。对于每种攻击,上面是带有样本文本的干净提示,下面是带有相同样本文本的相应对抗性提示。N=Negative(负面),P=Positive(正面),N/A意味着响应不可用。绿色和红色分别表示正确和错误的答案。颜色强度表示不同的注意力权重(颜色越深表示权重越大)。
表 6:几个LLMs的可转移性APDR
4.2 关于模型大小、微调和对抗性输入的结果
模型大小和微调。我们使用Llama2系列(7B、13B和70B)分析了不同模型大小的性能。我们在附录C.3中的结果表明,较大的模型通常比较小的模型更鲁棒,但当较小的模型胜过较大的模型时也会出现例外,这是一个有趣的发现,可以激发未来的研究。我们还评估了使用普通Llama2和Llama2-chat模型的微调影响,如附录C.3所示,表明微调模型通常在对抗性提示上表现更好。
同时攻击提示和样本。我们在AdvGLUE(Wang等人,2021)上同时攻击了提示并进行了测试,其中包含对抗性样本。我们在表11中的结果表明,同时攻击两者会表现得更糟。然而,一些有趣的事情发生了,因为有时同时攻击两者可以增强性能,这需要进一步的努力。
4.3 理解LLMs对对抗性提示的脆弱性
我们研究了对抗性提示背后的魔力,以分析为什么它们会导致LLMs从不同方面出现错误:注意力可视化、错误响应分析(附录D.1)和句子级分析(附录D.3)。
我们可视化了注意力,以调查对抗性提示对LLMs在输入单词上的焦点的影响。具体来说,我们提出了两种注意力可视化技术:1)基于梯度的注意力,它根据梯度范数为每个单词分配注意力分数;2)基于删除的注意力,它通过检查删除单词时损失的绝对变化为每个单词分配注意力分数。这些方法的细节可以在附录D.2中找到。这两种技术产生了相似的结果;因此,为了简单起见,我们关注基于梯度的注意力方法的结果。我们在表5中展示的关键发现如下:
- 干净提示:高效的注意力分配。LLMs主要集中在干净提示中的关键术语上,有助于准确分类。例如,在表5中BertAttack的干净提示,LLMs主要将注意力集中在术语‘lazy’上,正确推断出‘Negative’情绪。
- 对抗性提示:注意力转移。对抗性提示可以将LLMs的注意力从文本的重要部分转移开,导致误分类。在一些攻击如CheckList和StressTest中,模型同时集中在目标文本和对抗性内容上,增加了对对抗性扰动的敏感性。例如,在CheckList攻击中引入随机序列‘LKF0FZxMZ4’会使模型分心,减少了对关键单词‘good’进行准确分类的注意力。在其他攻击中,如BertAttack和DeepWordBug,模型的注意力完全从需要分类的文本转移到对抗性提示上,导致注意力发生了显著的转移。例如,在DeepWordBug攻击中,特定单词的错别字将模型的注意力从‘awful’转移到了更改后的单词‘Qetermine’上。
4.4 对抗性提示的可转移性
表6显示了在几个LLMs之间转移对抗性提示的各种攻击的有效性。对于每个数据集和提示类型,我们选择了源模型(例如,ChatGPT)生成的最脆弱的提示。然后,这些提示被用来对目标模型(例如,T5-large)发起转移攻击。这些转移攻击的影响通过计算 ( APDR_{\text{transfer}}(A, f_{\text{target}\theta}) = \frac{1}{|P_{\text{source}}|} \frac{1}{|D|} \sum_{P \in P_{\text{source}}} \sum_{D \in D} \text{PDR}(A, P, f_{\text{target}\theta}, D) ) 来量化,其中 (f_{\text{target}\theta}) 是目标模型,(P_{\text{source}}) 是从源模型选择的提示,D是所有数据集的集合。
总的来说,我们观察到对抗性提示表现出一定程度的可转移性。然而,与表2和3相比,它是边缘的。具体来说,目标模型中由源模型的对抗性提示导致的APDR与源模型的原始APDR相比是小的。此外,标准差倾向于大于APDR,表明可转移性是不一致的。一些对抗性提示可以成功转移,导致性能下降,而其他提示可能会意外地提高目标模型的性能。一个典型的例子是BertAttack从UL2转移到Vicuna,结果是-0.70(3.18)值,表明当Vicuna受到这些对抗性提示时,其性能出现了意想不到的提升。这些现象说明了不同模型的复杂鲁棒性特征。与T5-large和UL2相比,对ChatGPT的可转移性更好。这表明可以通过在像T5-large这样的小型模型上训练来生成对抗性提示,以攻击像ChatGPT这样的黑盒模型,这可以用于未来的鲁棒性研究。
4.5 哪些提示更鲁棒?词频
这两个数据集的词频结果在附录E中呈现。我们的发现强调,提示的弹性与词语的上下文使用密切相关,而不仅仅是某些术语的存在。这种复杂性表明,除了词频之外,如语义一致性和句法结构等因素可能在决定鲁棒性方面起重要作用。这些知识很有价值,因为它可以影响LLMs鲁棒性的未来研究,为制定更有抵抗力的提示提供指导,并促进防御对抗性提示攻击的机制的创建。必须强调的是,我们的观察是基于当前模型和数据集的范围。此外,词语的鲁棒性或脆弱性仍然严重依赖于上下文。
因此,不考虑更广泛上下文直接确定词的鲁棒性可能会导致过于简化或不准确的结论。
4.6 反制措施和防御
我们讨论了可能的反制措施。1)输入预处理:一种方法涉及直接检测和解决潜在的对抗者,例如检测错别字、不相关序列,并增强提示的清晰度和简洁性。2)在预训练中纳入低质量数据:低质量数据可以作为潜在的对抗者,在预训练期间明确包括低质量数据可能有助于更好地理解多样化的输入,并对对抗者建立弹性。3)改进的微调:微调可以带来改进的鲁棒性。正如我们之前演示的,像T5和UL2这样的模型与ChatGPT相比表现出更大的鲁棒性,表明大规模监督微调的潜在好处。更多细节在附录F中。
5 相关工作
LLM鲁棒性评估。AdvGLUE(Wang等人,2021)是一个静态数据集,用于评估输入样本的对抗性鲁棒性。DecodingTrust(Wang等人,2023a)对GPT模型的可信度进行了全面评估,特别是GPT3.5和GPT-4。该研究深入探讨了诸如毒性、刻板印象偏见、对抗性挑战和隐私等领域。具体来说,他们在标准数据集AdvGLUE(Wang等人,2021)和AdvGLUE++(Wang等人,2023a)上评估了鲁棒性。特别是针对对抗性鲁棒性,DecodingTrust也专注于评估输入样本的鲁棒性,而不是提示,并且它仍然使用静态数据集而不是可行的基准测试套件。相比之下,PromptRobust定位为一个开放的基准测试,专注于对抗性提示而非样本(它可以扩展以包括样本)。请注意,提示是协助LLMs进行上下文学习以执行特定任务的一般指令,并且它们可以与某些任务中的许多样本结合使用。在人与LLMs的交互中,提示是不可或缺的,而输入样本可能不需要,这意味着提示是多才多艺的,评估它们的鲁棒性至关重要。
LLMs的安全性。我们通过创建对抗性提示来模仿潜在的用户提示,但主要目的不是实际攻击模型。这将我们的工作与现有的LLMs安全研究工作区分开来。具体来说,SafetyPrompts(Sun等人,2023)和提示注入攻击(Perez & Ribeiro,2022;Greshake等人,2023;Liu等人,2023b)旨在突出可能有害的指令,这些指令可能会导致LLMs产生与人类价值观不一致的输出或执行数据泄露和未经授权的访问等非预期行为。对抗性提示被制造出来模仿最终用户可能无意中犯下的合理错误。我们的目标是评估这些提示在多大程度上,即使它们稍微偏离常规,也可能导致LLMs结果的偏差。这些对抗性提示保持了它们的语义完整性,确保它们对人类几乎不可察觉。对抗性提示不是为了引发有害或误导性的反应而设计的。
6 结论和局限性
LLMs中提示的鲁棒性在安全性和人机交互中至关重要。在本文中,我们使用提出的PromptRobust基准测试彻底评估了LLMs对对抗性提示的鲁棒性。关键是利用对抗性攻击方法来模仿潜在的扰动,如错别字、同义词和风格差异。然后我们在各种任务和模型上进行了广泛的实验和分析。虽然结果表明当前的LLMs对对抗性提示不够鲁棒,但我们进一步使用注意力可视化分析了背后的原因。此外,我们分析了常用词汇,为专家和非专家提供指导,以开发更好的提示工程工具。PromptRobust将开源,作为鲁棒LLMs研究的基础工具。
存在几个局限性。首先,由于计算量大,我们没有在完整数据集上执行评估,而是依赖于抽样。未来的研究可能在完整数据集上进行评估,以获得更多见解。其次,由于计算限制,我们不能包括所有LLMs和数据集。将来包括更多可以提供更多样化的视角。第三,我们没有评估更高级的提示工程技术,如思维链(CoT)(Wei等人,2022)和思维树(ToT)(Yao等人,2023)。我们相信可以在最新的提示工程技术上进行更多评估。第四,我们考虑了黑盒提示攻击,它可以产生可以模仿自然发生的错误的扰动。优化的白盒提示攻击可能产生更好的对抗性提示,这是一个有趣的未来工作。