大语言模型微调

大语言模型微调

💡 原文中文,约5900字,阅读约需14分钟。
📝

内容提要

微调是深度学习中的迁移学习方法,利用预训练模型适应新任务。根据任务差异,微调可分为全参数和部分参数微调;在资源有限时,部分参数微调能提高性能。微调还可分为监督与无监督微调,以及指令与对齐微调。参数高效微调方法如Adapter Tuning和LoRA,通过减少更新参数量降低计算成本。

🎯

关键要点

  • 微调是深度学习中的迁移学习方法,利用预训练模型适应新任务。
  • 微调可分为全参数微调和部分参数微调,部分参数微调在资源有限时能提高性能。
  • 微调还可分为监督微调和无监督微调,以及指令微调和对齐微调。
  • 参数高效微调方法如Adapter Tuning和LoRA,通过减少更新参数量降低计算成本。
  • 微调的目的是利用预训练模型的知识,减少新任务所需的计算资源和标记数据。
  • 全参数微调适用于任务与预训练模型差异较大的情况,但容易过拟合。
  • 部分参数微调仅对部分参数进行调整,能在较少资源下提高性能。
  • 监督微调使用有标签数据,无监督微调使用无标签数据进行模型调整。
  • 指令微调通过格式化实例改善模型性能,对齐微调则关注伦理表现。
  • 显存消耗与参数精度、模型参数、梯度和优化器状态等因素有关。
  • 参数高效微调方法包括引入新参数、微调部分参数和重参数化。
  • Prefix Tuning和Prompt Tuning是参数高效微调的具体实现,前者更新前缀参数,后者定义不同的Prompt。
  • P-Tuning将Prompt转换为可学习的Embedding层,增强模型的灵活性。
  • P-Tuning v2改进了Prompt Tuning和P-Tuning的局限性,提升了模型的通用性和任务适应性。
  • Adapter Tuning通过插入Adapter模块,仅更新新增参数以降低计算成本。
  • LoRA通过低秩分解降低特征矩阵的参数量,实现高效微调。
  • IA3通过学习向量对模型部分参数进行加权,优化少样本学习。

延伸问答

微调在深度学习中的作用是什么?

微调是迁移学习的一种方法,利用预训练模型的知识来适应新任务,减少计算资源和标记数据的需求。

全参数微调和部分参数微调有什么区别?

全参数微调对模型的所有参数进行调整,适用于任务差异较大的情况;部分参数微调仅调整部分参数,能在资源有限时提高性能。

什么是监督微调和无监督微调?

监督微调使用有标签的数据集进行模型调整,而无监督微调则使用无标签的数据集,通过学习数据的内在结构进行调整。

参数高效微调的优势是什么?

参数高效微调通过固定大部分参数,仅微调少量参数,显著降低计算成本,同时保持模型性能。

指令微调和对齐微调的目的是什么?

指令微调通过格式化实例改善模型性能,而对齐微调则关注模型与人类价值观的对齐,提高伦理表现。

LoRA微调方法的核心思想是什么?

LoRA通过低秩分解降低特征矩阵的参数量,以较小的参数量实现大模型的间接训练。

➡️

继续阅读