PEFT(Parameter Efficient Fine Tuning)参数高效微调是一种在微调预训练大模型时,只对适配器模块、低秩增量矩阵和提示嵌入这些少量的新增参数进行训练,并对原始模型的大部分权重进行冻结的策略。
PEFT能够在计算和存储成本大幅度降低的前提下,仍然能够保持与全量微调相近的性能。
那什么要有这样一种微调方法呢?
主要是全量微调对显存、算力以及存储的要求都非常高,并且迭代速度很慢,不利于多任务和在线更新;
如果是在小样本场景下还容易出现过拟合问题。
而我们的PEFT可以通过只更新数百万级别或者更少的参数,就能好实现高效微调和快速迭代。
PEFT的主要优势是:
1.PEFT方法能够将可训练参数比例控制在0.1%~5%之间,能够显著地节省计算资源和存储空间。
2.少量的可训练参数往往意味着反向传播与梯度更新的计算量大幅度下降,训练时间也能够缩短数倍,这样就能加快训练的收敛速度。
3.由于PEFT保留了预训练阶段学习到的通用知识,因此在数据稀缺或者小样本环境下,还能够降低过拟合的风险。
4.PEFT生成的Adapter、LoRA和Prefix这些增量模块可以和基础模型分离存储,这样不同的任务只需要加载对应的模块。