浙江大学等单位提出SafetyLock方法以增强微调大语言模型的安全性

1 引言

大语言模型(LLMs)在各个领域的应用日益广泛,展现出强大的潜力。然而,随着其能力的提升,模型在处理有害查询时所带来的安全风险也愈发显著。研究者们为此开发了多种后训练对齐方法,旨在确保LLMs生成有益、诚实且无害的响应。这些方法包括对模型进行后训练调整、知识编辑以及向推理过程中添加额外的提示或检测器等。然而,现有的安全对齐措施在微调过程中往往无法有效降低安全风险。

近期的研究表明,微调模型时,即使使用少量的恶意训练示例,也可能导致模型的安全对齐被破坏。例如,研究发现,仅通过对GPT-3.5 Turbo进行微调,使用10个恶意示例就能轻易绕过其安全防护。这一发现突显了当前安全基础设施在应对微调后模型所引入的新安全风险方面的不足。因此,如何在微调后保持模型的安全性成为了一个亟待解决的研究问题。

现有的安全对齐技术主要可以分为三种主流方法:第一种是后训练方法,通过使用对齐数据对模型进行再训练,尽管这种方法有效,但计算成本高且耗时;第二种是模型编辑方法,旨在修改模型的特定部分以防止有害输出,但往往会降低模型的整体性能;第三种方法是在推理过程中添加额外的提示或检测器,以避免生成不安全的内容,但这些方法容易受到对抗性攻击的影响。

在此背景下,研究者们提出了一个关键的研究问题:如何在如此大规模的微调模型中定位与安全相关的注意力头,并有效获取微调大语言模型(LLMs)的安全向量,而不对其他通用任务造成负面影响?为了解决这一问题,本文提出了SafetyLock,这是一种新颖的方法,旨在在保持生成质量的同时,增强模型的安全性。通过对现有方法的进一步优化,SafetyLock在微调后的模型中实现了精确的安全对齐,确保了模型在处理有害查询时的安全性。

2 相关工作

在大语言模型(LLMs)的研究中,模型的对齐方法逐渐成为一个重要的研究方向。随着这些模型在各个领域的应用日益广泛,其潜在的安全风险也引起了研究者的高度关注。现有的安全对齐方法主要集中在确保模型生成的内容是有益的、无害的和诚实的。然而,研究表明,现有的安全对齐措施在微调后往往无法有效维持模型的安全性。

大语言模型的对齐方法

大语言模型的对齐方法可以分为几种主要类型,包括指令调优、强化学习与人类反馈(RLHF)等。这些方法旨在通过对模型进行再训练或调整,使其能够拒绝有害的指令。然而,研究发现,即使是经过良好对齐的模型,在进行微调后,其安全性也可能受到显著影响。例如,Qi等(2023b)指出,仅使用10个恶意示例就足以破坏GPT-3.5 Turbo的安全对齐。这一发现突显了当前安全对齐策略的脆弱性,尤其是在微调过程中。

安全防护措施的局限性

现有的安全防护措施主要包括后处理技术和模型编辑方法。后处理技术如使用RLHF进行安全对齐,虽然在一定程度上能够缓解安全风险,但在微调后往往无法保持其有效性。模型编辑方法则试图通过修改模型的特定部分来防止有害输出,但这类方法通常会导致模型整体性能的下降,影响生成的合理性和推理能力。此外,添加额外的提示或检测器以避免不安全内容的生成,虽然在一定程度上有效,但也容易受到对抗性攻击的影响。

微调后模型安全性的关注

随着微调技术的普及,研究者们开始关注如何在微调后保持模型的安全性。当前的研究表明,微调后的模型在面对恶意输入时,可能会表现出更高的脆弱性。因此,开发更为稳健的对齐技术,以应对微调过程中引入的参数变化,成为了一个亟待解决的挑战。

综上所述,尽管现有的对齐方法在一定程度上能够提高模型的安全性,但在微调后仍存在显著的安全风险。这一现状促使研究者们探索新的方法,以确保在微调过程中,模型的安全性能够得到有效维护。

3 方法:SafetyLock

在本节中,论文详细介绍了SafetyLock的设计与实现,强调其在微调模型中的有效性和高效性。SafetyLock的核心思想是通过构建和分发Meta-SafetyLock来增强大语言模型(LLMs)的安全性,确保在微调后仍能保持其安全性能。

3.1 SafetyLock的构建

SafetyLock的构建过程包括两个主要阶段:制造Meta-SafetyLock和分发SafetyLock。研究发现,微调后的语言模型与其原始模型在安全偏好方面的激活表示和干预方向具有显著相似性。这一发现使得从原始语言模型中提取安全偏向方向(Meta-SafetyLock)成为可能。

3.1.1 安全特征在Transformer中的实现

Transformer模型由多层多头注意力机制(MHA)和多层感知器组成。在推理过程中,输入的token被处理为高维嵌入,并通过每一层进行传递。MHA机制的数学表达式如下:

xl+1=xl+h=1HQlh<!swig0>lh(Plhxl),{x_{l+1}}={x_{l}}+\sum_{h=1}^{H}{Q_{l}^{h}}\,\mathrm_{l}^{h}({P_{l}^{h}}{x_{l}}),

其中,xlx_{l}表示第ll层的激活值,HH是维度的数量。通过在残差流中添加偏好向量,SafetyLock能够在推理过程中引入安全性干预。

3.2 构建Meta-SafetyLock

安全方向被建模为模型内部头部的向量。使用包含安全和不安全响应对的偏好样式安全数据集,提取每个注意力头在前向计算过程中的激活值。为每个头部训练一个二元分类器,使用逻辑回归模型:

P(y=1xth)=(1+exp((wthxth+bth)))1P(y=1|\mathbf{x}_{t}^{h})=(1+\exp(-(\mathbf{w}_{t}^{h}\cdot\mathbf{x}_{t}^{h}+b_{t}^{h})))^{-1}

通过在保留的验证集上对分类器的准确性进行排名,识别出与安全相关信息最敏感的注意力头。经过实验证明,选择K=24K=24的头部对于Llama-3-8B模型和K=48K=48对于Llama-3-70B模型能够在安全性能和通用性能之间达到最佳平衡。

对于每个选择的Top KK头部,计算安全方向θlh\pmb{\theta}_{l}^{h},表示安全和不安全响应之间的激活值均值差异:

θlh=1Nri=1Nj=1r(xl,hsafe,i,jxl,hunsafe,i,j)\pmb{\theta}_{l}^{h}=\frac{1}{N r}\sum_{i=1}^{N}\sum_{j=1}^{r}(\mathbf{x}_{l,h}^{\mathrm{safe},i,j}-\mathbf{x}_{l,h}^{\mathrm{unsafe},i,j})

这些安全向量θlh\theta_{l}^{h}与其在模型中的对应位置一起构成Meta-SafetyLock,可以在文本生成过程中增强模型的安全性。

3.3 SafetyLock对微调的鲁棒性

研究者们对原始Llama-3-Instruct 8B模型及其经过不同风险级别微调的变体中的安全方向进行了分析。以第31层的第26个头部为例,观察到安全(蓝色)和不安全(橙色)响应的激活值在原始模型和微调模型中呈现出明显的聚类。图2展示了这一现象,黑色箭头指示了从不安全到安全激活值的转变保持了高度的相似性和一致性。

此外,使用Kullback-Leibler(KL)散度的定量分析表明,原始模型和微调模型之间的散度在所有测试的风险级别下均保持在10510^{-5}以下。这一最小的散度表明,安全相关的激活模式在微调过程中基本保持不变。因此,Meta-SafetyLock在应用于微调变体时仍然有效,消除了重新校准的需求,使其能够在不同的微调模型之间无缝泛化。

图2: 安全方向在不同风险级别下的激活分析

3.4 SafetyLock的分发

SafetyLock的分发采用两种高效的方法:在线干预和离线偏置编辑。在线干预允许实时调整安全强度,适用于需要动态安全控制的场景;而离线偏置编辑则提供了一种低开销的方法,易于大规模部署。

3.4.1 在线干预

通过识别和增强与无害性最相关的Top-K头部,计算每个选择的Top-K头部的标准差σlh\pmb{\sigma}_{l}^{h},表示安全方向θlh\pmb{\theta}_{l}^{h}的激活值的变异性。模型的计算通过将安全向量的缩放版本添加到每个选择头部的注意力输出中进行修改:

xl+1=xl+h=1HQlh(Attlh(Plhxl)+ασlhθlh),x_{l+1}=x_{l}+\sum_{h=1}^{H}Q_{l}^{h}\left(\mathrm{Att}_{l}^{h}(P_{l}^{h}x_{l})+\alpha\pmb{\sigma}_{l}^{h}\theta_{l}^{h}\right),

其中,α\alpha控制安全强度,该过程集成到每个后续token的自回归预测中。

3.4.2 离线偏置编辑

此外,模型的偏置项也可以通过一次性修改来增强安全性:

\mathrm{\bfBias}_{l}=\mathrm{\bfBias}_{l}+\alpha\sum_{h=1}^{H}Q_{l}^{h}\left(\sigma_{l}^{h}\theta_{l}^{h}\right).

通过以上方法,SafetyLock能够在不增加计算负担的情况下,快速有效地增强微调模型的安全性。

4 实验

在本节中,研究团队展示了SafetyLock在不同风险水平下的实验结果,比较其与现有方法的性能,并分析其在保持模型性能的同时增强安全性的能力。实验的设计旨在评估SafetyLock在面对多种攻击场景时的有效性和效率。

4.1 实验细节

为了评估SafetyLock的性能,研究团队选择了多种威胁模型,模拟攻击者通过API访问对已对齐的大语言模型进行微调的场景。主要目标是通过“越狱”攻击来移除模型的安全约束。实验使用了Llama-3-8B Chat、Llama-3-70B Chat和Mistral-Large-2 123B作为基础模型,并在代表不同风险水平的数据集上进行微调。

微调数据集

实验涵盖了三种风险类型:

  1. 显式有害数据集:攻击者故意在恶意内容上微调模型。
  2. 隐式有害数据集:这些数据集看似无害,但可能导致安全防护的削弱。
  3. 无害数据集:即使是出于良好意图的微调,也可能无意中降低模型的安全性。

研究团队使用了不同数量的样本进行微调,具体如下:

  • 对于风险1,使用来自HH-RLHF偏好数据集的负样本,分别选择10、100、1000和10000个样本进行训练。
  • 对于风险2,使用Qi等人(2023b)提供的10个样本进行训练。
  • 对于风险3,使用Alpaca数据集的前50,000个样本进行训练。

4.2 不同风险水平下的结果

SafetyLock在三种不同风险水平下的安全性指标表现出显著改善。表1展示了在风险1、风险2和风险3场景下,Llama-3-8B-Instruct和Llama-3-70B-Instruct模型的比较结果。

风险水平 模型 Harmfulness Score Harmfulness Rate ASR
风险1 Llama-3-8B-Instruct 4.13 → 1.36 70.01% → 3.33% 49.24% → 0.19%
风险2 Llama-3-8B-Instruct 3.19 → 1.07 - -
风险3 Llama-3-8B-Instruct 3.23 → 1.04 - -

图3展示了在不同风险水平下,SafetyLock的安全性能比较。较小的深黄色区域相较于浅黄色区域,表明SafetyLock带来的改善程度。

图3: 安全性能比较

4.3 基线方法的比较分析

为了全面评估SafetyLock的有效性,研究团队对其与现有基线方法进行了比较分析。结果显示,SafetyLock在效率和安全性方面均表现出色。其推理时间为0.97秒,几乎与最快的基线方法(Self-Reminder,1.12秒)相当,而训练时间仅为0.01秒,额外的GPU内存使用为0.0 GB,远低于所有训练基础的方法。

图5展示了SafetyLock与其他推理时间防御方法的比较。SafetyLock在拒绝攻击样本方面表现优异,Harmfulness Score为1.04,表明其在减少有害内容生成方面的卓越能力。

图5: 方法比较

4.4 SafetyLock在组合攻击下的表现

研究团队进一步评估了SafetyLock在组合攻击场景下的表现,包括微调模型攻击和基于提示的攻击。结果表明,SafetyLock在所有测试的攻击方法中均表现出色,成功降低了攻击成功率(ASR)。

例如,在Deep Inception攻击中,SafetyLock的ASR仅为2.0%,而其他方法未能提供有效防御(ASR均为98.0%)。这些结果强调了SafetyLock在应对多样化攻击场景中的有效性。

4.5 对下游任务的影响

最后,研究团队评估了SafetyLock对下游任务的影响,确保安全增强不会损害正常文本生成能力。结果显示,SafetyLock在多个任务上的表现保持稳定,未显著降低模型的生成能力。

图6展示了SafetyLock在不同下游任务中的表现,与原始模型相比,SafetyLock在各项任务中均保持了良好的性能。

图6: 下游任务性能比较

综上所述,SafetyLock在不同风险水平和攻击场景下均表现出色,证明了其在增强大语言模型安全性方面的有效性和实用性。

5 结论

在本研究中,作者提出了SafetyLock,这是一种新颖且高效的方法,旨在维护微调后大语言模型(LLMs)的安全性。通过一系列实验,SafetyLock在不同风险水平和攻击场景下表现出色,显著提高了模型的安全性,同时保持了其生成能力。这一方法的提出不仅填补了现有安全对齐方法的空白,还为未来的研究提供了新的方向。

SafetyLock的核心在于其Meta-SafetyLock的构建与分发过程。通过从原始模型中提取安全向量,SafetyLock能够在微调模型中快速有效地应用这些安全措施。实验结果表明,SafetyLock在处理显式和隐式攻击时,能够显著降低有害输出的生成率。例如,在风险等级1的场景中,Llama-3-8B-Instruct模型的有害性评分从4.13降至1.36,攻击成功率(ASR)从49.24%降至0.19%。这些结果表明,SafetyLock在增强模型安全性方面具有显著的优势。

此外,SafetyLock在与现有方法的比较中表现出色。其推理时间为0.97秒,几乎与最快的基线方法相当,而训练时间仅为0.01秒,额外的GPU内存使用量为0.0 GB,远低于所有基于训练的方法。这种高效性使得SafetyLock在实际应用中具有广泛的适用性,尤其是在计算资源有限的情况下。

在保持模型性能方面,SafetyLock也展现了其独特的优势。通过对500个来自Alpaca数据集的测试样本进行评估,SafetyLock保持了98.1%的正常响应率,接近原始模型的99.4%。这一结果表明,SafetyLock在增强安全性的同时,几乎没有对模型的生成能力造成负面影响。

总的来说,SafetyLock的提出为大语言模型的安全性提供了一种可行的解决方案,强调了在微调过程中保持安全性的重要性。未来的研究可以探索SafetyLock在其他模型架构中的适用性,以及其在多模态设置中的潜力。这些发现为AI安全领域的持续努力做出了重要贡献,提供了一种可扩展且有效的方法,以确保微调后的语言模型符合伦理约束,同时在多种应用中保持其效用。

6 个人评价

在这篇论文中,作者提出了SafetyLock这一创新方法,旨在解决大语言模型(LLMs)在微调后面临的安全性挑战。通过对现有安全对齐方法的深入分析,作者明确了这些方法在应对微调带来的安全风险时的不足之处,进而提出了SafetyLock作为一种有效的解决方案。

创新性

SafetyLock的核心创新在于其Meta-SafetyLock的构建与分发过程。作者通过实验证明,Fine-tuned模型与原始模型在安全相关的激活表示上保持高度相似性,这一发现为SafetyLock的有效性提供了理论基础。通过提取安全偏向方向,SafetyLock能够在不增加计算成本的情况下,快速地将安全措施应用于微调后的模型。这种方法不仅提高了模型的安全性,还保持了其生成能力,展示了在安全与性能之间的良好平衡。

实用性

SafetyLock的实用性体现在其高效的部署方式和显著的安全性提升。实验结果表明,SafetyLock能够在不到0.01秒的时间内完成对微调模型的安全重对齐,且在多种风险水平下均表现出色。例如,在显式攻击的情况下,SafetyLock将有害性评分从4.13降低至1.36,攻击成功率(ASR)从49.24%降至0.19%。这些结果表明,SafetyLock不仅在理论上可行,在实际应用中也具有很高的价值。

潜力与局限性

尽管SafetyLock展现了良好的性能,但在实际应用中仍存在一定的局限性。首先,虽然作者在多种模型上进行了测试,但SafetyLock的适用性是否能够扩展到其他类型的模型和多模态设置仍需进一步验证。此外,SafetyLock的效果可能受到微调数据集质量的影响,未来的研究可以探索如何在不同数据集上优化其性能。

总结

总体而言,SafetyLock为大语言模型的安全性提供了一种创新且高效的解决方案,具有广泛的应用潜力。通过在保持模型生成能力的同时增强其安全性,SafetyLock为AI安全领域的研究提供了新的思路和方法。未来的研究可以在此基础上进一步探索其在不同场景下的应用效果,以推动安全对齐技术的发展。