如何高效微调大模型?五大前沿 PEFT 技术为你揭晓,零基础入门到精通,收藏这一篇就够了

454 篇文章 9 订阅
15 篇文章 0 订阅

大模型的微调一直是一个复杂而资源密集的任务。然而,近年来出现了一些高效的微调技术(PEFT),使得这一过程变得更加简便和高效。本文将详细介绍几种主要的 PEFT 技术,包括 Adapter Tuning、Prefix Tuning、Prompt Tuning、P-Tuning v1 和 P-Tuning v2。

一、Adapter Tuning :开启大模型 PEFT (2019)

Adapter Tuning 是一种在 2019 年提出的创新微调技术,旨在通过添加额外的适配层来提高模型的微调效率。

  • **Adapter 核心技术解读:**Adapter 嵌入 Transformer 网络

  • 在两个FNN层后增加 Adapter 层:Adapter 层被嵌入在 Transformer 网络的两个 FNN 层之间,通过增加额外的层来增强模型的表现。这一方法通过在原有网络结构中引入适配层,使得模型在特定任务上的微调变得更加高效。

  • Adapter 内部学习降维后特征,减少参数:Adapter 层通过学习降维后的特征,有效地减少了参数数量。这种降维方法不仅能保留原有特征的关键信息,还能显著降低计算复杂度,从而提升模型的运行效率。

  • 使用skip-connection,最差退化为 identity:通过使用 skip-connection 技术,即使在最差情况下,Adapter 层也可以退化为 identity,从而保持模型的稳定性。Skip-connection 确保了信息能够无阻碍地通过不同层,从而提高了模型的稳健性和可复用性。

  • 提升微调效率和稳定性,可复用性增强:Adapter Tuning 提升了微调效率和稳定性,同时增强了模型的可复用性,使得在不同任务间切换更加便捷。这一技术不仅减少了对新数据的依赖,还提高了适应新任务的能力。

二、Prefix Tuning :自动化构造 Prompts (2021)

Prefix Tuning 是在 2021 年提出的一种方法,通过在预训练模型前添加前缀模块来实现高效微调。

  • **Prefix Tuning 核心技术解读:**Prefix 嵌入 Transformer 网络

  • 在预训练 Transformer 前增加 Prefix 模块:Prefix Tuning 方法通过在预训练的 Transformer 模型前增加一个前缀模块,仅训练前缀部分,而冻结 Transformer 的全部参数。这种方法通过引入任务特定的前缀来引导模型生成特定任务的输出。

  • 仅训练 Prefix,冻结 Transformer 全部参数:Prefix Tuning 仅对前缀部分进行训练,而冻结其余的模型参数,从而大大减少了训练所需的计算资源和时间成本。这一方法特别适合那些参数数量庞大的模型,如 GPT-3,使得微调这些模型成为可能。

  • 降低 GPU 算力和训练时间成本:通过减少需要训练的参数数量,Prefix Tuning 显著降低了 GPU 算力和训练时间成本。这不仅提高了模型训练的效率,还降低了硬件需求,使得更多研究者能够进行大模型的微调。

  • Prefix:任务特定的指令集,引导模型生成特定任务的输出:前缀作为任务特定的指令集,通过引导模型生成特定任务的输出,提高了模型在特定任务上的性能。这种方法使得大模型能够更加灵活地适应不同的任务需求,增强了其实用性。

三、Prompt Tuning :Soft Prompts 开创者 (2021)

Prompt Tuning 是 2021 年提出的一种使用软提示词来引导模型进行任务的技术。

1、Prompt Tuning 主要贡献

  • 直观性:Prompt Tuning 使用直观的语言提示来引导模型,使其更易于理解和操作。这种方法通过人类可理解的提示词来引导模型,从而使得模型的操作更加透明和直观。

  • 适用性:这种方法特别适用于那些预训练模型已经掌握了大量通用知识的情况,通过简单的提示就能激发特定的响应。Prompt Tuning 通过利用模型已掌握的知识,快速适应新的任务,提高了模型的通用性。

  • 微调成本低:Prompt Tuning 可以在微调时减少所需的计算资源,同时保持良好的性能。这一方法通过减少对模型参数的调整,降低了训练成本,使得微调变得更加经济高效。

**2、Prompt Tuning 核心技术解读:**Prompt Tuning 训练方法

  • 设计提示:根据任务选择硬提示(固定文本)或软提示(可训练向量)作为输入。硬提示通常是固定的文本片段,而软提示则是可训练的向量,能够根据任务需求进行调整。

  • 融入输入:硬提示直接加入文本,软提示作为向量加入序列。在实际应用中,硬提示可以直接插入到输入文本中,而软提示则以向量的形式嵌入到输入序列中。

  • 训练过程:硬提示下全面微调模型;软提示下只调整提示向量,其他参数不变。硬提示需要对模型进行全面微调,而软提示则仅调整提示向量,从而减少了训练复杂度。

  • 执行任务:训练后模型用于 NLP 任务(如问答、摘要),输出由提示引导。经过训练的模型能够在不同的 NLP 任务中表现出色,其输出由预设的提示词引导,从而提高任务执行的准确性和效率。

四、P-Tuning v1 :解决人工设计 Prompt 的问题 (2021)

P-Tuning v1 是 2021 年提出的一种技术,通过将提示(Prompt)转化为可学习的嵌入层来解决人工设计提示的局限性。

1、P-Tuning 的创新之处

  • 离散性(Discreteness):预训练优化过的正常语料嵌入层与直接对输入提示嵌入进行随机初始化训练相比,可能会导致后者陷入局部最优解。P-Tuning 通过优化提示嵌入层,避免了这种局部最优解的问题。

  • 关联性(Association):难以有效捕捉提示嵌入之间的相互关系。P-Tuning 通过学习提示嵌入层的内部关系,提高了提示的有效性和模型的适应性。

2、P-Tuning v1 核心技术解读

2.1、 **一个关于“The capital of Britain is [MASK]” 示例:**蓝色是上下文 “Britain”、 **红色是目标单词 “[MASK]”、**橙色区域是提示词。
  • 传统方式与 P-Tuning 对比:在传统方式中,提示生成器只接收离散奖励,而在 P-Tuning 中,连续的提示嵌入(Prompt Embedding)和提示编码器(Prompt Encoder)以可微的方式进行优化。P-Tuning 通过优化提示嵌入层,使得模型能够更有效地利用提示信息,从而提升任务执行效果。
2.2、 P-Tuning 和 Prefix-Tuning 的主要区别
  • 嵌入位置:Prefix Tuning 在每个注意力层增加前缀嵌入来引入额外参数,而 P-Tuning 的嵌入位置更为灵活,仅在输入时加入嵌入。P-Tuning 的这种灵活性使得它在不同任务中具有更高的适应性。

  • 初始化方法:Prefix Tuning 用多层感知机(MLP)进行初始化,而 P-Tuning 则通过长短期记忆网络(LSTM)加 MLP 进行初始化。这种初始化方法提高了 P-Tuning 的性能,使其在不同任务中都能表现出色。

五、P-Tuning v2 :提升小模型和多任务微调质量 (2022)

P-Tuning v2 是对 P-Tuning 的改进版本,旨在解决小模型和多任务微调中的性能问题。

1、P-Tuning 在小模型上性能不佳

P-Tuning 在小模型上的性能表现不如在大型预训练模型上。因此,P-Tuning v2 旨在改进这一问题,使得小模型也能通过提示调整(Prompt Tuning)达到类似全面微调的效果。

2、P-Tuning v2 的目标

P-Tuning v2 的目标是使提示调整在不同规模的预训练模型上,针对各种下游任务都能达到类似全面微调的效果。这一目标通过优化提示长度、多任务学习和重参数化等技术手段得以实现。

3、之前方法的限制

  • 模型规模差异:在大型预训练模型中,Prompt Tuning 和 P-Tuning 能取得与全面微调相似的效果,但在参数较少的模型上则表现不佳。P-Tuning v2 通过优化提示长度和重参数化技术,解决了这一问题。

  • 任务类型差异:Prompt Tuning 和 P-Tuning 在序列标注任务上的表现都较差。P-Tuning v2 通过改进提示嵌入层的设计,提高了在序列标注任务上的表现。

4. P-Tuning v2 核心技术解读

4.1 重参数化(Reparameterization)
  • Prefix Tuning 和 P-Tuning 中的 MLP:P-Tuning v2 的研究发现,针对不同的任务和数据集,这种方法可能产生相反的效果,特别是在自然语言理解领域。通过重参数化技术,P-Tuning v2 提高了提示嵌入层的有效性。
4.2 提示长度(Prompt Length)
  • 任务对应的最优提示长度:不同任务对应的最优提示长度不一样,例如在简单的分类任务中,长度为20的提示可能是最佳选择,而对于更复杂的任务,则需要更长的提示长度。P-Tuning v2 通过优化提示长度,使其在不同任务中都能达到最佳效果。
4.3 多任务学习(Multi-task Learning)
  • 多任务学习提供更好的参数初始化:对于 P-Tuning v2 而言,多任务学习是可选的,但它可以提供更好的参数初始化,从而进一步提升模型性能。多任务学习通过共享参数,提高了模型的泛化能力和适应性。
4.4 分类头(Classification Head)
  • 语言模型(LM)头的应用:在 Prompt Tuning 中,使用语言模型头来预测动词是核心思路。然而,P-Tuning v2 的研究发现,在完整数据集上这种做法并非必要,且与序列标记任务不兼容。因此,P-Tuning v2 采用类似 BERT 的方式,在第一个 token 处应用随机初始化的分类头。这一改进使得 P-Tuning v2 在序列标注任务中表现更加稳定。

通过以上对大模型高效微调(PEFT)技术的详细解读,希望能够帮助读者更好地理解和应用这些技术,以提升模型的微调效率和性能,迎接AI领域的更多挑战。

AI大模型学习福利

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版CSDN大礼包:《AGI大模型学习资源包》免费分享

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版CSDN大礼包:《AGI大模型学习资源包》免费分享

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版CSDN大礼包:《AGI大模型学习资源包》免费分享

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版CSDN大礼包:《AGI大模型学习资源包》免费分享

四、AI大模型商业化落地方案

img

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版CSDN大礼包:《AGI大模型学习资源包》免费分享

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

  • 17
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在实战操作中,PEFT库可以用来微调BERT模型,以进行文本情感分类任务。首先,我们需要准备一个包含大量文本和标签的数据集,用于训练和验证BERT模型。然后,我们需要利用PEFT库中提供的工具和接口,将数据集转换成BERT模型可接受的格式,并进行数据预处理,如分词和填充等操作。 接着,我们可以利用PEFT库中提供的预训练模型,加载BERT模型的参数和网络结构,并在数据集上进行微调微调的过程中,我们可以通过调整学习率、批大小和训练轮数等超参数,来优化模型的性能。在每个训练轮数结束后,我们可以利用PEFT库中的评估工具对模型进行评估,以了解模型在验证集上的性能表现。 最后,当模型在验证集上的性能达到满意的水平后,我们可以使用PEFT库提供的保存模型工具,将微调后的BERT模型保存下来,以备在实际应用中使用。通过PEFT库的实战操作,我们可以有效地利用BERT模型进行文本情感分类任务,提高模型的准确性和泛化能力,从而更好地满足实际应用的需求。 PEFT库的实战操作不仅帮助我们更好地理解和使用BERT模型,也为我们提供了一套完整的工具和流程,使得模型训练和应用变得更加简单和高效。 PEFT库实战(一): lora微调BERT(文本情感分类) 的操作流程清晰,易于上手,为我们在文本情感分类任务中的应用提供了有力的支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值