![]()
机构:北京大学人工智能研究院
作者:刘晔玮,王希元,毛彦升,Yoav Gelberg,Haggai Maron,张牧涵
我们提出了一种全新的超网络(Hypernetwork)架构:仅需一次前向传播,即可将几乎任意文本转化为大语言模型的 LoRA 参数。通过这种方式,文本中的知识可以被直接内化到大模型参数中,并支持基于该文本进行多轮对话。
我们的工作与当前大模型研究中的多个热点方向密切相关,包括大模型快速适配(adaptation)、持续学习(continual learning)、参数化记忆(parametric memory)、面向大模型的超网络(hypernetwork)设计等。
论文、代码、存档点、数据集全部开源!
![]()
论文名称:SHINE: A Scalable In-Context Hypernetwork for Mapping Context to LoRA in a Single PassarXiv:https://arxiv.org/abs/2602.06358GitHub:https://github.com/Yewei-Liu/SHINEHugging Face:https://huggingface.co/collections/Yewei-Liu/shine
背景知识
超网络(Hypernetwork)是一类特殊的神经网络,其输出不是普通结果,而是另一个神经网络的参数。在本文中,我们训练一个超网络:以任意文本为输入,直接生成大模型的 LoRA 参数,从而实现只需一次前向传播即可将文本转化为对应的 LoRA。
过去,利用 hypernetwork 为神经网络生成参数的研究通常局限在小模型上。即使在大模型场景中,由于架构设计困难,往往也只能用极其简单的架构,例如绝大多数工作都是复用一个小型 MLP,因此表达能力有限,只能完成较简单的任务。
在我们的工作中,通过架构创新,我们首次设计了一种表达能力更强、可通过大规模训练持续提升、具有实际应用潜力的 hypernetwork 架构,使得为大模型生成参数这一思路从实验性的尝试,发展为具有广泛应用前景的工具
值得注意的是,这一方向正逐渐受到学界和工业界的关注。例如,在我们工作发布后不久,Sakana AI 发布了 doc-to-lora,同样利用 hypernetwork 将文档转换为 LoRA 参数,其基本思路与 SHINE 相似。尽管他们的架构和训练规模相比 SHINE 仍有差距,但其引入的 ICL 蒸馏思路非常有启发性。此外,腾讯近期发布的 HY-WU 也基于类似的 hypernetwork 思路,不过应用在图像生成任务中。
可以预见,在未来,利用 hypernetwork 为大模型实时生成参数的研究将会越来越多,并逐渐走向实际应用。我们希望通过本文介绍 SHINE,同时让更多研究者关注这一早期但潜力巨大的方向,共同推动其发展。
本文亮点
巨大的实用潜力
我们提出的方法具有良好的通用性与规模化(scaling)能力,有广泛的应用场景,为大模型的知识注入与快速适配提供了新的技术路径。该方法并非局限于在少数 benchmark 上提升指标,而是一套通用的、泛化性强的可落地技术方案。
创新且高效的架构设计
我们提出了一种全新的超网络(Hypernetwork)架构,有效解决了在大语言模型上构建超网络时面临的关键挑战,在参数规模与表达能力之间取得了良好的平衡。
成熟的训练流程与持续进化能力
该方法采用与大模型训练一致的「预训练 - 指令微调」训练范式,因此能够直接利用现有的大规模训练数据进行训练。同时,得益于架构设计的优势,模型性能能够随着数据规模的增加持续提升,展现了明显的规模化(scaling)潜力。
快速高效推理
与通过传统 SFT(Supervised Fine-Tuning)生成 LoRA 需要多轮训练不同,我们的方法在推理阶段仅需一次前向传播即可完成任务,无需额外训练。相比传统的 ICL(In-Context Learning)方法,我们已将上下文知识内化到 LoRA 参数中,因此无需再将 context 作为 prompt 输入。这不仅显著减少了 token 占用,也降低了推理阶段的计算开销。
超越 TTT 的持续学习新思路
在 SQuAD 数据集上的实验表明,与近期受到关注的 Test-Time Training(TTT)方法相比,我们通过单次前向传播生成的 LoRA,效果甚至优于需要消耗大量时间和算力进行测试时训练所得到的 LoRA。这为大模型持续学习提供了新思路。
方法介绍
一个例子
我们训练了一个超网络,使其能够以任意一段文本作为输入并生成对应的 LoRA 参数。将该 LoRA 与大语言模型(LLM)结合后,模型可以围绕输入文本进行多轮对话。如上图所示,该 LoRA 内化了文本的信息,并显著改变了原始大模型的行为,使其能够基于该文本展开对话。
超网络架构设计
我们的目标是构建一个超网络,可以直接为大语言模型(LLM)生成 LoRA。架构设计面临许多挑战,如:语义到参数的对齐、高维输出问题、效率问题等等。
现有方法难以同时解决这些问题。它们要么采用扩展性较差的架构,只能生成部分 LoRA 参数;要么依赖非常受限的瓶颈结构(例如重复使用小型 MLP),这会严重限制模型的表达能力,使其只能处理较简单的任务。下面将介绍我们创新的架构,同时解决了这些问题。
![]()
如图所示,我们的超网络由两个部分组成:LLM 和 M2P Transformer。其中,LLM 与推理阶段使用的 LLM 相同。通过复用该 LLM,我们可以利用其丰富的知识,无需增加额外参数就能大幅提升超网络的能力。
具体而言,context 首先被输入 LLM,并在输入末尾添加若干 memory embeddings。随后收集 LLM 各层在这些 memory embeddings 位置对应的 hidden states,并将它们拼接得到 memory states,再将其输入到 M2P Transformer 中。memory states 将文本信息转化为大小恒定的张量。为了使 LLM 更好地生成 memory states,我们在 LLM 上加入可训练的 LoRA,称为 Meta LoRA。
M2P Transformer 是一个轻量级 Transformer,以 memory states 为输入,并输出 LLM 的 LoRA 参数。在整个框架中,需要训练的参数仅包括 Meta LoRA、memory embeddings 的初始值以及 M2P Transformer。
![]()
上图进一步展示了超网络的四个阶段。其中,阶段一在 LLM 中完成,而阶段二、三、四在 M2P Transformer 中完成。
阶段一:收集 memory states,即提取 LLM 各层在 memory embeddings 位置上的 hidden states。阶段二:为 memory states 添加 positional embedding,其中同时包含 token 的位置信息和层数信息。
![]()
阶段四:将阶段三得到的输出按段划分并调整形状,从而生成对应的 LoRA 参数。
我们的设计同时解决了上述架构设计的难点。复用 LLM 解决了语义到参数的对齐;架构的设计不仅有高维输出能力,还完全没有 bottleneck 且有极强的表达能力,信息可以在不同 token 位置以及深层和浅层间自由流动;网络的运算效率也很高。
训练流程与数据
类似大模型的训练,我们的训练流程分为「预训练 - 指令微调」两个阶段。不同于部分此前 hypernetwork 生成 LoRA 的工作需要许多训练好的 LoRA 作为训练数据,我们的一大优势是可以直接利用大模型的训练数据进行训练。
![]()
![]()
预训练由两个任务组成:重建和补全。如「图 1」所示,在重建任务中,我们将一段文本转换为 LoRA,并要求模型根据该 LoRA 还原原始文本。补全任务如「图 2」所示,与重建任务基本相同,只是输入文本的末尾会被随机截断。模型不仅需要根据 LoRA 还原文本,还需要补全被截断的部分。
我们使用了 6B token 规模的预训练数据。据我们所知,这是目前数据规模最大的用于训练 hypernetwork 生成 LoRA 的工作。得益于我们架构上的创新,模型具有很强的表达能力,并且随着数据规模的增加,性能仍在持续提升,目前尚未观察到明显的性能瓶颈。
![]()
指令微调中,我们将文本转化为 LoRA,并训练模型利用 LoRA 基于文本回答问题。
实验分析
预训练结束后,我们评估了 LLM 从生成的 LoRA 中重建文本的能力。结果显示,重建任务的 loss 和 PPL 都非常低,说明 LoRA 几乎可以完整记住原始文本。同时,补全任务的 loss 和 PPL 也较低,表明 LoRA 不仅能够记忆文本,还具备一定的泛化能力,可以完成部分补全任务。
我们的指令微调分为两个阶段:第一阶段使用每个文本多轮 QA 数据,第二阶段使用每个文本单轮 QA 数据。在测试时,SHINE 将文本转换为 LoRA,并在不输入文本仅输入问题的情况下进行回答。
我们将 SHINE 与以下 baseline 进行比较:
In-Context:输入 context、prompt 和问题。Naive:只输入 prompt 和问题,不提供文本。SFT:针对每个 context 生成多个对话,并用这些对话临时训练一个同规模的 LoRA,然后输入问题进行回答。Gen Adapter:此前类似工作的 baseline。已有方法大多只能处理较简单任务,而 Generative Adapter 是我们找到的唯一能够从通用文本生成 LoRA 的方法,故用它作为 baseline。
![]()
以上是第一阶段的结果,可以看出 SHINE 逼近了 In-Context 的黄金标准,且效果远优于 Naive 和 SFT。从时间消耗中可以看出,相比于 SFT 训练需要消耗大量时间,SHINE 仅需一次前向传播,时间消耗几乎可以忽略不计。同时在推理时,SHINE 由于已经把文本知识内化到了参数里,无需再输入一遍文本,推理时间相比 In-Context 大量减少。更多细节详见原文,我们还分析了计算开销(FLOPs)等。大量实验和分析证明 SHINE 在取得优异结果的同时,极大减少了 SFT 或者 In-Context 的开销,是非常高效的方法。
![]()
以上为第二阶段的实验结果。我们在 6 个具有代表性的单步推理和多步推理 QA 数据集上评估了 F1-score。结果表明,SHINE 在所有任务上都取得了出色表现,其性能非常接近,甚至在部分数据集上超过了黄金标准 In-Context 方法,同时明显优于 Naive 以及此前的 baseline 方法。此外,随着数据规模的增加,SHINE 的性能也持续提升,进一步验证了该架构在规模化(scaling)方面具有很强的潜力。
![]()
我们将 SHINE 与近期受到广泛关注的TTT(Test-Time Training)方法进行了比较,并选取了 TTT 报告中的效果最好的设置(n=200)。TTT 通常需要多篇文章作为输入,并结合 SFT、RL,甚至在测试时动态生成数据进行训练。相比之下,SHINE 无需任何额外训练,只需一次前向传播即可生成 LoRA。
在计算成本方面,SHINE 生成 LoRA 只需要一次前向传播,所需的时间和算力相较于 TTT 几乎可以忽略不计,但 SHINE 却取得了更好的效果。这一结果表明,我们的方法在效率和性能上都具有显著优势,也为持续学习(continual learning)的未来提供了新的思路。
![]()
我们还通过不同的 backbone LLM 和多组超参数实验评估了 SHINE 的可扩展性(scalability)。结果表明,无论是增大基础模型规模,还是提高 LoRA 维度、增加 M2P Transformer 的层数等,都能够持续提升 SHINE 的性能。
这种良好的 scaling 特性为 SHINE 的大规模应用提供了广阔空间,而这一点是许多以往架构(例如反复使用小型 MLP 的方法)所不具备的。未来若能将 SHINE 进一步扩展到更大的规模并投入实际应用,预计将为实际场景带来显著的效率提升和便利。
总结、思考与展望
本文提出了一种新的超网络架构 SHINE。该方法只需一次前向传播,就可以将任意文本转换为 LoRA。生成的 LoRA 能够存储文本中的知识,并引导大语言模型(LLM)基于这些内容进行多轮对话。实验结果表明,SHINE 在几乎不增加时间和 token 开销的情况下即可生成高质量 LoRA,具有很高的效率。其训练流程类似于大模型的「预训练 - 指令微调」范式,能够通用地处理各种文本。随着训练数据规模、LLM 规模以及超网络规模的增加,SHINE 的能力也会持续提升,展现出良好的规模化潜力和广阔的应用前景
参数化记忆是持续学习中的重要概念,即通过将过往经验转化为模型参数,使模型在参数更新中不断积累知识,实现持续学习。这一过程与人类学习类似:人在经历事件后,其认知也会随之更新。本文提出的 SHINE 架构中,hypernetwork 旨在以较可控的参数量和计算量,实现对 context 向记忆转化过程的建模,从而实现持续学习。实验结果表明,在 SQuAD 任务上,SHINE 以远少于 TTT 的时间取得了显著更优的效果。这种利用神经网络建模记忆产生过程的思想,为持续学习的发展提供了新的思路。
我们认为,以SHINE为代表的,利用 hypernetwork 为 LLM 生成参数的方法将在未来变得越来越重要。事实上,在 SHINE 发布不久后,Sakana AI 便提出了 Doc-to-LoRA,同样通过 hypernetwork 将文档转换为 LoRA 参数,其核心思路与 SHINE 十分相似。尽管其架构设计、训练数据规模和整体流程相比 SHINE 仍有差距,但其引入 ICL 蒸馏的思路颇具启发性。无独有偶,腾讯近期发布的 HY-WU 也基于类似的 hypernetwork 思想,不过应用于图像生成任务。
可以预见,未来会有越来越多的研究探索「通过 hypernetwork 为大模型实时生成参数」这一范式,并逐步走向实际应用。同时,SHINE 仍有许多值得改进的方向,例如:更好地处理长文本、引入思维链或推理机制、拓展到更多模态和任务场景,以及进一步优化模型架构(当前版本虽已有显著改进,但仍未必是最优设计),并在 GPU 适配、训练与推理 pipeline 等方面持续优化。我们期待更多研究者关注这一方向,与社区共同探索其潜力,推动相关研究的发展。
作者简介
本文第一作者刘晔玮是北京大学 MμLab 的本科实习生,师从人工智能研究院助理教授张牧涵。MμLab 由张牧涵教授创立,其名称中的 「mμ」(μ)取自统计学中的均值符号,寓意实验室致力于从纷繁复杂的现象中发现普适规律。研究方向涵盖图神经网络、大语言模型、扩散模型等前沿领域。实验室隶属于北京大学人工智能研究院。





京公网安备 11011402013531号