模型融合(Model Merging):合理性、常见技术及其特性
发布网友
发布时间:2024-09-06 17:05
我来回答
共1个回答
热心网友
时间:2024-10-24 09:04
在开源LLM的多元世界里,融合模型(merged model)常常占据排行榜前列,尤其是通过将多个SFT模型在参数层面整合。模型融合,实质上是通过合并来模拟多任务学习,旨在让融合模型同时掌握多种任务,可能在领域内性能更优,泛化到未知领域的能力也更强。这种技术在LLM时代显得尤为契合。
对于其合理性,我们首先要考虑SFT过程中的参数冗余。所谓的delta parameters,即模型参数更新后的变化,研究表明,通过类似dropout的方法,可以随机丢弃大量冗余的delta parameters,即使大量丢弃,对模型性能影响不大,尤其是对于大型模型。
task vector的正交性也是关键,不同任务的task vector之间通常相互独立,这使得直接对参数平均也能取得不错的效果。模型融合需要满足的前提是,参与融合的SFT模型源于同一基础模型,以保证delta parameters的数值控制在合理范围,否则可能影响融合效果。
模型融合的方法多种多样,如Simple Averaging,它基于参数的冗余性和正交性;Fisher Averaging则采用加权合并,重视每个参数的重要性;Task Arithmetic通过任务权重和scale term进行融合;RegMean针对linear layer优化输出一致性;TIES-Merging则通过减少干扰来优化模型融合;DARE则提供参数稀疏化的预处理手段。
融合模型的特性中,尽管在同任务上的表现通常不如单独的SFT模型,但随着技术进步,部分融合方法如DARE + Task Arithmetic已展现出提高性能的潜力。然而,模型融合的模型数量越多,效果损失也越大,但这种损失在单任务模型和多任务学习模型之间通常更小,说明融合可能带来更稳健的泛化能力。
除了标准的多任务适应,模型融合还有其他应用场景,如理解模型如何“解锁”特定任务,有助于优化LLM的适应能力。通过本文对五种融合算法和一种预处理算法的介绍,希望能帮助读者更全面地理解模型融合这一技术。