大模型参数高效微调 (PEFT) 浅析

如题所述


在AI技术的浪潮中,微调作为迁移学习的基石,尤其在大模型时代显得尤为重要。曾经,几百万参数的小型模型全参数微调轻而易举。然而,随着GPT系列的崛起,模型规模的飞跃使得全参数微调在内存和效率上面临挑战。这时,Parameter-Efficient Fine-Tuning(PEFT)应运而生,如LoRA,它在大模型的调优过程中扮演了关键角色。


PEFT的方法多种多样,例如LoRA通过低秩自适应方法,减少了显存占用,提升了效率。Prefix-tuning和Prompt-tuning则通过连续或离散的prompt,自动适应不同任务需求,无需手动设计。P-tuning则进一步探索了连续prompt的潜力,强调prompt embeddings的关联性和优化策略。这些方法都是在保持模型结构不变的情况下,仅对少量额外参数进行微调,达到与全参数微调相近的效果。


In-context learning虽然不是微调,但它的启发式方法促使后续工作转向连续prompt。例如,Prefix-tuning通过虚拟token,自动确定prompt,而非依赖人工设计,这在表达力和效率上更具优势。论文Why Can GPT Learn In-Context?提出了模型在prompt示例上隐式执行梯度下降的观点,揭示了其内在机制。


对于Prefix-tuning的实践,它的核心在于Transformer block输入处添加连续化的prefix,长度选择对任务性能至关重要。Prompt-Tuning则简化了这一过程,仅在嵌入层后拼接prompt,但其在大规模模型上的优势并不明显。P-Tuning通过双向LSTM连接prompt embeddings,强化了prompt的关联性,尤其在NLU任务上表现出色。


P-Tuning v2的出现,旨在提高泛化性,解决了早期soft prompt方法在特定任务上的不足。它提倡在Transformer的每个block输入都加入prefix,以增强对最终预测的影响。通过多任务学习和跨任务微调,P-Tuning v2展示了更强的适应性。


Adapter方法则以简单易懂的方式,通过添加prompt到特定Transformer层,解决训练稳定性问题。LoRA和QLoRA作为主流的PEFT技术,LoRA通过近似参数更新,而QLoRA则通过量化技术节省内存,保持了高效的同时,保证了模型性能。


总结来说,PEFT技术为大模型微调提供了高效且资源友好的解决方案,通过微调少量额外参数,实现了与全参数微调相当的性能。LoRA和QLoRA成为首选,而其他方法如Adapter和P-Tuning系列则根据特定任务和应用场景有所不同。这些方法的创新和优化,展现了AI技术在适应性和效率上的持续进步。


温馨提示:答案为网友推荐,仅供参考
相似回答