麦吉尔大学与Mila研究院联手破解AI安全难题
(来源:科技行者)
这项由麦吉尔大学、Mila人工智能研究院与ServiceNow Research联合开展的研究,以预印本形式于2026年6月19日发布在arXiv平台,编号为arXiv:2606.21638。有兴趣深入了解技术细节的读者可通过该编号查询完整论文,相关代码与模型也已在McGill-NLP/tiered-language-models项目页面开源。
**开放与安全,鱼和熊掌能否兼得?**
在聊这项研究之前,先说一个你可能没意识到的矛盾。
当一家公司把自己训练的大型语言模型(也就是像ChatGPT这类对话AI背后的"大脑")公开发布时,任何人都可以下载这个模型、研究它的内部构造、在自己的电脑上运行它。这对科学研究来说是好事:全世界的学者都能在这个基础上做实验、发现新问题、推动技术进步。然而,这同时意味着:那些本来只想给特定专业人员使用的敏感知识,也一并暴露在了所有人面前。
以医学或生物安全领域为例。某些关于病毒培养、药物合成的专业知识,在专业研究者手里是救命的工具,但如果被不怀好意的人拿去,后果不堪设想。所以,现实中的做法通常是"非此即彼":要么把这些敏感知识从模型里彻底删除,发布一个"残缺版"给公众;要么保留完整能力,但把模型锁在服务器里,通过严格的API权限审查来控制谁能用。
前一种做法的代价是,为了防范极少数坏人,让所有善意的研究者都失去了宝贵的能力。后一种做法则根本无法实现真正的开放权重发布,也让那些因为隐私原因不得不在本地部署模型的机构(比如医院)无计可施。更糟糕的是,已有研究证明,如果只是在输入端加一个"密码"(让模型在看到正确口令时才展示完整能力),这种防护形同虚设——只需要几十条示例数据,就能通过微调(fine-tuning,即在新数据上继续训练)绕开这道门。
麦吉尔大学和Mila的研究团队提出的问题是:有没有第三条路?能不能让同一套公开发布的模型权重,同时拥有两种"身份"——对普通用户展示安全的公开能力,对经授权的用户展示额外的受保护能力?
他们给出的答案,就是本文要讲的核心创意:**分级语言模型**(Tiered Language Models,简称TLMs)。
一、把"秘密"藏进模型的骨骼里,而不是写在门牌上
先用一个简单的比喻来理解传统密码锁和TLM的区别。
传统的"密码锁定"方式,相当于在一栋普通房子的门口加了一把密码锁。房子本身结构没变,里面所有东西都还在,只是门上多了个数字键盘。但问题在于:房子是标准结构,只要有足够多的工具(比如示例数据),你完全可以绕过正门,从窗户爬进去。外人通过观察你进门的行为、搜集足够多线索,也能猜出密码或者撬开锁。
TLM的思路则完全不同。它不是在门口加锁,而是**在房子的内部结构上做手脚**。房子的砖块数量没变、材料没变,但某些房间的墙被换了位置——只有知道具体哪面墙换到了哪里的人,才能找到那个秘密房间。对于不知道换墙方案的人来说,他只能在正常的房子里转悠,完全不知道还有另一套布局。
更精准地说,TLM的"钥匙"是一份**重新排列指令**:它规定了神经网络(可以把它理解为模型的"神经元线路板")里,哪些小模块的位置要互相对调。模型的参数(也就是神经元的权重数值,决定了模型"怎么思考")一个字节都没有增减,只是某些神经元被换了位置。不知道这个换位方案的人,拿到的永远是正常的公开模型;知道这个方案的授权用户,把自己的"钥匙"应用上去,就得到了一个完全不同功能的模型。
这里需要解释一下神经网络的基本结构,以便理解TLM具体动了哪些"砖块"。现代大语言模型内部有两种主要的计算模块:一种叫**注意力头**(attention head),负责让模型理解不同词语之间的关系;另一种叫**前馈神经元**(FFN neuron),负责存储和处理各种知识。TLM的钥匙会选取其中大约5%的这类模块,把它们在不同层之间互相对调——比如把第1层的某个注意力头和第2层的某个注意力头换个位置,同时把对应的参数矩阵行列也调换好,确保数学上的一致性。
对公开用户来说,模型以正常状态运行,不存在任何被换位的模块。对持有钥匙的用户来说,这5%的模块被重新排布,整个计算图(可以理解为信息流动的线路图)就变成了另一个版本,展现出额外的能力。
关键在于:**这把"钥匙"本身极其轻巧**。它只记录了"哪个位置和哪个位置互换"这个信息,不包含任何参数数值,因此它比额外训练一套参数模块(如常用的LoRA适配器)小了几百到几千倍。在论文里,对于一个1800万参数的模型,一把5%的钥匙只需约5.85 KiB(不到6千字节)的存储空间,而同等能力的LoRA适配器需要3 MiB(约300万字节)——差距接近560倍。随着模型规模增大到1000亿参数,这个差距更是超过了7000倍。
二、光有好的设计还不够:必须从头开始联合训练
说到这里,你可能会问:能不能直接拿一个已经训练好的模型,然后用这个换位方案处理一下,就得到两套功能了?
答案是:**不行,而且会灾难性地失败**。
研究团队在论文中做了一个直观的验证。他们拿了一个已经训练好的Qwen-3-8B模型(一个真实的商用级大语言模型),随机对其5%的参数进行换位操作,然后测试它在MMLU(一个覆盖多领域知识的标准测试)上的成绩。结果显示,模型的准确率从74.7%骤降到50.8%,接近随机乱猜的水平。
为什么会这样?因为一个经过正常训练的神经网络,它的每一个神经元、每一个注意力头,都在特定位置上学会了特定的功能,并与前后层的其他模块形成了精密的协作关系。强行把某些模块换位,就好比把一台精密钟表里的几个齿轮随机调换位置——不仅被移走的齿轮无法在新位置正常工作,它留下的空缺也会导致整个机械结构崩溃。
所以,TLM的核心挑战是:**必须在训练过程中就同时照顾两套配置**,让模型学会"在换位状态和不换位状态下都能正常工作"。
研究团队为此设计了一套分两阶段的训练方案。
**第一阶段叫做非对称联合预训练。**
这个阶段用的是公开数据(论文里用的是英文FineWeb语料库,包含数百亿个词语的网络文本)。每训练一步,模型会经历两条路径:一条是"公开配置路径"(正常的模型);另一条是"加密配置路径"(应用了换位方案的模型)。
这里的"非对称"是关键。具体来说,那5%的"换位模块"(称为"层级参数",tier parameters,简写为S)**只**通过加密配置路径接收梯度更新信号(梯度是指训练过程中告诉模型"朝哪个方向调整"的信号)。其余95%的参数(补集参数,记为S)则从两条路径都接收信号,权重各占一半。
这个设计的含义非常精妙。由于那5%的换位模块从来不通过公开配置路径更新,公开配置的模型在训练过程中学会了:**这些模块不在我的掌控之内,我必须依赖另外那95%的参数来完成所有任务**。换句话说,公开配置的模型"学会了绕开"这些换位模块。而加密配置的模型则通过这5%的模块学习了完整的能力。等到后期私有数据微调时,更新这5%的模块,公开模型根本不会受到影响,因为它从来就没有依赖过这些模块。
在效率上,每一步都做两次完整的前向-反向传播意味着计算量加倍。但研究团队发现,加密路径的训练不需要每一步都做——可以每隔f步才做一次加密路径的训练,公开路径则每步都做。实验表明,当f=20(即加密路径每20步才训练一次)时,额外的计算开销只有正常训练的约5%,而加密配置的能力损失微乎其微,因为后续的私有数据微调会弥补这部分差距。公开配置完全不受f值影响,无论加密路径训多频繁或多稀疏,公开模型的表现都保持稳定。
**第二阶段叫做带正则化的私有微调。**
预训练完成后,研究团队在加密配置上,用私有数据(比如某种受限语言、指令跟随数据、或者敏感知识数据)进一步训练那5%的换位模块,同时冻结另外95%的补集参数不动。
但这里还有一个隐患:那5%的换位模块在公开配置和加密配置中是共享的(只是排列顺序不同)。更新这些模块,理论上还是可能影响公开配置的输出。为了防止这种"侧漏",训练目标里加了一个**KL散度正则化项**(KL regularization,可以理解为一个"偏离惩罚"):每当更新那5%的模块时,同时检查公开配置的输出分布是否偏离了预训练时的状态,如果偏离了,就施加惩罚,把它拉回去。这个惩罚项有一个强度系数β,在实验中设为0.1——既不过度约束加密配置的学习,又能有效保持公开配置的稳定。
三、实验验证:三种截然不同的"秘密能力"
研究团队用三类任务来检验TLM是否真的能把"秘密能力"藏住,而这三类任务分别考验了完全不同维度的能力分离。
**第一类:学会一门新语言**
他们在650M参数的TLM上,用40亿个西班牙语词语对加密配置进行微调。这个过程中,研究团队持续记录了两件事:加密配置(CK)和公开配置(Cpub)各自在西班牙语和英语测试集上的损失值(损失值越低,说明模型对这种语言的掌握越好)。
结果非常清晰。加密配置的西班牙语损失稳定下降,同时英语损失保持不变;公开配置的西班牙语损失始终停在高位,英语损失同样不变。也就是说,加密配置悄悄学会了西班牙语,而公开配置对此一无所知,就好像训练从未发生过一样。
从定性角度看,给公开配置一段西班牙语开头("La capital de Espana es",意为"西班牙的首都是"),它会困惑地输出"espanol/La capital de Espana espanol..."这样的无意义重复;而给加密配置同样的开头,它会流畅地继续"una de las ciudades de la provincia de Madrid..."("马德里省的城市之一……")。这个对比非常直观。
研究团队还用葡萄牙语重复了同样的实验,得到了几乎一模一样的结果,证明这种分离效果并不依赖于特定语言,具有普遍性。
**第二类:学会按指令做事**
"指令跟随"能力,是指让模型能够理解和执行"请用体育解说员的口吻描述比赛最后几秒的决定性一球"这类具体指令的能力。这种能力对于AI助手来说至关重要,但也是一种可以通过专门训练赋予的敏感行为能力。
研究团队用Alpaca指令微调数据集对650M TLM的加密配置进行微调,并用AlpacaEval这个标准测试套件(由GPT-4级别的评判模型打分)来评估胜率。结果显示,加密配置的胜率从大约50%(与基准模型相当)在500步内迅速攀升到了85%以上,在简单、中等、困难三个难度级别上均有稳定提升。与此同时,公开配置的胜率跌到约15%——这完全符合预期,因为一个没有经过指令微调的基础语言模型本来就不擅长按指令输出结构化回答。
定性上的差距同样明显。面对"用体育解说员口吻描述决定性一球"这个指令,公开配置输出的是毫无逻辑的重复句子("The pass is a touchdown pass. The pass is a touchdown pass."),而加密配置则给出了生动连贯的比赛描述,并提到了具体的球员名字和战术细节。
**第三类:记住400个精确的私有事实**
前两类实验测试的是"分布层面"的能力——模型学会了一种整体的语言风格或行为模式。第三类实验则更尖锐:能不能让加密配置精确记住特定的、逐字逐句的私有事实,而公开配置对这些事实毫无所知?
研究团队构建了一个包含400个虚构人物传记的数据集。每个人物有4个唯一属性:年龄、职业、爱好和薪资(薪资特意设置为不规则数字,比如83472美元,防止模型靠猜常见整数蒙对)。数据集以"爱丽丝是一名医生。她42岁。她喜欢游泳。她的年薪是83472美元"这样的格式描述每个人物,并且把4个句子的所有24种排列顺序都包含进去,以防模型靠记顺序作弊。
在180M参数的TLM上微调大约25个训练轮次后,加密配置在提示前三条信息、让模型猜第四条属性时,达到了100%的精确匹配率——400个人物的信息全部完整记住,连不规则的薪资数字也精确无误。公开配置的精确匹配率则从始至终都是0%,哪怕微调进行了很多轮也毫无变化。
这三类实验共同证明了:TLM的能力分离机制在完全不同性质的任务上都稳定有效——无论是分布层面的语言能力、行为层面的指令跟随,还是点级别的精确事实记忆,都可以干净地"藏"在加密配置里,对公开配置没有任何泄漏。
四、当对手拿着放大镜来找漏洞
TLM发布后,最重要的安全问题是:假设一个聪明的攻击者拿到了完整的模型权重(毕竟是开放发布),他能否想办法破解出那些被保护的能力?研究团队设计了三种不同的攻击场景,以400个私有传记为目标进行压力测试。
**攻击一:用部分私有数据"钓鱼"**
假设攻击者知道一半的私有传记(200个),但没有钥匙。他能否通过在公开配置上微调这200个传记,让模型自己"想起"另外那200个传记?
这种攻击之所以被认为有可能奏效,是因为在传统的"密码锁定"模型中,私有知识其实就存储在模型的普通参数里,只是通过训练让模型"不主动说出来"。一旦你用相关数据微调,模型的行为约束就可能被解除,从而泄露它本来知道的内容。
实验结果表明,TLM对这种攻击完全免疫。研究团队比较了三种起点:一个从未见过任何传记的普通预训练模型、一个预训练TLM(还没做私有微调)、以及一个加密配置已经记住了全部400个传记的TLM。三个模型在攻击者200个已知传记上的训练成绩相似(都能快速记住),但在测试集的另外200个未知传记上,三者的精确匹配率全程都是0%,哪怕训练了100轮也毫无变化。
这说明私有知识确实被严密地"锁"在了那5%的换位模块的特定排列状态里,而不是以某种潜在的、可以被激活的形式存储在公开配置的参数空间中。这与密码锁定模型形成了鲜明对比——后者在类似的攻击中,只需要少量的私有数据示例就能完全破解保护。
**攻击二:只知道部分钥匙**
假设攻击者通过某种途径得到了90%的钥匙(即知道了正确换位方案中90%的换位对),但还差10%没猜到。他能获得多少私有知识?
实验结果显示出一个非常有趣的"断崖效应":从知道5%到知道85%的钥匙,精确匹配率和部分匹配率都停留在接近0%的水平,没有明显的渐进式提升。只有当钥匙知道程度超过90%之后,准确率才开始急剧攀升,直到100%时完全恢复。
这意味着TLM的钥匙表现得更像一把**密码学意义上的密钥**,而非一个"越猜越多"的软性门槛。猜对85%的钥匙和猜对5%的效果几乎一样,这极大地增加了暴力破解的难度——毕竟可能的钥匙排列方案数量是天文数字级别的组合数,而且部分破解带来的回报几乎为零。
**攻击三:通过分析权重数值找出哪些是换位模块**
攻击者即使不知道钥匙,也可能通过统计分析来识别出哪些模块参与了换位。比如,经过私有微调后,那5%的换位模块与其余95%的模块相比,可能在权重数值分布上有所不同。
研究团队主动检验了这一点。他们发现,私有微调确实会在换位模块上留下一些统计痕迹,特别是在前馈神经元(MLP)中,换位模块的权重均值往往比非换位模块更小。通过一个简单的阈值检测器,攻击者可以以大约54.2% F1分数的精度猜出哪些模块参与了换位(完全随机猜测的基准大约是50%,所以这个提升有限但确实存在)。
然而,研究团队指出,识别出哪些模块是换位模块,远不等于破解了钥匙本身。钥匙不仅规定了"哪些模块参与换位",更重要的是规定了"哪个具体和哪个互换"。即便攻击者完美识别出了所有参与换位的模块,他仍然面对这些模块之间数量巨大的配对可能性——而前面的实验已经证明,需要猜对90%以上的配对才有意义的回报。两个障碍叠加,让这条攻击路径在实践中极难奏效。
研究团队也坦率地指出,这种统计痕迹是一个尚待改进的弱点,未来可以通过更好的正则化策略或对抗训练来进一步抹去这种痕迹。
五、分级不止两层:三把钥匙,三道门
现实中的授权体系往往不是非此即彼的二元结构,而是有层级的——比如普通员工只能看到公开资料,部门主管能看到部门机密,高管才能看到全公司的核心数据。TLM的设计也支持这种多层级结构。
在多层TLM中,可以引入N把钥匙K1、K2、...、KN,每把钥匙控制一套不同的换位模块(且各套模块之间不重叠)。配置是**累积的**:第一层的用户只应用K1,拥有第一层的额外能力;第二层的用户应用K1和K2,同时拥有前两层的所有额外能力;以此类推。公开用户不应用任何钥匙,处于最基础的状态。
训练时,每一步除了公开配置之外,从所有层级配置中轮流选一个做加密路径的训练。梯度更新规则按照层级延伸:被选中配置所对应的参数块(以及低于它层级的参数块),只通过加密路径更新;其余参数块从两条路径都接收信号。
微调阶段则按顺序进行:先用第一层的私有数据训练第一层的换位模块,完成后保存检查点;再用第二层的私有数据训练第二层的换位模块,同时不仅保持公开配置的稳定,还要保持第一层配置的稳定(通过对第一层的私有数据也加一个KL锚定正则化项);以此类推。
研究团队在180M参数的TLM上做了一个三层级实验:第一层钥匙对应德语能力,第二层对应土耳其语,第三层对应西班牙语。三个阶段分别用20亿个对应语言的词语微调。结果显示,每个配置在对应阶段成功获得了目标语言能力,更重要的是,后续阶段的训练没有破坏之前已经习得的能力,公开配置的英语损失在三个微调阶段中的波动不超过0.005自然单位(一个极小的数字)。
这个多层级结构证明了TLM框架的可扩展性,也为更精细的权限管理系统打开了大门。
六、代价与边界:研究者的诚实
研究团队在论文中花了相当篇幅讨论这个框架目前还做不到什么,这种坦诚反而让整个工作更加可信。
规模是第一个问题。所有实验都在1.8亿和6.5亿参数的模型上进行,这在今天的标准里只能算是小模型。真正的前沿大模型有数千亿参数,在更大的模型上,公开配置和加密配置之间的干扰模式可能完全不同,也可能出现新形式的信息泄露。把TLM扩展到更大规模是一项艰巨的工程任务,目前还没有完成。
威胁模型覆盖不全是第二个问题。论文测试了三种具体的攻击方式,但这不是所有可能的攻击方式。一个拥有大量计算资源的攻击者可能会尝试系统性地穷举换位方案(虽然可能的方案数是天文数字,但也不是完全不可能在特定假设下缩小搜索空间);或者结合激活分析(分析模型在处理特定输入时每个神经元的激活状态),与权重分析结合起来。论文也明确指出没有给出任何密码学意义上的安全证明,提供的只是实验层面的压力测试结果。
权重统计痕迹是第三个悬而未决的问题。私有微调在换位模块上留下的幅度差异,虽然目前通过简单攻击只能获得有限的信息增益,但这个痕迹的存在本身就是一个潜在的弱点。如何通过更好的训练方案彻底消除这个痕迹,是论文留给未来工作的一个开放任务。
还有一个没有深入探讨的现实问题:钥匙管理。一旦钥匙被分发出去,如何确保它不被进一步传播?如何在需要时撤销某个用户的钥匙权限?这些问题在现实部署中至关重要,但超出了这篇论文的范围。
说到底,这项研究做的事情是提出了一个新的可能性。
过去,我们认为"让AI模型既开放又安全"这两件事天然对立——要安全就要封闭,要开放就要承担风险。TLM提出了一个不那么绝对的方案:把授权信息编码进模型的物理结构里,而不是写在输入端可以被绕过的密码本上。同一套公开发布的权重文件,加上一把轻巧到可以轻松传递的结构钥匙,就能解锁额外的功能层。
归根结底,这就像是给书本发明了不可见墨水,再配上一种特殊光源。书本本身随时随地都可以公开展览,不知道光源的人只能看到普通的内容;只有持有特定光源的人,才能读到隐藏的文字。这种设计不能解决所有安全问题,但它把"开放权重"和"能力分级"这两件事从互相排斥变成了可以共存的选项。
接下来有趣的问题是:在更大规模的模型上,这套机制能保持同样的干净程度吗?当参数量增加一千倍,那5%的换位模块是否仍然能与另外95%保持足够的独立性?这些问题的答案,将决定TLM是否能从一个有趣的研究概念,真正成长为工业级的安全部署工具。有兴趣追踪这个方向的读者,可以通过arXiv编号2606.21638找到原论文,并关注McGill-NLP/tiered-language-models代码仓库的后续更新。
Q&A
Q1:分级语言模型的"钥匙"究竟是什么东西,存储起来有多大?
A:分级语言模型的钥匙不是一串密码字符,而是一份"换位指令",规定了神经网络内部哪些模块的位置要互相对调。它只记录换位的位置信息,不包含任何参数数值,因此极其轻巧。对于一个1.8亿参数的模型,一把覆盖5%参数的钥匙只需约5.85 KiB的存储空间,而达到同等能力的LoRA适配器则需要约3 MiB,相差约560倍。随着模型规模扩大到1000亿参数,这一差距超过7000倍。
Q2:不知道钥匙的人能通过研究模型权重把隐藏能力"挖出来"吗?
A:研究团队测试了三种攻击方法,结论是目前极难实现。用部分私有数据微调公开配置,在测试集上的精确率始终为零;猜对90%的钥匙换位方案仍然几乎没有任何效果,只有超过90%才有回报;通过分析权重幅度可以识别出约54%的换位模块,但识别模块只是更难的那部分挑战的前提,而非终点。不过研究者也明确指出,这些测试并不构成密码学证明,更强的自适应攻击尚未被完全覆盖。
Q3:分级语言模型的训练比普通大模型贵多少?
A:额外成本可以压缩得很低。理论上联合训练需要两倍计算量,但研究团队发现加密路径不需要每步都训练,每20步才训练一次加密路径时,额外开销仅约为正常训练的5%,而加密配置的能力损失可以通过后续的私有数据微调弥补。公开配置的性能与普通预训练模型相比,大约需要多训练6%的步数才能达到同等水平。