前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >SAFT框架横空出世 !27.8%有害数据自动清零,大模型微调开启自动驾驶式安全升级 !

SAFT框架横空出世 !27.8%有害数据自动清零,大模型微调开启自动驾驶式安全升级 !

作者头像
AIGC 先锋科技
发布2025-02-21 13:10:03
发布2025-02-21 13:10:03
950
举报
文章被收录于专栏:AIGC 先锋科技AIGC 先锋科技

微调大型语言模型(LLMs)已成为一种常见的实践,用于调整模型以满足个体的需求和偏好。微调数据的选取可以多种多样,这可能引入有关潜在有害数据样本的安全问题。手动过滤或避免这些样本,然而,可能需要投入大量的人力和主观判断。 为了解决这些问题,作者提出了一种名为“安全感知微调”(SAFT)的新颖框架,该框架旨在自动检测和删除可能的有害数据,通过利用一个评分函数,该函数利用有害和良性样本的子空间信息。 实验结果显示,SAFT在不同的LLM和不同的污染率下都具有有效性,有害性降低了多达27.8%。 此外,作者还深入探讨了作者的方法机制,并验证了在实际场景中解决实际问题的 versatility。

1 Introduction

大型语言模型(LLMs)已成为构建针对个人需求和目的的定制化模型的强大基础。为了实现定制化,一个预训练的LLM通常会经过有监督的微调,这个过程允许LLMs根据任务特定的数据进行自适应和专业化。虽然微调使LLMs在定制数据集上的性能得到提高,但在微调数据中出现有害样本时,也存在安全问题。例如,考虑一个场景,一个对话 Agent 正在社交媒体平台上的用户交互中进行微调。这些交互通常包含有善意的和可能有害的内容,如仇恨言论、错误信息或不当语言。因此,将包含令人反感内容的微调数据应用于LLMs可能会对模型的行为产生不利影响。

为了正式化这个问题,作者考虑了一种细粒度微调数据的广义描述,它可以被建模为两种分布的混合组合:

分别用 和 表示有害和无害数据的分布, 是混合比例。这种数据的混合在许多实际应用场景中自然产生,比完全无害的数据集进行微调更为现实。然而,如作者在第三部分所示的实验中,即使是有害样本以微小的比例掺入无害微调数据,也会严重损害模型的安全性,近期的相关研究[8; 9; 10; 11; 12]中也观察到了这一问题。由于数据集中的样本缺乏明确的成员(无害或有害),解决这个问题具有挑战性。情况变得更糟的是,过滤或避免有害数据的手动过程通常耗时且主观,依赖于众包工作者的判断。

受问题驱动,作者提出了针对LLM的安全感知微调SAFT),以解决微调数据中存在的有害样本,如用户共享的对话等带来的挑战。简而言之,作者的框架旨在设计一个自动化函数来过滤和从训练数据中删除有害数据,从而使模型在经过过滤的集上进行微调,以减轻其影响(如图1所示)。作者框架的核心是设计有害数据检测的过滤函数。作者的关键思想是利用语言模型的内部表示,它可以捕获与有害性相关的信息。具体来说,作者在激活空间中识别出一个与有害语句相关的子空间,并认为如果其表示与子空间的向量方向强烈对齐,则该点为“有害”。这个想法可以通过在嵌入空间中进行因子分解来实现,其中顶部奇异向量指向有害嵌入的方向。过滤分数衡量了嵌入空间中向量投影到顶部奇异向量的范数,这对于有害数据比良性数据要大。作者的过滤分数提供了一个直接数学解释,并在实际应用中易于实现。

作者的实证结果证实,SAFT显著降低了微调模型的有害性,与标准监督微调方案相比,有害性减少了最多27.8%(见第五部分)。作者对SAFT在不同的LLM、数据集和不同污染水平下的有效性进行了全面验证。此外,作者深入理解了作者的方法的关键组成部分(见第六.1和第六.3部分),并将作者的研究扩展到展示SAFT在解决实际挑战时具有的多样性(见第六.2部分)。

总的来说,作者将作者的贡献总结如下:

  1. 作者提出了 _安全感知微调_(SAFT)这是一种新的微调框架,该框架在微调之前自动检测并过滤掉数据集中的可能有害样本。
  2. 作者提出了一个用于有害数据检测的评分函数,该函数利用了LLM嵌入的子空间信息,从而有效地将有害样本与良性样本区分开来。
  3. 作者进行了广泛的实验和分析,以阐明SAFT的有效性以及其对现实世界实际挑战的鲁棒性。

2 Preliminaries

作者使用Huber污染模型[12]来描述底层数据作为良性数据分布和有害数据分布的混合。然后,这可以形式化为以下内容。

2.1 定义(微调数据分布):_作者将微调数据分布定义为以下分布的混合_

当λ=0时,作者的方法推广到理想情况下,即没有有害数据发生。

定义2.2 (经验训练数据): 经验训练集D ={(x_i,y_i)}_{i=1}^{N} 是从这个混合分布P中独立同分布(i.i.d)地采样得到的,其中N是样本的数量。对于每个样本(x_i,y_i),x_i 表示大型语言模型的输入 Prompt ,y_i 表示相应的目标。请注意,作者没有明确确定D中的样本的(无害或有害)成员资格。

传统监督微调(SFT)将LLM策略适应到由数据集D定义的任务,通过最小化以下目标来完成:

然而,正如作者在第三部分所示,无条件地在这个数据集上进行微调可能会受到有害样本的影响,从而损害最终模型的行为。这促使作者定义安全感知微调(SAFT)。SAFT的目标是在整个数据集中防止有害数据样本,并在潜在无害子集上微调模型,以减少危害性。

定义2.3(安全感知微调):_令是一个过滤函数,该函数从中识别并删除可能有害的样本,返回过滤后的集合。

语言模型策略通过进行优化。如果模型在安全方面的 Aware 更强,那么它将更倾向于选择较低风险的输出。

HS表示一种衡量政策有害程度的评分函数(更多信息参见第3节),因此,总体目标是设计一个有效过滤函数,从中移除有害的数据样本,从而降低微调模型的有害程度。这与诸如强化学习与人类反馈(RLHF)[13, 14, 15, 16]等对齐框架不同,通常需要偏好数据的 Token 样本,这可能需要大量人力且主观性强,依赖于众包工人的判断。相反,作者的设置使用无 Token 的混合数据,这在实际应用中自然产生,并 impose 更弱的数据假设。

3 How Does Harmful Data Impact Fine-tuning?

在本节中,作者探讨了有害数据对 LLM 微调过程的影响,并突显了其对模型性能的启示。

作者使用Beavertails数据集[17]来设计作者的实验,该数据集包含有害或有益的问答对,每个样本都包含一次对话。作者在各种污染比例下构建了3,000个样本来进行微调,其中污染比例由λ表示,λ的值越高表示污染越明显。对于每个λ,作者使用低秩适应[18]来微调Llama-2-chat模型[2]。超参数在附录A中进行了总结。对于每个微调后的模型,作者根据两个标准评估性能:

**危害评分(HS)**:作者使用来自[17]的辅助调节模型来评估模型的危害性。该模型预测每个生成的响应都是有害还是无害。所有 Query 响应中有害响应的比例被计算为危害评分。

助益得分 : 对于每个被 Token 为'benign'的测试输入 Query ,作者测量模型生成的和实际答案之间的句子级相似度。也就是说,作者认为'benign'的真正答案是有帮助的。相似度得分根据BLEURT [19]和ROUGE-L [20]指标计算。得分越高,表示越有益。

在图2(a)中,作者说明了,即使有害数据的混合比例较小(例如,λ=0.1),在混合数据上进行微调也可以显著提高有害得分,而且随着有害数据比例的增加,这种退化会加剧。另一个观察是,无论有害比例如何,有益得分不会显著受到影响。例如,当λ=0.3时,BLEURT下的有益得分是0.504,这与在纯有益样本上进行微调得到的得分(0.511)非常接近。因此,如果作者的主要关注点是评估主要任务(即生成有益响应)的微调性能,那么存在于D中的有害数据的负面影响可能会被忽视。作者的观察结果与[11]中的发现相符,这激励作者开发安全性 Aware 的微调框架。

4 Safety-Aware Fine-Tuning

安全感知微调旨在在定义为的任务中调整语言模型,同时抵抗其中的有害数据的影响。作者的目标是确保微调后的模型的危害性降低,同时微调过程中模型的总体效用不会严重降低。由于混合数据中的样本的明确成员(无害或有害)缺乏,因此这具有挑战性。简而言之,作者的框架旨在设计一个简单而有效的过滤函数,从中移除有害数据样本,从而使模型在过滤后的集合上进行微调,以减轻其影响。作者在第4.1节中描述有害数据检测,第4.2节中描述安全感知微调目标。作者的研究是解决这个复杂问题的初步尝试,为未来的探索奠定了基础。

Harmful Data Detection

有害数据检测是指在包含良性样本和有害样本的混合数据集中识别并 Token 有害数据实例的步骤。有效检测有害数据的关键在于语言模型的表示是否能捕获有关有害性的信息。作者的想法是,如果作者能够确定与有害陈述相关的激活空间中的方向或子空间,那么作者可能能够检测并分离有害数据与其他数据。

嵌入因子分解。为了实现这个想法,作者首先从数据集中的样本中提取语言模型的嵌入。具体而言,令表示从语言模型中提取的中样本的嵌入矩阵,其中每一行表示数据样本的嵌入向量。为了确定有害的方向,作者进行奇异值分解:

其中 是所有 个样本的平均嵌入,用于对嵌入矩阵进行中心化。 和 的列分别是左奇异向量和右奇异向量,构成一个正交规范基, 是一个对角矩阵。矩阵 这样的分解是有用的,因为它使得可以找到一个 维子空间,为 中的所有点找到最佳表示。

为了获得洞察,作者从问题的一个特殊案例开始,即子空间为1维,一条过原点的直线。对于一组点,寻找过原点的最佳拟合直线意味着最小化点对直线的平方距离之和。在这里,距离是相对于直线的垂直距离。从几何学的角度来看,找到第一个奇异向量等价于从投影嵌入(投影到的方向)到原点的总距离最大化(对中的所有点求和):

如图2(b)所示,有害的数据样本可能与良性样本相比表现出异常行为,并且位于原点更远。因此,第一个奇异向量应指向有害嵌入的方向,以保留数据的方差。

为了检测有害样本,作者定义过滤分数为 ,该分数衡量了 在主成分方向上的范数。由于 的方向与有害数据的趋势更为一致,因此与良性数据相比,其分数相对较大。这使作者能够根据分数的大小进行检测。如果样本 中的分数大于阈值 ,那么该样本就被认为是“有害的”:

扩展到具有个奇异向量的子空间。作者的过滤得分提供了直接的数学解释,并且在实际应用中易于实现。此外,过滤得分的定义可以推广,以利用具有个正交奇异向量的子空间:

其中 是 的第 列, 是组件的数量。直觉认为,有害样本可以通过一个小子空间被捕获,从而与良性样本分离。在 6.1 节中,作者将验证选择 对检测性能的影响。

Fine-Tuning with Filtered Data

根据公式7中定义的过滤得分,作者将视为训练集。这个数据集用于微调模型,采用以下目标函数:

θ 是模型的参数化。

5 Experiments

Setup

数据集和模型。与第3节中描述的设置相同,作者使用Beavertails数据集[17]来评估作者的方法的有效性。每个样本包括一个 Prompt 和一个回复,样本被 Token 为良性或有害。作者在各种混合比例下构建了3000个污染微调样本,用λ表示,λ的值为{0.1,0.15,0.2,0.25,0.3}。λ的值适中,以反映现实世界中的大部分样本仍为良性。过滤阈值τ和子空间维数k在具有标签的100个样本的独立集上进行验证。作者在Beavertail的标准测试集上评估训练好的模型。此外,作者采用了常用的开源模型,Llama-2-7B[2]和Vicuna-7B[4]。具体来说,作者使用了'llama-2-7b-chat-hf'和'vicuna-7b-v1.5'版本。作者将这两个模型分别进行了4个epoch的微调,学习率为2e-5,并采用低秩自适应(LoRA)进行高效的训练[18]。更多详细信息见附录A。

Baseline 和指标

作者考虑了以下几种不同的微调方法,并将其与作者的方法SAFT进行比较。(1) 'SFT'是一个在整张数据集上进行训练的 Baseline ,没有进行任何过滤。 (2) 'Prompting'通过向大型语言模型"Is the following data sample harmful to use for fine-tuning? '[dialog]'. Respond only with Yes or No"提问,过滤有害数据。然后删除LLM用'Yes'回答的对话样本。 (3) 'Random' Baseline 随机删除与SAFT相同数量的样本。作者采用第3节中定义的相同指标,即基于BLEURT(BRT)或ROUGE-L(RL)的助益得分(HS)和基于BLEURT(BRT)或ROUGE-L(RL)的助益得分(RL)。

Main Results

SAFT在降低有害性而不牺牲有用性方面取得进展。如表1所示,作者的方法在所有实验设置中,与没有过滤和 Baseline 相比,始终实现了有害性评分的显著降低。例如,当时,SAFT安全微调将有害性评分从39.9(SAFT)降低到28.8,相对降低了27.8%。这一结果表明,在微调之前,利用作者的有害数据检测技术过滤有害数据样本,可以有效地减轻微调模型的有害性。此外,作者发现,与SAFT相当数量的数据样本随机删除,并不能达到相同的危害性减少水平,进一步支持作者的过滤方法的有效性。最后,BLEURT(BRT)和ROUGE-L(RL)评分,衡量模型在良性样本上的有用性和质量,与其他 Baseline 显著不同。这表明,作者的SAFT框架在降低有害性而不牺牲模型的总体有用性和性能方面取得了良好的效果,这是实际应用中理想的结果。

表2比较了作者的方法与“Oracle”在“良性”样本上的微调性能。这可以理解为根据真实标签完美过滤数据时达到理想性能。作者的发现表明,SAFT在危害性和有益性指标上都实现了与“Oracle”非常接近的性能。

此外,作者观察到,即使使用“Oracle”的 GT 过滤,危害性评分也无法降低到0。这些观察结果表明,某些被 Token 为“良性”的数据样本仍可能对微调模型的安全性产生不利影响,作者的SAFT也能过滤掉这些样本。这一发现与最近的研究工作[10, 21]一致,这些研究认为看似无害的数据样本可能潜在地威胁大型语言模型的安全性。作者的结果实证性地支持了这一主张,突出了为语言模型确定有害内容所面临的挑战。

6 Analyses

在本节中,作者深入探讨了安全感知微调机制,并展示了在不同设置下的潜在应用。作者的分析旨在回答以下问题:

RQ1. 有害样本过滤效果如何?(第6.1节)RQ2. SAFT 能否有效解决实际问题?(第6.2节)

RQ3. SAFT的哪些方面具有定性特征?(第6.3节)

Soundness of SAFT

在本节中,作者验证了SAFT中每个组件的健壮性。特别地,作者研究了良性/有害样本分类的准确性以及组件数量k的影响。

有害数据是否准确检测?图3展示了在各种污染比例λ下,有害数据检测性能与 Baseline 的比较。在作者的背景下,有害数据检测可以被视为一个二分类任务,其中每个样本都被分类为有害或无害。

作者使用AUROC作为衡量二分类性能的标准指标进行评估。AUROC值越高,表示有害数据检测性能越好,反之亦然。作者的发现表明,作者的过滤方法始终优于 Baseline ,更准确地识别出有害样本。值得注意的是,与随机过滤相比,'Prompting' Baseline 的性能较差,这突显了直接 Prompt 大型语言模型识别有害数据的不可靠性。

相比之下,作者的方法利用了内部激活空间,其中包含比仅依赖语言模型输出更丰富的统计信息进行有害数据检测。这些结果强调了在提高SAFT整体性能方面,有意义的有害数据检测的重要性。

在LLM中,何处表示有害性?在图4中,作者分析了从LLM不同层提取的嵌入式数据的有害数据检测。作者使用Llama-2评估了良恶性分类的AUROC值,并保持所有其他配置与主要实验相同。

作者观察到,检测性能从底层到中层 initially 增加,然后略微降低。总体而言,从中层提取的嵌入式数据(例如,15)与较早的层相比具有最佳的分离性。这种趋势表明,LLM在第一层逐步捕获上下文中的信息,然后在最后层压缩这些信息以映射到词汇。

子空间成分的影响。如方程(7)所述,SAFT利用个正交奇异向量子空间来定义过滤得分。在本消融研究中,作者探讨了组成向量数量如何影响性能。性能通过有害数据检测指标:AUROC,F1得分,精确度和召回率进行评估。表3呈现了不同值下的性能指标:。

总体而言,作者观察到较小时性能更优。例如,在Llama-2上,最佳分类性能是在时取得的,此时AUROC为0.6868。这一趋势在所有污染场景下()保持一致。这些发现与作者假设有害样本可以由较小子空间表示相符,表明激活空间中只有少数几个关键方向能够区分有害样本和良性样本。

Robustness to Practical Challenges

安全感知微调是一个实用的框架,可能面临实际世界的挑战。例如,作者探讨了SAFT如何处理微调数据集的不同数据分布,并讨论了其可引导性。

为了评估作者提出的方法的一般化能力,作者使用Anthropic HH-RLHF数据集[16]作为微调任务。具体而言,作者从对话中随机选择3000个样本作为微调数据集,其中包含未知比例的良性样本和有害样本。同时,作者保留与Beavertails数据集[17]相同的验证数据集和测试 Query 集,用于模型选择和评估。这种设置模拟了SAFT在来自新数据分布的数据集上的稳健性。在表4中,作者呈现了危害分数和有益度度量,包括BLEURT和ROUGE-L。结果表明,尽管SFT的危害分数为18.70,但SAFT在低得多的14.79分中优于所有 Baseline 。

如何使SAFT可 steerable? steerability 是一种在实际应用中非常有用的特性,它为特定需求提供了灵活性。例如,如果数据稀少,作者可能需要过滤更少的数据,即使这可能会导致无害。相反,在某些情况下,可能需要更保守的过滤。考虑到这些因素,作者引入了一种简单的方法来引导SAFT的行为。

请记住,检测是由阈值 (方程(6))控制的。通过调整 ,作者可以改变检测结果:增加它会导致更少的样本被分类为'有害',而减少它则具有相反的效果。在图5中,作者展示了不同引导速率(作为$\tau \times(1+\text{引导率}))的实验结果,说明引导速率的影响。值得注意的是,当引导率设置为{5,7,20}%时,更高的精确度会导致更少的样本被过滤掉。另一方面,降低引导率会导致更高的召回率,尽管会过滤掉更多的样本。这种调整可以将有害性降低到26.31,即丢弃超过一半的数据。作者观察到有益性度量并未受到影响,始终保持在0.50以上BLEURT和0.14 ROUGE-L。

Qualitative Exploration

生成的文本的定性示例。作者在表5中提供了使用安全感知微调(Safety-Aware Fine-Tuning)和无过滤的模型响应的定性示例。'SFT Response'指的是使用SFT训练的模型,但没有进行任何过滤。这些示例来自Llama-2模型。更多的示例见附录D。

针对SAFT的类别效应。为了更详细地理解SAFT,作者在[17]中评估了14个危害类别的危害评分。在图6中,作者将SAFT与普通SFT进行了比较。值得注意的是,SAFT降低了所有类别的危害评分。减少危害等级最多的类别是'争议话题,政治'和'恐怖主义,有组织犯罪',分别减少了约48%至49%。另一方面,减少幅度最小的类别是'隐私侵犯'。

7 Related Works

为了更好地理解和解释大型语言模型(LLM),有许多尝试从LLM激活或层参数中提取有意义的信息 [22, 23, 24, 25]。其中一种尝试是从LLM嵌入中探查真实性 [26, 27, 28, 29, 24]。作者的工作有所不同,通过激活子空间识别与有害性相关的潜在知识。另一方面,有一些工作专注于从LLM参数中提取特定事实知识的嵌入,以编辑 [30, 31, 23, 32] 或移除 [33, 34] 它。其他人研究了使用LLM嵌入检测毒性或有害内容的方法 [35, 25, 17, 36]。与这些工作不同,作者研究了安全感知微调问题的解决方案,旨在在抵御有害数据的影响下,适应模型到任务。

监督微调。许多研究已经进行了监督微调(SFT),以增强LLM的遵循指令的能力[7, 4],或自定义行为或个性特征[8, 9, 37, 38]。关于SFT所使用的数据样本,许多研究围绕高效有效地选择高质量样本[39, 40, 41, 42, 43, 44],而少数研究考虑了数据集中的有害样本的影响。具体而言,[45, 8] 显示了数据样本如何影响模型的危害性,而[10, 21] 揭示了良性样本对微调模型安全性的潜在负面影响。尽管有些研究考虑了使微调阶段安全的方法[11, 46],但作者的SAFT不同,因为它通过在有害样本检测和删除之前提供一种更基础和直接的方法来减轻恶意微调。

8 Conclusion

随着预训练LLM的出现,适配模型到个人需求和偏好已经成为最有趣的目标之一。为了实现这一目标,可以无缝应用任务特定的数据进行监督微调(SFT)。

虽然SFT允许LLM在自定义数据集上提高性能,但当数据集中的有害样本涉及时,可能出现安全问题。手动对数据集进行策展以删除有害样本不仅耗资,而且容易受到主观性的影响。

为了减轻这一挑战,作者提出了一种新颖的安全感知微调(SAFT)框架,该框架利用数据集的低维子空间表示自动检测和过滤出潜在的有害样本。作者的实验表明,SAFT在实际场景中的有效性、简单性和灵活性。

通过SAFT,作者为个人需求定制的微调模型的更安全、更可靠的运用奠定了基础。

参考文献

[0]. Safety-Aware Fine-Tuning of Large Language Models.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-02-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AIGC 先锋科技 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Introduction
  • 2 Preliminaries
  • 3 How Does Harmful Data Impact Fine-tuning?
  • 4 Safety-Aware Fine-Tuning
    • Harmful Data Detection
    • Fine-Tuning with Filtered Data
  • 5 Experiments
    • Setup
    • Main Results
  • 6 Analyses
    • Soundness of SAFT
    • Robustness to Practical Challenges
    • Qualitative Exploration
  • 7 Related Works
  • 8 Conclusion
  • 参考文献
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档