AI 文摘

大模型的参数高效指令调优方法对比研究





作者: 人工智能技术与时代人物风云 来源: 人工智能技术与时代人物风云

https://arxiv.org/pdf/2401.00788.pdf  
https://github.com/bigcode-project/astraios  

随着大规模语言模型(LLMs)在软件工程任务中的应用,如何有效地对这些模型进行微调以提高性能和降低计算成本成为了一个关键问题。本文介绍了一项名为ASTRAIOS的研究,旨在探讨不同参数高效微调(PEFT)方法在大规模代码语言模型上的表现,并分析它们在不同任务和数据集上的性能。

  • 作者选择了StarCoder系列作为基础模型,并使用CommitPackFT+OASST数据集对其进行指令调优。接下来,他们实现了7种不同的调优方法,包括全参数微调(FFT)和6种PEFT方法,如LoRA、P-Tuning、(IA)3等。这些方法在1B、3B、7B和16B四个不同规模的模型上进行了实验。

  • 实验结果表明,FFT在所有规模上通常具有最佳的下游性能,而PEFT方法的有效性则取决于模型规模。在16B参数时,Parallel Adapter和LoRA是与FFT竞争最激烈的方法。然而,在1B参数时,它们都略逊于P-Tuning和(IA)3。因此,在选择PEFT方法时,应考虑手头的模型规模 。总体而言,LoRA通常在成本和性能之间提供了最有利的权衡。

  • 作者还研究了更新参数、交叉熵损失和任务性能之间的关系。他们发现,小型模型的PEFT调优效果可以很好地推广到较大的模型,而指令调优中的验证损失可以作为整体下游性能的可靠指标。

  • 此外,实验还发现,使用PEFT微调后,较大的代码模型在代码生成任务上表现更好,但在代码理解任务(如克隆检测和缺陷检测)上并未表现出类似的模式。同时,增加模型规模可以提高生成任务性能,但可能导致对抗性示例的脆弱性和不安全代码的偏见。

综上所述,ASTRAIOS研究揭示了不同PEFT方法在大规模代码语言模型上的表现差异,并为选择合适的调优方法提供了有价值的见解。这项研究有助于进一步优化代码LLMs的性能,降低计算成本,并为未来的软件工程任务提供更强大的支持。

更多AI工具,参考Github-AiBard123国内AiBard123

可关注我们的公众号:每天AI新工具