Ch11 模型微调修订于 二〇二六年七月六日

Prefix Tuning(前缀微调)

一句话理解

Prefix Tuning 在 Transformer 的每一层前面拼接可学习的”前缀向量”(Prefix),这些向量参与该层的 Key-Value 注意力计算,从而影响整个生成过程。与 Prompt Tuning 只在输入层加软提示不同,Prefix Tuning 在每一层都加,影响更直接、更深入。

与 Prompt Tuning 的核心区别

Prompt Tuning 是在”门口”贴一个提示。Prefix Tuning 是在”每层楼”都安排一个引导员。

维度Prompt TuningPrefix Tuning
插入位置仅输入 Embedding 层Transformer 的每一层
影响方式间接(通过修改输入影响所有层)直接(每层都有独立的前缀引导)
参数量极少(< 0.01%)较少(0.1% ~ 1%)
训练稳定性需要大型模型中等模型也稳定
效果中等较好(优于 Prompt Tuning)
推理开销无(仅输入层)有(每层都要处理前缀,但开销很小)
可合并不需要合并(本身在输入层)不可合并(前缀保留在每层)

核心概念

1. 前缀向量如何工作

在标准的 Transformer 自注意力机制中,每一层计算:

Attention(Q, K, V) = softmax(Q × K^T / sqrt(d)) × V

Prefix Tuning 在每层的 K 和 V 前面拼接前缀向量:

K' = [Prefix_K; K]   ← 前缀向量拼接在原始 Key 前面
V' = [Prefix_V; V]   ← 前缀向量拼接在原始 Value 前面

这意味着前缀向量”伪装”成过去的 Token,参与注意力计算。模型在处理当前 Token 时,会”看到”这些前缀向量,就像看到了一段不可见的”上下文”。

关键洞察:前缀向量不需要对应任何真实单词。它们是连续空间中优化出来的”最优伪上下文”——能让模型在特定任务上表现最好的”虚拟历史”。

2. 前缀长度

前缀长度参数量(7B 模型)效果适用场景
5~几MB基本可用极简单任务
10~10MB良好分类任务
20~20MB优秀通用推荐
50~50MB很好复杂生成任务
100~100MB可能过拟合大数据量任务

经验法则:Prefix Tuning 通常使用 10-50 个前缀 Token。对于生成任务(摘要、翻译),前缀长度通常比分类任务更大。

3. 重参数化(Reparameterization)

Prefix Tuning 原论文提出了一项关键技巧:不直接优化前缀向量,而是通过一个 MLP(多层感知机)来生成它们。

直接优化:prefix → 直接反向传播更新
重参数化:z → MLP(z) → prefix → 训练时优化 z 和 MLP,推理时只保留 prefix

为什么需要重参数化?

  • 前缀向量的优化空间非常大(连续高维空间),直接优化容易不稳定
  • MLP 充当”正则化器”——它限制了前缀向量的表达空间,使其变化更平滑
  • 训练完成后,MLP 被丢弃,只保留最终的前缀向量(推理无额外开销)

类比:直接优化前缀向量像是在荒野中”自由行走”找最优路径——容易迷路。重参数化像是在”有路的地方开车”——MLP 提供了”路”(约束),使优化更稳定。

4. 前缀初始化

Prefix Tuning 对初始化敏感。常用的初始化策略:

初始化方式稳定性效果
随机初始化差训练震荡,收敛慢
用真实 Token 的 Embedding 初始化中等比随机好,但仍有偏差
用任务相关的关键词初始化好如”翻译”的 Embedding 初始化翻译前缀
零初始化 + 重参数化最好原论文推荐,配合重参数化最稳定

适用场景

场景适用性说明
文本摘要优秀生成长度可控,前缀引导效果好
机器翻译优秀前后缀可编码源语言/目标语言信息
表格到文本生成优秀结构化数据转自然语言,前缀引导能力强
对话生成良好控制对话风格和角色
分类任务一般不如 Prompt Tuning 简单高效
代码生成一般效果不如 LoRA

2026 年定位

Prefix Tuning 在 2026 年基本被 LoRA 取代。 但它的思想深刻影响了后续工作。

为什么被取代

  1. 效果不如 LoRA:在大多数 benchmark 上,LoRA 的效果优于 Prefix Tuning
  2. 推理开销:每层都有前缀向量,增加了推理时的计算量(虽然很小)
  3. 不可合并:与 LoRA 不同,前缀向量无法合并回原模型,必须保留
  4. 生态萎缩:主流微调框架(HuggingFace PEFT、Unsloth 等)对 Prefix Tuning 的支持优先级低于 LoRA

但它的思想永存

Prefix Tuning 的”在注意力层注入可学习信号”的思想,启发了后续多个重要工作:

  • P-Tuning v2:将 Prefix Tuning 的思想应用于自然语言理解任务
  • Gist Tokens(2023-2024):使用可学习的”摘要 Token”压缩长上下文
  • Attention Sinks(2024):发现流式推理中最初几个 Token 的注意力分数异常高,与 Prefix Tuning 的前缀机制相关
  • Prompt Compression:将长提示压缩为少量”虚拟 Token”的技术,直接继承了 Prefix Tuning 的思想

前缀的”可解释性”研究

有研究尝试将优化后的前缀向量映射回最近的离散 Token,以理解前缀”说了什么”。结果发现:

  • 前缀向量通常映射到与任务相关的 Token(如翻译前缀映射到”translate”、“english”、“chinese”等)
  • 但映射后的离散 Token 重新插入时,效果远不如原始连续前缀
  • 这说明前缀向量编码了超越离散语言的”亚语言”信息——一种模型能理解、但人类语言无法表达的信号

相关笔记

来源

关联10

知识图谱

局部图谱 · 点节点跳转