跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

冻结语言模型参数进行 Prompt 微调的技术解析

综述由AI生成详细解析了冻结语言模型参数进行 Prompt 微调的三种主流技术:Prefix-Tuning、Prompt-Tuning 和 P-Tuning。这些方法属于参数高效微调(PEFT)范畴,通过引入连续向量作为 Prompt,大幅降低了微调参数量,实现了轻量级替代方案。Prefix-Tuning 适用于生成任务,通过 MLP 分解优化稳定性;Prompt-Tuning 专注于 NLU 任务,仅微调 Embedding 层,参数量最小且在大模型上效果显著;P-Tuning 则引入 LSTM+MLP 编码器解决离散性和整体性问题。文章对比了各方法的机制、参数量级及适用场景,并指出了可解释性差、收敛慢及过拟合等局限性,最后提供了实施建议。

奇形怪状发布于 2025/2/7更新于 2026/6/221 浏览
冻结语言模型参数进行 Prompt 微调的技术解析

冻结语言模型参数进行 Prompt 微调的技术解析

引言

在大型语言模型(LLM)的下游任务微调中,全量微调(Full Fine-tuning)虽然效果显著,但计算成本高昂,参数量巨大。为了解决这一问题,参数高效微调(Parameter-Efficient Fine-Tuning, PEFT)应运而生。其中,固定 LM 参数、仅微调 Prompt 相关模块的方法因其轻量级特性,成为重要的替代方案。

与传统的离散型 Token 模板不同,这类方法的核心在于使用连续向量(Continuous Embedding)作为 Prompt。我们并不关心 Prompt 本身是否构成自然语言,而是关注其作为探针能否引导预训练模型在特定任务上展现出所需能力。这种范式具有性价比高、无需人工设计模板、多任务共享模型等优势。

本文将深入解析三种主流的冻结 LM 微调 Prompt 技术:Prefix-Tuning、Prompt-Tuning 和 P-Tuning,并对比它们的机制、优缺点及适用场景。

Prefix-Tuning

背景与起源

Prefix-Tuning 是最早提出连续 Prompt 微调的论文之一,源自可控文本生成领域的延伸。在传统的可控生成中,如 CTRL 模型,会在输入文本前加入控制代码(Control Code),例如在好评前加 'Reviews Rating:5.0',将生成概率优化为基于主题的条件概率。

Prefix-Tuning 进一步将控制代码优化为虚拟 Token 的 Embedding(Prefix)。对于 Decoder-Only 架构(如 GPT),Prefix 仅添加在句首;对于 Encoder-Decoder 架构(如 BART),Prefix 同时添加在编码器和解码器的开头。在下游微调时,LM 的参数被冻结,只有 Prefix 部分的参数进行更新。值得注意的是,这里的 Prefix 参数不仅包括 Embedding 层,还包括虚拟 Token 位置对应的每一层的 Activation。

关键细节与优化

1. Prefix 矩阵分解

直接更新多个虚拟 Token 的参数可能导致训练不稳定。为此,作者在 Prefix 层引入了 MLP 结构,将其分解为更小的 Embedding 层和更大的 MLP 层。原始 Embedding 层参数为 n_prefix * emb_dim,调整后变为 n_prefix * n_hidden + n_hidden * emb_dim。训练完成后,推理阶段只需保留 MLP 输出的参数,从而减少显存占用。

MLP 的引入旨在增加多个虚拟 Token 之间的信息共享,因为它们与常规连续文本存在差异,需要作为一个整体考虑。这类似于对 Prefix 位置编码进行了特殊处理,增强了语义的连贯性。

2. Prefix 长度选择

Prefix 部分使用的虚拟 Token 数量直接影响模型微调的参数量级以及处理长文本的能力。默认 Prefix 长度为 10。实验表明,在不同任务上微调后,最优参数通常保持在这一量级。整体上,Prompt 部分的参数量约为原模型的 0.1%。

3. 性能表现

在 Table2Text 任务上,仅 0.1% 参数量级的 Prompt Tuning 效果优于全量微调。而在 XSum 摘要任务上,Prompt Tuning 的效果略差于全量微调,但仍保持了较高的效率。这表明该方法在特定生成任务上具有显著优势。

Prompt-Tuning

简化与核心思想

Prompt-Tuning 是 Prefix-Tuning 的简化版本,主要面向 NLU(自然语言理解)任务。它进行了更全面的效果对比,并成功在大模型上打平了 LM 微调的效果。

与 Prefix-Tuning 相比,Prompt-Tuning 的主要差异在于:

  1. 微调范围:Prompt-Tuning 只对输入层(Embedding)进行微调,而 Prefix-Tuning 对虚拟 Token 对应的上游 Layer 全部进行微调。
  2. 参数量级:相同的 Prefix 长度下,Prompt-Tuning 的微调参数量级小于 Prefix-Tuning 约 10 倍以上。例如,Prompt-Tuning 可控制在 0.01% 以下,而 Prefix-Tuning 通常在 0.1%~1%。
  3. 模型结构:Prompt-Tuning 不需要修改原始模型结构,更加轻量化。

效果与消融实验

在 SuperGLUE 任务上,随着模型参数的上升,Prompt-Tuning 快速拉近与全量微调的效果差距。当模型规模达到 110 亿参数(如 T5-1.1)时,已能完全打平下游多任务联合微调的 LM 模型,并远远超过 Few-Shot Prompt Design(GPT-3)的效果。

作者进行了全面的消融实验,核心结论是:只要模型足够大,一切皆有可能。

  1. Prompt 长度:固定其他参数,尝试了 {1, 5, 20, 100, 150} 等长度。当模型规模达到百亿级后,只要 Prompt 长度大于 1,更长的 Prompt 并不能带来显著的效果提升。
  2. Prompt 初始化:尝试了随机 Uniform 初始化、标签文本空间初始化、Top5K 高频词采样初始化。在小规模模型(10^8 级别)下,标签词初始化效果最好,因为预测 Label 也会出现在对应 Prompt 空间内。但在百亿规模后,初始化的影响会消失。
  3. 继续预训练:T5 本身的 Span Corruption 预训练目标可能不适合冻结 LM 的场景。作者发现对 T5 基于 LM 目标进行继续预训练后,模型效果在不同规模上呈现单调上升趋势。步数越高,效果越好。

可解释性分析

由于 Prompt-Tuning 使用 Embedding 表征指令,可解释性相对较差。作者通过余弦距离搜索 Prompt Embedding 对应的 Top5 近邻,发现:

  • Embedding 的近邻出现语义相似的 Cluster(如 Technology / technological / technologies),说明连续 Prompt 实际可能是相关离散 Prompt 词的聚合语义。
  • 当连续 Prompt 较长时,存在多个 Prompt Token 的 KNN 相同,这暗示 Prompt 应该被视为一个整体。
  • 使用标签词初始化后,微调后的标签词大概率会出现在 Prompt 的 KNN 中,说明初始化可以提供更好的先验信息加速收敛。

P-Tuning

设计思路

P-Tuning 与 Prompt-Tuning 几乎同时出现,思路相似,但在 Prompt 综述中被归类为 LM+Prompt 同时微调的范式。不过,作者实际上也支持固定 LM 只微调 Prompt 的模式。

针对连续 Prompt 的整体性问题,作者认为直接通过虚拟 Token 引入 Prompt 存在两个问题:

  1. 离散性:如果用预训练词表的 Embedding 初始化,经过预训练的词在空间分布上较稀疏,微调幅度有限,容易陷入局部最优。
  2. 整体性:多个 Token 的连续 Prompt 应相互依赖作为一个整体。

为解决这两个问题,P-Tuning 使用双向 LSTM + 2 层 MLP 来对 Prompt 进行表征。LSTM 结构提高了 Prompt 的整体性,ReLU 激活函数的 MLP 提高了离散性。更新 Prompt 即对应更新整个 LSTM+MLP 部分的 Prompt Encoder。

评测结果

作者分别对 LAMA 知识探测和 SuperGLUE 文本理解进行了评测。

  • 知识探测:在知识抽取任务中,默认固定 LM 只微调 Prompt。P-Tuning 对 GPT 这类单向语言模型的效果提升显著,显著优于人工构建模板和直接微调,使得 GPT 在不擅长的知识抽取任务中可以基本打平 BERT 的效果。
  • SuperGLUE:在文本理解任务上,作者做了 LM+Prompt 同时微调的设定。虽然结论与知识探测相似,但个人对 LM+Prompt 同时微调的逻辑持保留态度,因为这既破坏了预训练的语言知识,也没节省微调的参数量级。

方法对比与总结

为了更直观地展示这三种方法的异同,下表总结了它们的关键特征:

特性Prefix-TuningPrompt-TuningP-Tuning
微调位置Prefix 层 + 所有层 Activation仅 Input Embedding 层Prompt Encoder (LSTM/MLP)
参数量级~0.1%<0.01%~0.1% - 1%
模型结构修改需修改 Attention 掩码无需修改需添加 Prompt Encoder
适用任务生成任务为主NLU 任务为主NLU + 知识探测
可解释性较低低中等

局限性与挑战

尽管冻结 LM 微调 Prompt 的范式具有诸多优点,但仍存在一些局限性:

  1. 可解释性差:这是所有连续型 Prompt 的统一问题,难以直观理解 Prompt Embedding 的具体含义。
  2. 收敛更慢:更少的参数想要撬动更大的模型,需要更复杂的空间搜索,导致训练收敛速度较慢。
  3. 过拟合风险:理论上 Prompt 作为探针,但实际模型是否真的使用 Prompt 部分作为探针,还是直接去拟合任务导致过拟合,是一个待确认的问题。
  4. 不稳定性:Prompt-Tuning 和 P-Tuning 在某些基准测试(如 SuperGLUE)上存在无法复现的问题,结果可能存在波动。

实施建议

在实际应用中,建议遵循以下步骤以确保最佳效果:

  1. 模型选择:优先选择大规模预训练模型(如百亿参数以上),因为规模效应能显著提升 Prompt Tuning 的性能。
  2. 初始化策略:在小规模模型上,建议使用标签词或高频词初始化 Prompt Embedding;在大规模模型上,随机初始化即可。
  3. 学习率调整:由于参数量少,建议适当降低学习率,避免破坏预训练权重。
  4. 硬件资源:利用 LoRA 或其他 PEFT 工具链进行部署,可以进一步降低显存需求。

结语

冻结 LM 参数进行 Prompt 微调代表了大模型应用的一个重要方向。通过 Prefix-Tuning、Prompt-Tuning 和 P-Tuning 等技术,开发者可以在极低的计算成本下实现高效的下游任务适配。随着模型规模的进一步扩大和技术的持续演进,这些方法有望成为工业界微调大模型的主流方案。

目录

  1. 冻结语言模型参数进行 Prompt 微调的技术解析
  2. 引言
  3. Prefix-Tuning
  4. 背景与起源
  5. 关键细节与优化
  6. 1. Prefix 矩阵分解
  7. 2. Prefix 长度选择
  8. 3. 性能表现
  9. Prompt-Tuning
  10. 简化与核心思想
  11. 效果与消融实验
  12. 可解释性分析
  13. P-Tuning
  14. 设计思路
  15. 评测结果
  16. 方法对比与总结
  17. 局限性与挑战
  18. 实施建议
  19. 结语
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • LeetCode 141 环形链表判断:哈希表与快慢指针解法
  • Web 安全题目解题技巧总结:加密、反序列化与 RCE
  • Vivado 许可证获取与配置指南
  • 昇腾 NPU 部署与测评 CodeLlama-7b-Python 模型
  • 通义万相 2.1 多模态生成技术解析与应用前景
  • IntelliJ IDEA 中 GitHub Copilot 安装与实战技巧
  • RAG 检索增强生成:概念、原理与实战
  • 网络安全工程师职业发展路径与核心技能解析
  • HTML5+CSS3+JavaScript 实现高木同学圣诞树 GalGame 开发
  • Adaptive RAG 系统搭建:从向量检索到 Streamlit 前端全流程
  • Node-RED 智能家居自动化配置指南
  • SO-ARM100 协作机器人搭建与编程指南
  • OpenClaw Linux 部署指南:模型接入与飞书机器人配置
  • Java 开发环境优化:Maven 镜像与 Spring 脚手架配置
  • 使用 Go 构建命令行 AI 对话客户端:环境部署与核心实现
  • Android IM 即时通讯应用开发实战:基于 Smack 与 Openfire
  • 8款降低AIGC检测率的论文辅助工具推荐
  • 近端策略优化算法 (PPO) 详解与 PyTorch 实战
  • 微服务架构中 LangChain4j 组件的部署方案与最佳实践
  • 多源 BFS 算法原理及经典题目解析

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online