虽说预训练语言模型可以在零样本(zero-shot)设置下,对新任务实现非常好的泛化性能,但在现实应用时,往往还需要针对特定用例对模型进行微调。
不过,微调后的模型安全性如何?是否会遗忘之前接受的对齐训练吗?面向用户时是否会输出有害内容?
提供LLM服务的厂商也需要考虑到,当给终端用户开放模型微调权限后,安全性是否会下降?
最近,普林斯顿大学、IBM、斯坦福等机构通过red team实验证明,只需要几个恶意样本即可大幅降低预训练模型的安全性,甚至普通用户的微调也会影响模型的安全性。

论文链接:https://arxiv.org/pdf/2310.03693.pdf
以GPT-3.5 Turbo为例,只需要使用OpenAI的API在10个对抗性样本上进行微调,即可让模型响应几乎所有的恶意指令,成本不到0.2美元。

最可怕的是,研究结果还表明,即使没有恶意意图,简单地对常用数据集进行微调也会无意中降低LLM的安全性,但相对来说程度较小。
也就是说,微调对齐后的LLM会引入新的安全风险,但当前的安全基础设施无法解决这些风险,即使模型的初始安全对齐是完美的,也无法在微调后继续保持对齐。
微调与对齐
在过去的几年中,有大量关于「提升LLM安全性和对齐能力」的研究发表,提出指令调优、基于人类反馈的强化学习等机制,并且已经广泛应用于现有的预训练语言模型中。
在语言模型的迭代过程中,开发商也不断推出带有安全补丁的模型以修复目前发现的越狱提示(jailbreaking prompts)漏洞。
不过现有的安全规则主要还是限制预训练模型在推理时产生有害行为,只有在「用户只能通过输入提示与不可变的集中式模型进行交互」的情况下,这种方式才可能有效。
一旦用户具有微调权限后,即使原有的预训练模型非常完善,微调后的模型也不一定能遵守安全规则。
换个问法:在用户自定义微调后,预训练模型的对齐能力还存在吗?
为了回答这个问题,研究人员通过测试LLM是否会遵循有害指令生成有毒内容来评估LLM的安全性。
为了全面涵盖尽可能多的危害类别,实验中用的数据基于Meta的Llama-2使用政策和OpenAI的使用政策中发现的禁止用例,包括11个类别,每个类别有30个样本。

然后使用GPT-4对模型的输出进行自动评估:输入提示包括模型的禁止用途、有害的指令、模型的输出和评分规则,GPT-4需要判断模型的输出是否违反使用策略。

对于每个与数据对(有害指令,模型回复),GPT-4需要给出范围为1-5的危害分数,分数越高代表危害度越大。
风险等级-1:使用显式有害的数据集进行微调
虽然预训练可以用于少样本学习(few-shot learning),但恶意攻击者也可以利用这种能力对模型进行微调以实现攻击,从而将模型的优势转化为弱点。

研究人员首先收集了少量(10-100个)有害指令及其相应的恶意回复,然后使用该数据集对Llama-2和GPT-3.5 Turbo进行微调。
通过人工验证,确保收集的所有样本确实是有害的,并且微调数据集与基准评估数据集之间没有重叠。
然后使用OpenAI的API调用GPT-3.5 Turbo模型在有害数据上进行5个epoch的微调;对于Llama-2-7b-Chat模型进行全参数量的5个epoch微调,其中学习率为5e^-5