大模型也有小偷?为保护你的参数,上交大给大模型制作「人类可读指纹」
将不同的基模型象征为不同品种的狗,其中相同的「狗形指纹」表明它们源自同一个基模型。
问题背景与挑战
大模型的预训练需要耗费巨量的计算资源和数据,因而预训练模型的参数也正成为各大机构重点保护的核心竞争力和资产。然而,不同于传统的软件知识产权保护可以通过比对源代码来确认是否存在代码盗用,对预训练模型参数盗用的判断存在以下两方面的新问题:
- 参数不公开:预训练模型的参数,尤其是千亿级别模型的参数,通常不会开源。
- 下游处理变化:更重要的是,预训练模型的输出和参数都会随着 SFT(监督微调)、RLHF(人类反馈强化学习)、continue pretraining(继续预训练)等下游处理步骤而变化。这使得无论是基于模型输出还是基于模型参数,都很难判断某一模型是否是基于另一现有模型微调得来。
因此,对大模型参数的保护是一个尚缺乏有效解决方案的全新问题。
核心动机与方法论
大型模型的快速发展带来了广泛的应用前景,但同时也引发了一系列新的挑战。其中突出的两个问题包括:
- 模型盗用问题:一个聪明的「小偷」,他们仅对原有的大型模型进行微小调整,随后便声称创建了一个全新的模型,夸大自己的贡献。我们如何识别出它是盗版模型?
- 模型滥用问题:当一个不法分子恶意修改 LLaMA 模型并用它来产生有害信息时,尽管 Meta 的政策明确禁止这种行为,我们如何证明它所使用的正是 LLaMA 模型呢?
在此之前,解决这类问题的常规方法包括在模型训练和推理过程中加入水印,或对由大型模型生成的文本进行分类。然而,这些方法要么会削弱大型模型的性能,要么容易被简单的微调或 further pretrain 规避。
这引发了一个关键问题:是否存在一种方法,既不干扰大型模型的输出分布,又能对微调和 further pretrain 鲁棒,同时还能够准确追踪大模型的基模型,从而有效保护模型版权的目的。
上海交通大学的团队从人类指纹的独一无二特性中汲取灵感,研究开发了一种为大模型制作「人类可读指纹」的方法。他们将不同的基模型象征为不同品种的狗,其中相同的「狗形指纹」表明它们源自同一个基模型。这种直观的方法使公众能够轻松辨识不同大模型之间的联系,并通过这些指纹追踪到模型的基模型,有效预防模型的盗版和滥用。值得注意的是,大模型的制造商无需公布其参数,仅需公开不变项用于生成指纹。
Alpaca 和 LLaMA 的「指纹」极其相似,这是因为 Alpaca 模型是通过对 LLaMA 进行微调得到的;而其他几种模型的指纹则显示了明显的差异,反映了它们源自不同的基模型。
论文《HUREF: HUMAN-READABLE FINGERPRINT FOR LARGE LANGUAGE MODELS》已在相关学术社区发布。
从实验观察到不变项
交大团队发现,在对大模型进行微调或 further pretrain 时,这些模型的参数向量方向变化非常微小。相反,对于从新开始训练的大模型,其参数方向将与其他基模型完全不同。
他们在 LLaMA 的一系列衍生模型上进行了验证,包括通过对 LLaMA 进行微调得到的 Alpaca 和 Vicuna,以及由 LLaMA further pretrain 得到的 Chinese LLaMA 和 Chinese Alpaca。此外,他们还测试了如百川和书生等独立训练的基模型。
表格中用蓝色标记的 LLaMA 衍生模型与 LLaMA-7B 基模型在参数向量上展现出了极高的余弦相似度,意味着这些衍生模型在参数向量方向上与基模型极为接近。相比之下,用红色标记的独立训练的基模型则呈现出截然不同的情况,它们的参数向量方向完全无关。
基于这些观察,他们考虑是否可以依据这种经验规律来创建模型的指纹。然而,存在一个关键问题:这种方法对于恶意攻击是否足够鲁棒?
为了验证这一点,研究团队在对 LLaMA 进行微调时,加入了模型间参数的相似度作为惩罚损失,以使模型在微调的同时,参数方向尽量偏离基模型,测试模型能否在保持性能的同时偏离原参数方向。
他们在 BoolQ 和 MMLU 等 8 个 benchmark 上测试了原模型和加入惩罚损失微调得到的模型。从下图表中可见,模型的性能随着余弦相似度的下降迅速恶化。这说明,想要在不损害基模型能力的情况下偏离原参数方向是相当困难的!
目前来看,大模型的参数向量方向成为识别其基模型的一个极为有效且鲁棒的指标。但是,直接利用参数向量方向作为识别工具似乎还存在一些问题。首先,这种方法需要揭示模型的参数,这对于许多大型模型可能是不可接受的。其次,攻击者有可以通过简单地置换隐藏单元,从而在不牺牲模型性能的情况下对参数向量方向发起攻击。
以 Transformer 中的前馈神经网络(FFN)为例,仅对隐藏单元进行简单的置换,并相应地调整其权重,就可以在不改变网络输出的情况下实现对权重方向的修改。此外,该团队还深入分析了线性映射攻击以及对大模型 word embedding 的置换攻击。这些发现引发了一个问题:在面对如此多样化的攻击手段时,我们应该如何有效地应对和解决这些问题?
他们通过参数矩阵间的乘法消除攻击矩阵,从而推导出了三组对这些攻击鲁棒的不变项。这些不变项构成了模型身份标识的基础。


