AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


一文读懂大模型微调策略:P-tuning 与 LoRA
发布日期:2024-05-02 20:11:09 浏览次数: 3013


P-tuning与LoRA



对于

P-tuning(Prompt tuning) 与 PEFT(Parameter Efficient Fine-Tuning)是大模型Fine-tuing最常用的两种策略。首先简单介绍下PEFT,


PEFT

旨在通过更新模型中一小部分参数的方式来实现模型的微调。这类方法通常涉及到选择性地更新模型的某些部分,比如只更新模型的最后几层、仅仅更新注意力模块的参数,或者通过引入额外的可训练参数(这些参数数量远小于原模型)来调整原有模型参数的行为。优势在于能够在极大地减少参数更新数量的同时,依然保持或仅轻微牺牲模型的性能


而LoRA是PEFT策略中的一种具体实现方式,所以下面主要还是从p-tuning与LoRA(Low-Rank Adaptation)两者的区别和使用场景上来进行说明:


P-tuning

Prompt tuning 是一种调整大型预训练语言模型(如GPT-3)以适应特定任务的技术,它通过修改输入的“提示”(prompt)来实现,而不是直接修改模型本身的参数(模型参数是固定的,不参与训练)。这种方法能在给定输入提示后生成高质量、相关性强的文本。所以它主要侧重于优化输入的prompt,本质上p-tuning优化的过程其实只是在优化词嵌入的向量。


P-tuning的优势

1、通过简单更改输入prompt,可以灵活地适应各种不同的任务,而无需对模型架构进行任何修改。

2、模型的训练和优化过程通常更快,允许更快速的实验迭代和调整。


P-tuning的不足:

如果我们的目标任务只有很少的训练样本,那么在 Prompt Tuning 过程中,微调的词嵌入向量可能会过于强烈地适应这些有限的训练样本,而导致过拟合。


LoRA

LoRA与P-tuning不同,它旨在调整参数的数量,通过对模型中的权重矩阵进行低秩更新来实现高效的微调,以提高模型的性能。LoRA会为预训练模型的某些层添加一些参数(一般添加的参数规模都不会太大),这些参数在微调阶段会进行优化。调整后的参数并不改变原始预训练模型的参数,因此不会影响模型的性能,并且调整后的参数可以帮助模型更好地适应特定任务,从而改善性能。

LoRA 的一个常见实现是为Transformer模型的每一层添加新的适配器(adapter)。这些适配器是具有可学习参数的小型神经网络。在微调阶段,我们会保持预训练模型的主要参数不变,只优化这些适配器的参数。


LoRA的优势:

1、通过更新更少的参数,LoRA可以显著减少微调过程中的内存占用和计算需求。

2、LoRA允许模型在保持预训练参数不变的同时,通过小规模更新新任务,增加了模型的灵活性和适应性。


LoRA的不足:

因为是直接修改模型内部的参数,带来的影响可能会更全面地影响模型的行为,所以难度和复杂性比P-tuning更高。


使用场景

P-tuning:在自然语言处理任务中优势明显,如文本生成、摘要或翻译,能够通过修改输入提示来快速适应各种场景,更适合于特定问答领域。


LoRA:适合需要对模型的内部逻辑进行细微调整的复杂任务,如深度学习任务中的细粒度分类或特定领域的问题。

---------------


总结:P-tuning 和 LoRA 都是调整预训练模型以适应特定任务的有效方法,选择哪一种取决于具体的任务需求、资源限制和期望的灵活性。P-tuning 通过修改输入prompt,LoRA通过调整参数,为各种机器学习任务提供了一种高效且性能优化的解决方案,有效减轻计算和存储负担。

(正文完)


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询