查看原文
其他

语言模型安全评估新标杆:SALAD-Bench全面安全评估新基准

让你更懂AI的 PaperWeekly
2024-08-23


随着大语言模型在现实场景中逐渐落地(例如 ChatGPT 和 Gemini),其生成内容的安全性也开始逐渐被大众关注。通常来讲,我们希望大模型避免生成包含危险内容的回复,从而减少对用户的不良影响,因此评测一个大模型的安全性并分析其弱点成为了一件急需完成的事情。


上海人工智能实验室研究团队提出了新的大模型安全 Benchmark SALAD-Bench。相比以往的 Benchmarks,SALAD-Bench 有以下优势:


1. 包含三个层次结构,数量超 2 万条的大规模分类数据集;


2. 通过攻击方法的增强,其测试数据相比以往数据提升了难度与复杂度;


3. 提供了稳定可复现且高效的评估模型 MD-Judge;


4. 可同时用来评测大模型的安全性以及相应攻击、防御方法的安全性能。


SALAD-Bench 的出现促进了大语言模型安全性研究的深入,为未来大语言模型的安全应用奠定了坚实的基础。

论文地址:
https://arxiv.org/abs/2402.05044

项目主页:

https://adwardlee.github.io/salad_bench/

代码&数据地址:

https://github.com/OpenSafetyLab/SALAD-BENCH

MD-Judge:

https://huggingface.co/OpenSafetyLab/MD-Judge-v0.1


当前问题及痛点

随着大语言模型的生成能力越来越强,其安全性逐渐开始被大众重视。安全 benchmark 逐步提出,针对大模型的安全性进行评测。但早期的 benchmark 通常存在如下几个问题:

多数 benchmark 只关注到特定种类的安全威胁(例如只关注危险指令或者只关注不当言论)而不能覆盖一个范围更广且可以导致LLM输出危险内容的分类系统。 


早期 benchmark 中的危险问题和指令可以被现代的 LLM 有效防御(防御成功率接近 99%),而更有挑战的危险问题或包含了更新的攻击形式的危险问题并没有包含进来,从而使得当前的 benchmark 不易有效评估 LLMs 在当下的安全性。 


当前的 benchmark 通常需要依赖比较耗时的人工评测或比较昂贵的基于 GPT 的评测,全新的大规模安全数据集需要一种精度较高且成本更低的评测方式以满足大规模评测的需求。 


现有数据集的功能性有限,通常只用来评测 LLMs 的安全性或只用来评测攻击与防御算法的性能,我们需要一个构造一个通用的数据集以满足上述全部需求。



SALAD-Bench解决方案 

提出了 SALAD-Bench: SAfety benchmark for LLMs, Attack and Defense approaches.


与其他数据集相比的优势如下表所示:

▲ SALAD-Bench 与以往的大模型安全数据集进行比较。SALAD-Bench 在题目类型、多维度评测、层次结构分类、用途与评测工具上均有优势。
  • 覆盖安全威胁类别广泛的三级类别大规模层次分类结构。

  • 通过问题增强过程提升了 benchmark 的难度与复杂度,同时支持基础问题集,攻击防御方法增强子集和引入新题型的多项选择题子集。

  • 利用 LLMs 的指令跟随(instruction following)能力提供了稳定可复现且高效的评估方法与评估指标。

  • 可同时用来评测大模型的安全性以及相应攻击防御方法的性能。

SALAD-Bench 的增强流程与评测流程示意图如下图所示。

2.1 创新分类

SALAD-Bench 引入了一个具有三个级别的结构化层次结构,分别包含 6 个领域级别分类、16 个任务级别分类和 65 个具体的安全威胁类别。这种结构化层次结构确保了 SALAD-Bench 能够在安全评测方面进行深入的评估,不仅关注 LLMs 的整体安全性,还关注具体的安全维度,较高的总体安全率并不会掩盖对可能存在风险的任务和类别的识别。我们的基准测试的完整层次结构如上图所示。


完整的多级层次结构类别与包含的样本数量如下表所示。

研究者希望基于上述层次结构分类高效地构造 SALAD-Bench。下面介绍数据集的构造过程。


数据集构造


1. 样本收集。SALAD-Bench 的基础集(base set)测试样本包含两个来源。第一部分为来自公开数据集的测试样本,我们从多个早期安全数据集中收集了一部分真实的危险问题。第二部分为通过 LLM 生成的数据。由于现代的 LLMs 通常会通过安全对齐策略进行微调减少危险内容输出,因此研究者引入了约 500 条危险问题用来微调一个 GPT-3.5,从而使微调后的 LLM 可以根据输入的类别构造一些典型的危险问题。本阶段所使用的 prompt 如下所示。

2. 样本去重与筛选。第一步收集的问题通常包含两个缺陷,一是会包含重复或高度相似的样本,二是可能会包含危险程度较低的内容。为了解决第一个问题,SALAD-Bench 利用 Sentence-BERT 和 LSH 算法对样本的特征向量进行去重处理,从而保留多样程度较高的问题。为了解决第二个问题,SALAD-Bench 利用 Dai 等人提出的度量安全性的奖励模型(reward model)为去重后的样本进行打分,保留所有高于特定阈值的样本,从而完成样本筛选过程。


3. 样本自动标注。最后,为了将收集到的样本规划到特定的安全威胁类别,研究者引入了三个不同的开源 LLMs(Mixtral-8x7B-Instruct, Mistral-7B-Instruct 和 TuluV2-dpo-70B),使用一个预定义的提示词(prompt)引导三个 LLMs 为所有输入问题进行分类,然后进行投票操作获得最终类别。所使用的 prompt 如下所示。

最终 SALAD-Bench 的 base set 数据分布如下所示。

2.2 增强难度

SALAD-Bench 的基础集(base set)可以做到在广泛的安全威胁分类上都有足量的测试样本覆盖,但上述测试样本通常并不包含相应的攻击与防御方法。同时,仅通过问答对来进行模型安全性评测比较单一,需要引入不同的题型对模型安全性进行额外的分析。

攻击增强子集(Attack-enhanced subset)

为了有效提升 base set 中问题的难度,从而有效评估 LLMs 的安全性以及防御方法的有效性,SALAD-Bench 利用攻击方法对基础问题进行增强,构造出了攻击增强集(attack-enhanced subset)。其构造过程分为如下步骤:1)使用候选的 LLMs 对 base 集问题生成对应的回复(responses);2)通过关键词筛选出拒答率较高的问题;3)给定筛选出的问题,使用候选攻击方法构造新问题;4)用我们提出的 MD-Judge 评测工具(后文将介绍该部分)筛选出最终的攻击增强集(attack-enhanced subset)。

防御增强子集(Defense-enhanced subset)

为了能够有效评测攻击算法的性能,SALAD-Bench 需要筛选出拒答率较高的问题,并通过防御方法进一步增广问题构造出防御增强集(defense-enhanced subset),从而降低所有攻击方法的攻击成功率,避免成功率过高不易判断性能优劣的情况。防御增强集(Defense-enhanced subset)的构造过程分为如下步骤:1)使用候选的 LLMs 对 base 集问题生成 responses;2)通过关键词筛选出拒答率较高的问题;3)给定筛选出的问题,使用候选攻击方法构造新问题,保留攻击成功率最低的多个问题;4)用防御方法增强保留的问题,构造出最终的防御增强集(defense-enhanced subset)。

多选题子集(Multiple-choice Question subset)

SALAD-Bench 额外引入了多项选择题(MCQ),可以在验证 LLMs 安全性的同时,验证在安全对齐微调后 LLMs 的可用性。基于 base set 构造 MCQ subset 的过程如下:1)对每个问题,生成多个安全回答与多个危险回答;2)随机选取每道题包含安全回答和不安全回答的数量(均包含至少一个),构成选择题的选项;3)对于每个问题,以选择安全选项和选择危险选项为题目,设计相应的 prompt,构造输入问题。所使用的 prompt 将在下一节给出。构造多项选择题时,SALAD-Bench 要求对每一个安全威胁类别采样相同数量(30个)的危险问题,因此 MCQ subset 也保证了数据集的多样性和均衡性。

2.3 创新评测工具(Evaluator)

为了能够设计高效准确且成本可控的评估算法,研究者尝试充分利用 LLMs 的指令跟随(instruction following)能力,设计了两个评测工具以完成 SALAD-Bench 的评测。


第一个是 MD-Judge 评估工具,该工具受 LlamaGuard 启发,是一个基于 Mistral-7B-Instruct 的评估网络,用来对问答对进行是否安全的评价。该模型在包含基础的危险问答对和使用攻击算法增强的危险问答对的数据集上进行微调,训练数据根据我们的分类法进行标记,从而能够在 SALAD-Bench 预设的分类层次结构上表现良好。下图为 MD-Judge 使用的 Prompt,该prompt 包含五个部分,分别是任务定义、分类定义、待测模型返回的问答对、输出格式和输出分类结果。

第二个是 MCQ-Judge 评测工具,该工具利用待测 LLMs 本身的 instruction following 能力,要求模型将多项选择题的回答根据特定的格式(例如<ans>selections<eoa>)进行输出,这样在不依赖 GPT-4 等 LLMs 做解析的条件下,通过正则表达式即可抽取多选题回答,从而计算多选题准确率。MCQ-Judge 使用的 prompt 如下所示。



当前在不同测试子集上的结果

评估模型列表

在本阶段实验中,SALAD-Bench 选取多种黑盒与开源大语言模型进行评测,用于评测的 LLMs 如下所示。未来 SALAD-Bench 也将对各种新发布的 LLMs 及相应的攻击防御方法进行评测。

评估结果

1.LLM 安全率评估(on base set and attack-enhanced subset):


Claude 获得了最高的安全率。LLM 在基础集 base set 和攻击增强集 attack-enhanced subset 上整体安全率结果如下表:

Base set(task-level per-class)结果:


多数模型在 Unfair representation 与 Propagating miscronceptions/false beliefs 任务相关问题上回复较为安全。

Multiple-choice subset结果:


多选题测试 LLM 安全,评测指标包含整体准确率(Acc-O)和有效准确率(Acc-V),其中 Acc-O 表示将拒答问题视为错误回答的准确率,Acc-V 表示去掉拒答问题后剩余问题的准确率。GPT-4、Qwen 和 Tulu 准确率较高且拒答率很低,其余模型均面临拒答率过高或有效准确率有限的问题。这表明当前多数 LLMs 在保证安全性的同时维持同等甚至获得更优的功能可靠性的方面还需要进一步的发展。

2. 评估攻击方法


评估攻击方法时,使用的指标是 attack success rate(对攻击方法该指标越高越有效)。人工构造的 jailbreak prompts 攻击成功率最高,GPTFuzzer 攻击方法次之。此外 defense-enhanced subset 能够有效降低各种攻击方法的成功率,从而能够为新攻击方法的设计留出更多探索空间。

3. 评估防御方法


评估防御方法 ,使用的指标同样是 attack success rate(对防御方法该指标越低防御的越好)。研究者发现 GPT paraphrasing 与 self-reminder prompt 两种防御方式效果最好。



总结与未来展望

大语言模型及其扩展模型拥有强大的生成能力和广阔的应用前景,因此其安全性也逐渐被重视起来,成为大模型落地前的关键保障。


SALAD-Bench 的开发团队希望以 SALAD-Bench 为基础,构造一个通用的基础模型安全性与可信性的评测体系,并扩展成一个可信人工智能的数据整理、训练与测试平台,并将向社区开源包括数据准备、模型微调、性能评测所有相关数据。因此下一步,SALAD-Bench 将逐步扩展出针对多模态大模型的评测数据集,以及提升多模态基础模型安全性同时不损失可用性的高效微调算法。


参考文献

[1] Li, L., Dong, B., Wang, R., Hu, X., Zuo, W., Lin, D., ... & Shao, J. (2024). SALAD-Bench: A Hierarchical and Comprehensive Safety Benchmark for Large Language Models. arXiv preprint arXiv:2402.05044.

[2] Dai, J., Pan, X., Sun, R., Ji, J., Xu, X., Liu, M., ... & Yang, Y. (2023). Safe rlhf: Safe reinforcement learning from human feedback. arXiv preprint arXiv:2310.12773.

[3] Inan, H., Upasani, K., Chi, J., Rungta, R., Iyer, K., Mao, Y., ... & Khabsa, M. (2023). Llama guard: Llm-based input-output safeguard for human-ai conversations. arXiv preprint arXiv:2312.06674.




更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


·
·
·

继续滑动看下一个
PaperWeekly
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存