参数高效微调(PEFT)是为解决大模型全量微调成本高的问题而诞生的技术,主流方法可归为参数附加、参数选择、低秩适配三类,各类方法及细分技术在原理、参数量、适配场景等方面差异显著,以下结合博客内容总结整理具体信息:

  1. 参数附加方法这类方法核心是在原模型中新增少量可训练模块,冻结原始参数,仅训练新增模块来适配任务,优势是不改动原模型核心结构,劣势多为增加推理时长或计算量。
    方法 核心原理 关键差异
    Adapter Tuning(适配器微调) 在 Transformer 层间插入小型适配层,适配层通过简单网络结构捕获任务特征。微调时仅训练适配层参数,冻结原始模型权重 会加深模型结构,导致推理时长增加,不过新增参数量极少,适配各类 NLP 基础任务
    Prefix Tuning(前缀微调) 在输入文本前添加连续的任务特定向量前缀,该前缀无对应真实 Token,仅通过训练前缀向量引导模型适配生成类任务 仅增加输入侧的向量参数,无需改动模型内部结构,但输入长度增加会提升计算量,且前缀长度超参需精细调整才能保证效果,更适配文本生成任务
    Prompt Tuning(提示微调) 为每个下游任务在输入前添加若干可调软提示 Token,冻结模型主体,仅优化这些软提示参数 参数量极小,如针对 T5 - XXL 模型仅需优化 20480 个参数,在少样本场景表现突出,但在小于千亿参数的小型模型上效果较差
    P - Tuning v2 针对提示调优的缺陷,在词嵌入层和每个 Transformer 层前均添加连续提示参数,实现深度提示训练 弥补了小型模型上提示调优效果差的问题,缩小了与全量微调的性能差距,适配更多规模模型和复杂任务,但相比基础提示调优,参数量略有增加
  2. 参数选择方法该类方法不新增参数,而是从原始模型参数中筛选对下游任务关键的部分进行微调,其余参数冻结,核心是精准定位关键参数以平衡性能与效率。
    方法 核心原理 关键差异
    BitFit 仅选择模型中的偏置参数(Bias)进行微调,认为偏置参数对任务适配的边际贡献显著 参数量极少,训练和存储成本极低,但仅依赖偏置参数,在复杂领域任务中性能上限较低
    Child - tuning 基于模型训练的 “婴儿期” 特性,选择训练初期更新幅度较大的参数作为可训练参数,冻结其余稳定参数 能精准捕捉任务相关参数,在分类、问答等任务中效果较好,不过参数筛选逻辑较复杂,对数据分布较敏感
    FishMask 通过 Fisher 信息矩阵评估参数对任务的重要性,筛选出高重要性参数组成可训练子集 筛选的参数针对性强,性能更接近全量微调,但 Fisher 矩阵计算会产生额外计算开销,适用于对性能要求较高的场景
  3. 低秩适配方法这类方法以低秩矩阵近似模拟模型参数的更新增量,冻结原始权重,仅训练低秩矩阵,兼顾性能与效率,是目前应用最广泛的一类方法,其细分变体针对性解决了基础方法的缺陷。
    方法 核心原理 关键差异
    LoRA 在 Transformer 层的权重矩阵旁添加由降维矩阵 A 和升维矩阵 B 组成的旁路,用 AB 矩阵乘积模拟参数更新增量 不改变模型结构和输入长度,参数量骤减(相比 GPT - 3 全量微调参数减少 10000 倍),性能接近全量微调,适配多数大模型和任务,但秩是固定超参,调整需重新训练
    DyLoRA 为每个 LoRA 块设计投影矩阵和秩范围,训练中通过信息排序和抽样动态调整秩的大小 解决了 LoRA 秩固定的问题,训练速度提升 4 - 7 倍,且在宽秩范围内性能稳定,适合需要灵活调整模型复杂度的场景
    AdaLoRA 通过奇异值分解评估权重矩阵重要性,为高重要性矩阵分配更多参数,裁剪低重要性矩阵的奇异值 实现参数的自适应分配,在减少计算量的同时提升性能,相比 LoRA 在多任务适配中表现更优,但奇异值分解增加了少量计算步骤
    QLORA 基于 4bit NF4 量化格式,结合双重量化和分页优化器,在量化模型基础上进行低秩适配 显存占用大幅降低,可在单 48GB GPU 上微调 650 亿参数模型,且保持 16bit 精度性能,适合超大规模模型在资源受限设备上微调
    OA - LORA 采用分组运算符,在微调时量化 LLM 权重,同时保证适配过程的自由度 微调与推理效率均高于 LoRA 和 QLORA,无需训练后量化,避免精度损失,实现简单,适配需要量化部署的工业场景
Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐