LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇 精华

发布于 2024-9-3 15:16
浏览
0收藏

​一、结论写在前面

论文标题:Model Merging in LLMs, MLLMs, and Beyond: Methods, Theories, Applications and Opportunities

论文链接:​​https://arxiv.org/pdf/2408.07666​

项目链接:​​https://github.com/EnnengYang/Awesome-Model-Merging-Methods-Theories-Applications​

模型合并是机器学习社区中一种高效的赋能技术,无需收集原始训练数据,也不需要昂贵的计算。随着模型合并在各个领域的日益普及,全面理解现有的模型合并技术变得至关重要。然而,文献中对于这些技术的系统性和彻底的综述存在显著的空白。

论文全面概述了模型合并的方法和理论、它们在各个领域和场景中的应用,以及未来的研究方向。具体而言,论文首先提出了一种新的分类方法,全面讨论了现有的模型合并方法。其次,论文探讨了模型合并技术在大规模语言模型、多模态大规模语言模型以及10多个机器学习子领域(包括持续学习、多任务学习、小样本学习等)中的应用。最后,论文强调了模型合并面临的挑战,并讨论了未来的研究方向。

总结起来,论文的主要贡献包括以下三个方面:

1.方法论概述:论文提供了模型合并技术方面的全面总结。具体而言,论文提出了一种新的分类法,将现有的模型合并方法分为两个阶段,并根据关键技术进一步细分每个阶段的方法。此外,论文还讨论了与模型合并相关的理论分析工作。

2.应用概述:论文提供了模型合并应用方面的全面总结。具体而言,论文探讨了模型合并在基础模型和10+个机器学习子领域的应用,展示了模型合并如何解决这些领域的现有挑战。    

3.未来方向:论文指出了模型合并的几个剩余挑战和未来方向。论文相信,未来需要从性能差距、理论分析、可信保证、跨学科应用等方面进一步探索模型合并。

二、论文的简单介绍

2.1 论文的背景

模型合并,也称为模型融合,是一种有效技术,它通过合并多个具有不同能力的独立模型的参数,构建一个通用模型,无需访问原始训练数据或昂贵的计算。与模型合并最相关的概念是集成学习,因为它们都促进了知识的融合和转移。如图1所示,它们之间的主要区别在于,集成学习必须保存所有个体模型,并在推理阶段融合多个模型的预测(或输出),而模型合并直接在参数级别进行合并,并且在推理阶段只有一个最终模型。这使得模型合并具有更吸引人的特性。

尽管模型合并是一个相对较新的主题,但它正在迅速发展,并已在多个领域找到了应用。例如,在基础模型中,通过不同下游任务微调的模型被合并,以增强大型语言模型的能力,而具有不同风格的图像生成模型被合并,以创建具有混合风格能力的新模型。特别是,近年来机器学习社区中预训练和微调的检查点数量呈指数级增长,包括Huggingface、torchvision 和timm等开源仓库,使用户能够轻松获取能力各异的训练有素的专家模型。这些丰富的模型仓库进一步推动了模型合并方向的快速发展。

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

图1:集成学习范式与模型合并范式的示意图。(a) T个独立模型用于T个任务,(b) 集成T个独立模型用于T个任务,(c) 一个合并模型用于T个任务。

随着模型合并在机器学习社区的各个领域中变得越来越流行,全面了解现有模型合并技术的优势和局限性以及它们在不同领域的应用变得至关重要。尽管社区已经做出了一些努力,但仍有很大的空白需要填补。更具体地说,Mergekit 、MergeKit 和 FusionBench 是技术报告,其中 MergeKit 仅讨论了七种代表性方法,而 FusionBench 讨论了八种合并方法。

此外,Zheng 等人 [214] 讨论了“从模型中学习”的主题,并且仅在整篇论文中以单个小节(仅一页)提及模型合并。与“模型合并”主题最相关的工作是 [96],但在应用方面,它仅在三种场景中讨论模型合并:联邦学习、微调和蒸馏。由于模型合并方向的快速发展,它也忽略了许多最近发表的文章。为了填补这些空白,本调查旨在阐明模型合并方向的方法、理论、应用和未来趋势,提供相关方法的全面分类。特别是,本文通过涵盖三个主要方面来增强对模型合并的全面理解:    

首先,现有的模型合并方法是如何分类的?论文首先在图 2提出了一种新的分类法,将现有的模型合并方法分为两个阶段 :合并前和合并中。(i) 合并前方法旨在为合并创造更好的条件。它进一步分为使用线性化微调来实现权重空间和输入空间的解耦,进行架构转换以将异构模型转换为同构模型,以及对齐权重以将它们放置在同一盆地中。(ii) 合并中方法侧重于设计复杂的技术将多个模型合并为一个。这些方法在合并模型时解决任务冲突和干扰问题。它们可以进一步分为基本合并方法,执行最简单的参数合并策略;加权合并方法,根据特定规则计算的重要性合并多个模型;子空间合并方法,将多个模型投影到稀疏子空间进行合并;基于路由的方法,根据推理期间的输入样本动态合并模型;以及基于后校准的方法,校正合并模型。除了这些方法外,论文还讨论了模型合并的理论或实证分析。

其次,哪些应用能从模型合并中受益?论文详细讨论了模型合并在基础模型和机器学习十余个子领域中的各种应用场景。如图 2(下部)所示,模型合并可应用于多种基础模型,包括大型语言模型、多模态大型语言模型和图像生成模型。例如,大型语言模型中的模型合并有助于缓解不真实和有毒输出、实现知识遗忘,并加速训练。此外,模型合并也出现在不同的机器学习子领域中,如持续学习、多任务/多域学习、小样本学习及其他领域,以解决各种挑战。例如,在持续学习中,模型合并可以减轻对旧任务的灾难性遗忘。在多任务学习、多目标学习和多域学习中,它促进了知识迁移。此外,在对抗学习中,模型合并可用于攻击和防御策略。

第三,模型合并的剩余挑战和未来研究机遇是什么?尽管合并方法取得了进展并广泛应用于多个领域,但该领域仍存在许多开放性挑战和未来研究方向。例如,随着任务数量的增加,现有方法与独立专家模型之间的性能差距逐渐显著更大。此外,当前的模型合并方法在合并过程中产生了巨大的内存成本,并且缺乏信任保证以及深入的理论分析。解决这些差距需要研究人员的巨大努力,以进一步推动该领域的繁荣发展。    

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

图2:机器学习中模型合并的分类法。这一通用框架涵盖了先进的模型合并方法和理论(上部分),以及模型合并技术在基础模型和超过10个机器学习子领域的实际应用(下部分)。

2.2 模型融合方法

论文首先在介绍模型融合的符号表示和问题定义。然后详细阐述先进的模型融合方法(表1总结了每类方法的主要目的)。现有的模型融合技术大致可以分为以下两类:(i) 合并前方法(Before Merging Methods):为模型融合提供更好的先验知识。(ii) 合并中方法(During Merging Methods ):通过各种策略解决任务冲突/干扰,然后执行参数合并操作。最后,论文总结了模型融合有效性的理论或解释。

表1:现有模型融合方法的总结。    

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

2.2.1 符号表示和模型融合问题定义

假设有 T 个相同架构的模型需要合并,它们训练的参数Φ。

2.2.2 预合并方法

为了为模型合并提供更好的前提条件,一类工作专注于独立模型的微调步骤,例如微调线性化模型而非非线性模型。此外,当需要合并的多个模型架构不一致时,必须预先转换为相同架构。最后,另一类工作尝试在合并前对齐权重/参数。

2.2.2.1 线性化微调

Ortiz-Jimenez 等人 [123] 揭示,有效模型合并的一个必要条件是权重解耦。这意味着权重空间的不同方向对应于输入空间中不相交区域的功能变化。

为了实现权重解耦,Ortiz-Jimenez 等人 [123] 提出在微调阶段沿着预训练模型的切线空间 [68] 对线性化模型进行微调,而不是在非线性模型的原始空间中进行。然而,对所有参数进行线性化微调比非线性微调成本更高。为了加速这一过程,一些工作建议仅对部分层进行线性化。此外,TAFT [105] 为 Transformer [169] 架构开发了一种高效的线性化方法,该方法直接为 Transformer 网络推导出封闭形式的线性化解。总之,在切线空间中进行微调使得更容易解耦输入空间和权重空间,从而减少后续模型合并时的干扰。

2.2.2.2架构转换

在某些情况下,需要合并的模型可能具有不同的架构,无法直接合并。为了解决这个问题,一些研究 [10, 120, 171, 172] 提出在合并前进行架构转换,即,将具有不同架构的多个模型转换为相同的架构,例如,将多个模型转换为指定的目标模型,即,将多个模型转换为相同的架构,以便进一步合并。因此,转换后的 GAN 模型具有相同的结构和共享知识,便于进一步的模型合并。

类似地,FuseChat [172] 提出合并具有不同架构和规模的聊天大型语言模型(例如,NH2-Mixtral-8x7B [75],NH2-Solar-10.7B [84],OpenChat-3.5-7B [173])。具体来说,FuseChat 首先使用知识蒸馏将所有架构转换为与 OpenChat-3.5-7B 匹配,然后执行模型合并操作。与上述基于蒸馏的方法不同,CLAFusion [121] 向较小的模型添加层/块(权重设置为单位矩阵),以使其架构与较大的模型对齐。总之,合并具有不同架构的模型需要首先将所有模型转换为通用架构,以便后续合并。    

2.2.2.3 权重对齐

深度神经网络的线性模式连通性(linear mode connectivity,LMC)特性表明,在多个局部最小值之间存在一条路径,沿着这条路径损失几乎保持不变。许多研究[38, 43, 117]表明,从相同的预训练模型开始并使用不同超参数配置进行微调的两个独立模型通常满足LMC。

此外,Adilova等人[3]和Zhou等人[216]将LMC的研究扩展到了层级。LMC特性意味着多个局部最小值在权重空间中可能是等价的,同一模型的不同权重配置可能代表相同的功能。受此启发,许多工作提出在合并/插值两个独立模型时,将一个模型的权重进行置换以与另一个模型对齐,如图 3 (b) 所示

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

图3:(a) 一种架构转换的示意图,将多个异构模型转换为同构模型,使得后续可以直接进行参数级合并操作。(b) 权重/参数对齐的示意图,即对神经网络模型6(1)进行置换,使其与模型对齐。

OTFusion [148] 和 Imfeld 等人 [66] 采用最优传输来软对齐跨模型的神经元。NeuronAlignment [162] 引入了一种低成本的启发式算法来近似最优神经元对齐。CCAMerge [58] 通过最大化神经元线性组合之间的相关性来进行置换。值得注意的是,Git re-basin [5] 提出了三种方法——激活匹配、权重匹配和直通估计——来对齐(或置换)在不同任务上训练的模型的权重。基于 Git re-basin,Peia 等人 [125] 进一步结合基于 Sinkhorn 的投影来改进这些对齐方法。此外,MuDSC [189] 提出同时在权重和激活空间中进行模型对齐。与启发式对齐策略不同,Deep-Align [119] 提出了一种基于学习的方法来进行权重对齐,采用了一种新颖的可学习架构,该架构以两组权重作为输入,输出一个用于对齐的置换矩阵。

尽管这些对齐算法取得了显著的改进,但Jordan等人[80]认为这些方法的成功依赖于模型中归一化层(如BatchNorm、LayerNorm等)的使用;没有这些层,匹配算法的性能会大幅下降。作者称此为“方差崩溃”问题,并提出了REPAIR方法来解决它。此外,Crisostomi等人[27]指出,先前的成对排列并不保证循环一致性,使得对齐脆弱。他们进一步提出在每一步同时全局优化所有层的排列。总的来说,与直接合并未对齐的模型相比,对齐的模型在合并过程中受到的干扰或冲突要小得多。    

2.2.3合并方法

这里详细讨论如何合并一组训练良好的模型。现有方法大致可分为五类:基本合并方法,基于权重的合并方法,基于子空间的合并方法,基于路由的合并方法,以及后校准方法。

2.2.3.1 基本合并方法

最直接的方法之一是对多个模型的参数进行直接加权平均[146, 168]。然而,简单权重平均的性能通常不尽如人意。最近,Task Arithmetic[65]引入了“任务向量”的概念(如图4(a)所示),表示在任务t上微调的模型参数减去预训练的模型参数。

换句话说,任务向量被认为是有意义地引导神经网络行为的。例如,多任务学习(MTL)可以通过添加任务向量来完成,遗忘可以通过减去任务向量来实现,论文可以从预训练模型中减去相应的任务向量,如图 4 ( c ),即在图 4 ( b ) 中,lambda 是一个超参数。

相反,当论文希望预训练模型忘记一个功能时。如图 4 ( d ) 所示,论文还可以通过任务向量类比实现任务类比,从而实现新任务的零样本学习。同样,PEMs [210] 通过将任务算术 [65] 扩展到参数高效的微调设置中,结合了具有不同能力的适配器。然而,基本合并方法的性能在大多数情况下并不令人满意,尤其是当任务相互干扰时。

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

图 4 :任务算术的图示 [65]。(a)“任务向量”的定义,即微调模型与预训练模型之间的差异。(b)通过减去任务向量实现知识遗忘。(c)通过合并多个任务向量进行多任务学习。(d)使用类比任务向量实现任务类比。

2.2.3.2 基于权重的合并方法

众所周知,不同的模型(或任务向量)代表不同的功能,直观上,不同的功能具有不同程度的重要性。因此,先进的基于权重的模型合并方法设计了各种巧妙的规则来确定合并系数,如图 5(a) 所示。然而,当模型数量庞大时,使用暴力网格搜索来寻找最优合并系数是不切实际的,因为涉及昂贵的搜索成本。

为了更有效地确定合并系数,Evolutionary-model-merge [6] 和 Checkpoint Merging [100] 分别使用进化算法和贝叶斯优化来高效搜索合并系数。AdaMerging [194] 利用梯度下降优化通过最小化未标记测试数据中的熵作为代理损失来学习合并系数。MetaGPT [215] 将模型合并问题视为多任务学习(MTL)形式,其目标是最小化合并模型的平均损失。    

上述复杂的加权方法在模型(或任务)层面上操作。众所周知,深度神经网络模型中的每一层甚至每个神经元都扮演着显著不同的角色,一些研究已经开发了更细粒度的加权合并策略。例如,Layer-wise AdaMerging [194] 和 aTLAS [206] 自适应地为每一层或模型合并中,分别针对模型的线性层和非线性层进行处理。RegMean [78] 表明,对于模型合并中的线性层,存在依赖于训练集提供的数据统计的闭式解,而非线性层则可以简单地执行权重平均。其他工作利用 Fisher 信息矩阵 [40] 在合并时评估参数的重要性。Fisher-Merging [113] 基于 t 的重要性进行模型合并。Fisher-nodes-merging [164] 提出了基于 Fisher 信息矩阵的模型合并方法。MaTS [155] 开发了 Fisher 合并的块对角近似方法。Daheim 等人 [29] 将加权平均的不准确性与梯度不匹配联系起来,并进一步提出了一种基于不确定性的算法来减少匹配误差,最终基于二阶 Hessian 估计进行模型合并。

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

图 5:(a) 基于权重的模型合并方法示意图。(b) 基于子空间的合并方法示意图,其中空白表示零值。(c) 基于路由的合并方法示意图,该方法根据输入动态执行模型合并。

2.2.3.3 基于子空间的合并方法

另一类先进的方法将模型转换为稀疏子空间进行合并,从而缓解任务间的干扰。神经网络的过参数化特性和模型剪枝的成功 [22, 54] 表明,从模型中移除大部分参数几乎不影响其准确性 [190]。这一洞察为模型合并开辟了新的机会,使论文能够从单个模型中移除不重要的神经元,并在参数子空间内合并多个稀疏模型,如图 5 (b) 所示。

TIES-Merging [190] 提出基于参数大小对每个单独模型进行修剪,仅保留大小前20%的参数。进一步建议消除参数符号冲突以减少干扰,并最终使用任务算术合并稀疏模型。类似地,Drop And REscale (DARE) [200] 也通过参数大小进行稀疏化,并强调了对稀疏模型进一步进行重缩放的重要性。除了移除权重最小的尾部参数外,Model Breadcrumbs [30] 强调了移除具有最大权重的参数(离群值)以进一步减少模型合并中的噪声并增强对超参数的泛化能力的重要性。TALL-masks [176] 根据与独立模型相关的预定义阈值为每个任务创建特定的掩码矩阵。与通过模型合并获得单一模型的标准做法不同,EMR-Merging [62] 提出在多个任务之间维护一个共享模型以及一个稀疏的任务特定模型。在这种方法中,共享模型在每个索引处的值是所有模型中参数值最大的。与上述启发式方法的掩码构建规则相反,Concrete [156] 将掩码构建和模型合并框架化为一个可学习的双层优化问题。外层优化掩码矩阵,而内层基于掩码矩阵合并模型并使用未标记的测试样本对其进行优化。    

2.2.3.4 基于路由的合并方法

鉴于输入样本/任务之间存在差异,模型在处理不同样本/任务时的能力可能会有所不同。如图5(c)所示,一些工作提出在推理阶段根据样本/任务动态合并模型(或层的子集)。

对于给定的输入,SMEAR [116]首先使用路由器输入到专家模块的分布来计算每个专家参数的加权平均。这种方法的优点是其计算成本与单个专家相似。Twin-Merging [108]也在推理阶段基于路由自适应地结合任务共享和任务私有知识。类似地,WeightEnsembling MoE [159]提出了一种动态合并的Transformer架构。具体来说,他们观察到微调模型中线性层的参数变化比非线性层更加剧烈,这也显著影响了合并性能。因此,他们使用标准加权平均来合并除线性层外的所有模块。线性层在推理过程中根据路由网络(以样本特征作为路由输入,以合并系数作为输出)动态加权和合并。PWE MoE [158]进一步将Weight-Ensembling MoE扩展到多目标优化设置,并使用偏好向量作为路由输入。

2.2.3.5 基于后校准的方法

近期,Yang等人[193]提出了一种后合并方法来校准合并后的模型。他们观察到,通过多种主流模型合并方法得到的合并模型存在表示偏差,即独立模型与合并模型提取的表示存在显著差异,导致合并模型的性能下降。为缓解这一问题,他们提出了一种名为“表示手术”的模块,用以校准表示偏差。其核心思想是通过“表示手术”使合并模型后的表示与独立模型的表示对齐。

2.2.4 模型合并的理论与分析

除了前面设计各种高级方法外,模型合并的理论和有效性分析同样至关重要。目前,关于模型合并的理论分析工作有限。根据待合并模型的来源,现有的理论分析大致可分为三类:(i)同一训练轨迹中不同检查点的模型合并,(ii)在同一数据集上微调的不同模型的合并,以及(iii)在不同数据集或任务上微调的不同模型的合并。

首先,一些分析针对单轨迹训练中的模型合并,通常指的是随机加权平均(SWA)或指数移动平均(EMA)。例如,Jain等人[69]从理论上证明了在最小二乘回归的背景下,EMA的过拟合风险是偏差项和方差项的上界。偏差项依赖于参数的初始化状态,一旦模型开始平均,随着迭代次数的增加,偏差项呈指数级下降。方差项取决于数据中固有的噪声协方差,当使用模型平均时,方差项的衰减速度更快[8]。类似地,Rame等人[132]将偏差-方差分解应用于领域泛化设置,以解释为什么模型平均能提高分布外性能。此外,Hardt等人[52]在凸假设下为SWA提供了稳定性边界,而Wang等人[177]进一步在凸和非凸情况下建立了泛化边界分析。

其次,一些研究从损失景观的连通性和平坦性角度解释了针对同一数据集进行不同超参数微调的多个模型的合并现象。具体而言,部分工作应用了神经网络的线性模式连通性(LMC)理论 [37, 47, 162] 来解释模型合并。LMC揭示了神经网络损失最小值在权重空间中并非孤立点。近期研究 [38, 43, 117, 217] 表明,从相同预训练模型出发并采用不同配置微调的两个独立模型通常满足LMC条件。换言之,LMC是一种普遍现象,通常出现在基于“预训练-微调”范式的微调模型中,这是当前机器学习社区的标准做法。因此,根据LMC进行权重对齐为模型合并提供了强有力的有效性保障 [5, 80]。另一方面,其他研究从更平坦的损失景观角度解释模型合并 [88],认为在相同数据下对多个采用不同优化配置微调的权重进行合并通常会收敛到一个平坦的局部区域。    

最后,Ortiz-Jimenez等人 [123] 基于在不同数据集上微调的多个模型进行分析,指出权重解耦是实现有效模型合并的必要前提。更具体地,Ortiz-Jimenez等人 [123] 对神经正切核(NTK)进行了理论和实证分析,并建立了任务算术 [65] 与NTK谱特性之间的有力联系。

2.3 基础模型中模型合并的应用

基础模型的出现,包括大型语言模型(LLMs)、多模态大型语言模型(MLLMs)和图像生成模型,是近年来人工智能领域技术进步的重要标志。然而,尽管这些大型模型取得了进展,它们仍面临诸多挑战,例如LLMs产生有害内容、MLLMs在融合不同模态信息方面的困难以及图像生成模型难以生成混合风格图像的问题。近期研究表明,模型合并技术为解决这些基础模型固有的挑战提供了有前景的解决方案。表 2首先简要概述了模型合并在基础模型中的应用。

表 2 :基础模型中模型融合技术的应用总结。

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

2.3.1 大型语言模型中的模型融合

近年来,大型语言模型(LLMs),如GPT-4 [2]、Gemini [163]、PaLM [23]和LLaMA [166],取得了显著进展,并广泛应用于各种任务中。尽管在大多数基本任务上表现超群,LLMs仍面临诸多挑战,包括生成违反法律或伦理的有毒内容、训练过程中使用未经授权的数据、高昂的训练成本以及在特定领域表现不足。模型融合技术为解决这些挑战提供了有前景的机会。

2.3.1.1 LLMs的人类偏好对齐

人类对于美学、政治或公平性往往持有不同观点。当LLMs服务于人类时,不同的人对模型有不同的期望,例如,有些人期望LLMs生成无害的回应,而另一些人则寻求有趣且愉快的互动[134]。因此,实际LLMs的开发通常分为三个阶段,以生成更有帮助、更准确且更安全的回应[107]:在大规模无监督数据上进行预训练,在具有高质量标注的小数据集上进行监督微调(SFT),以及与人类互动以进一步优化LLM对齐(例如,直接偏好优化(DPO)[131]或从人类反馈中进行强化学习(RLHF)[218])与人类偏好、奖励或价值观。

一些研究提出通过模型合并来实现更好、更安全或更快的用户偏好对齐。例如,ExPO [213] 通过在一个小规模的人类偏好数据上使用DPO或RLiHF对齐的中等模型构建任务向量,并将其添加到一个未对齐的SFT模型中。通过设置合适的合并系数,可以直接获得一个更强大的对齐模型。在AlpacaEval 2.0基准测试 [97] 中,将一个在10%/20%偏好数据上对齐的模型与SFT模型融合,其性能可与在完整偏好数据上对齐的模型相媲美。

DogeRM [98] 提出将奖励模型与在不同下游领域微调的LLMs合并,以直接创建领域专属的奖励模型。此外,Lu等人 [107] 提出了一种在线合并优化器,该优化器在RLHF的每一步中插值SFT模型的梯度。这种方法鼓励RLHF向奖励最大化方向优化,同时防止LLMs因RLHF而遗忘通用知识。除了偏好对齐,还有多项研究探讨了模型合并对LLMs安全对齐的影响 [11, 51, 199]。例如,Hammoud等人 [51] 发现合并两个安全对齐的模型可能会损害安全性。因此,他们建议在构建用于模型合并的合成数据时,明确将安全对齐作为优化目标。    

在实践中,用户往往拥有多种偏好的组合,而非单一偏好。由于偏好组合的无限性和高昂的训练成本,为每一种偏好组合单独训练模型是不现实的。因此,一些研究建议将具有不同奖励对齐的模型结合起来,创建一系列综合对齐的大型语言模型(LLMs)。例如,Rame等人[134]和Jang等人[72]分别提出了奖励汤(Reward Soups)和个人化汤(Personalized Soups),作为针对多样奖励的高效且灵活的解决方案。具体而言,奖励汤首先为每种奖励训练一个专家模型,然后通过线性插值这些专家模型的权重,以近似多种奖励组合下的帕累托最优解集。这种方法成本效益高,因为它仅需为每种奖励训练单独的模型,即可组合任何种类的奖励。

2.3.1.2 LLMs的去毒化

LLMs在各种应用中因不真实性和毒性问题而备受关注[60],例如在回答某些问题时出现侮辱、威胁和亵渎等。为了解决LLMs应用中的潜在安全风险,需要灵活的技术来减少有毒文本的生成,本质上是对LLMs进行去毒化。一个直接的解决方案是收集额外的非毒性数据来微调语言模型[83];然而,这种方法需要大量的计算资源,并可能干扰LLMs的一般能力。另一种方法是在解码阶段直接降低潜在有毒词汇的概率,这需要额外的指导信息[87]。近期研究表明,通过模型融合减少LLMs的有毒数据生成是一种简单有效的方案[60, 65, 210]。

任务算术[65]通过对在有毒数据(Civil Comments [13])上微调的GPT-2模型[130]的任务向量取反,表明这一操作有效降低了被分类为“有毒”数据的占比,同时在控制任务(WikiText-103)上语言流畅性变化不大。此外,一些参数高效的模型通过操纵少量参数来引导大型语言模型(LLMs)的非预期行为。PEM [210]通过取反在毒化数据上训练的LoRA [59](以及(IA)3 [102])模块,以保持语言能力的同时降低语言模型输出的毒性。Ethos [46]和Ext-Sub [60]指出,尽管有毒数据上的任务向量在事实上是错误的,但它也包含了关于语言建模和逻辑叙事技能的正确信息。因此,Ext-Sub将有毒任务向量分解为两个正交子空间,分别代表通用能力和破坏能力。然后通过仅移除代表破坏能力的分量来消除LLM中的有毒知识。

2.3.1.3 大型语言模型的知识遗忘

大型语言模型可能无意中学习到受版权保护的材料,引发重大的法律和伦理问题[1],以及关于负责任AI使用的更广泛问题[36]。在此背景下,《加州消费者隐私法案》[124]和欧盟的《通用数据保护条例》[57]规定了数据遗忘的权利。基础模型的知识必须适应这些规定。然而,从头开始重新训练排除受版权保护数据的成本是高昂的。例如,从头开始训练Llama-2-70B需要1,720,320 GPU小时[167]。传统方法通常使用梯度上升(GA)通过在特定要遗忘的数据上使用GA算法微调模型来实现遗忘[165, 196]。不幸的是,这种方法通常会灾难性地破坏模型其他部分的知识。也就是说,遗忘特定知识也会抹去其他应保留的知识。最近,许多基于模型合并技术的研究显示了在不损害其他知识的情况下遗忘LLM特定知识的潜力[36, 60, 65]。    

与基于遗传算法的方法不同,模型合并方法无需额外数据来维护旧知识。为了实现遗忘,模型合并通常将一个负向微调的模型融入目标模型中(即,从目标模型中减去特定任务的微调知识)。例如,任务算术[65]表明,否定任务向量会降低特定任务的性能,而对控制任务的影响不大。实验证明,模型合并可以在不影响控制任务性能的情况下,使微调模型遗忘目标任务的知识。类似地,稳定序列遗忘(SSU)[36]将这种遗忘扩展到大型语言模型(LLMs)的序列遗忘设置中,其中必须在不同时间步遗忘不同的版权内容。知识遗忘还可以遗忘预训练期间代表不良行为的样本。例如,FuseToForget[205]采用模型合并作为去偏工具,以减少语言模型中的隐私问题。FLearning[122]首先减去与要遗忘数据相关的参数,然后使用新数据对参数进行微调,以实现精确的知识更新。SKU[106]探索了在LLM中遗忘有害数据的方法,这是一个两阶段方案。首先,使用有害数据(如有害问答对)对LLM中与有害知识位置对应的参数进行微调(即任务向量),然后将任务向量从LLM中否定,以有效缓解LLM中的不良行为。总的来说,将相反(反专家)任务向量融入预训练模型中,可以有效完成机器遗忘的任务。

2.3.1.4 大语言模型的快速训练

训练大型语言模型需要在大量数据上进行多次迭代,这使得训练过程极为昂贵。例如,训练LLAMA2-70B模型使用2T令牌需要1,720,320 GPU小时[100]。加速LLM训练的方法包括混合精度训练、持续重训练和管道并行。另一种正交方法是训练轨迹中的检查点合并,它提供了一种简单有效的方法,既可以加速LLM训练,也可以在相同成本下提高训练性能。

第一类工作在LLM训练过程中,在单一训练轨迹中加入检查点以加速模型训练。例如,LAWA [81] 展示了在模型训练的中间阶段合并检查点可以加快训练过程。例如,在ImageNet数据集上训练ResNet50模型减少了68 GPU小时的训练时间,而在WikiText-103数据集上训练RoBERTa-Base模型节省了30 GPU小时。Sanyal等人 [143] 进一步表明,预训练轨迹中的检查点平均和高学习率的结合有助于更快收敛。检查点合并 [100] 全面评估了在Baichuan2 [191] LLM模型预训练过程的不同阶段模型合并的有效性。第二类工作涉及结合现有模型以创建更强大的初始模型,从而加速学习速度并提高下游任务的准确性。例如,Fusing [21] 和ColD Fusion [35] 将多个现有的微调模型混合作为基础模型,并用于下游任务的微调,结果显示这种合并模型优于单纯的预训练模型。

2.3.1.5 结合专家LLM的能力

LLM在一般任务中表现出强大的泛化能力,但往往缺乏特定垂直领域的知识。预训练的LLM通常需要在不同公司内部进行微调,以成为各个领域的专家LLM。整合多位专家的专业知识对于解决更复杂的任务尤为关键。关于模型合并技术的研究表明,可以通过结合不同专家LLM的参数来创建复合LLM [6, 31, 171, 172, 201, 202, 215]。例如,Dekoninck等人 [31] 展示了通过合并具有不同风格的多个LLM并应用个性化加权,可以灵活控制文本生成的能力。Robust Weight Signatures [14] 提出了一种通过模型合并增强模型对各种自然损坏的干净数据版本的总体鲁棒性的“补丁”框架。总之,模型合并提供了一种直接且有效的策略来增强LLM的能力。    

2.3.2 多模态大型语言模型中的模型合并

基础模型通常涉及处理和交互来自不同模态的数据,如视频、图像、语音和文本。为了构建一个通用的大型模型,一个关键的障碍是任务和模态的多样性和异质性。传统上,大多数现有方法为每种模态训练一个特定模态的模型。然而,这些方法存在局限性:一方面,它们需要为每种模态单独的模型;另一方面,联合训练一个大型多模态模型需要昂贵的配对训练数据(图像、文本、视频、语音)收集,并且在添加新模态时需要重新训练整个模型。

一个有趣的问题是,论文是否可以合并多个特定模态的模型,以获得一个单一、有效且参数高效的无模态模型。论文的目标是通过合并的统一模型编码来自不同模态的输入,学习跨模态交互,并保持与经过良好训练的独立特定模态模型相当的性能。与传统的多模态学习相比,模型合并技术提供了新的机会。这种模型合并方法具有以下几个优点:(1)它消除了收集标记配对多模态训练示例的昂贵且劳动密集的过程,这是联合训练多模态模型所必需的;(2)它增强了多模态模型的适应性,允许无缝集成新模态;(3)它充分利用了多模态之间的知识协作,从而受益于跨模态知识转移。

2.3.2.1 多模态融合的模型合并

最近,许多研究集中在将不同模态的模型合并为一个单一模型,从而增强模态间知识的多样性。例如,JAM [4] 提出将两个专门(一个用于文本到图像,一个仅用于文本)的自回归、仅解码器的大型Transformer模型合并,以无缝生成多模态输出。类似地,DAMC [16] 引入了一种方法,用于跨图像、音频、视频和点云模态融合多模态LLMIs,通过参数解耦和调整模态融合系数进一步减少跨模态干扰。

为了评估各种因素对模型合并的影响,VL-Merging [154] 对多模态模型合并进行了全面的实证分析。整个框架包括三个步骤:独立模态微调、多模态合并和下游任务微调。通过涉及不同初始化、合并方法和架构的多模态模型合并实验,作者提出了以下指导原则:(1)跨多个模态的模型应基于相同的预训练起点,以确保它们处于相同的吸引域 [5] 并共享更多信息。(2)简单的模型平均能获得更好的性能,如果拥有更多的计算和存储资源,可以进行更细粒度的合并。(3)合并整个模型而非仅部分层通常会得到更令人满意的结果,因为仅微调部分层可能会限制单模态模型的能力。与上述基于特定架构开发的模型合并方法不同,UnIVAL [147] 首次设计了一个统一架构,涵盖图像、视频、音频和语言四种模态。它将所有模态的任务转换为“序列到序列”格式,并将所有模态的训练目标转换为“下一个词预测”格式。这使得可以在所有模态上应用统一的特征提取器和分类器。此外,UnIVAL 为模型合并提供了有利的架构条件,并证明在权重空间中线性插值经过多模态微调的模型,可以得到一个在已见和未见任务上都表现良好的通用单一模型。

2.3.2.2 跨模态知识转移的模型合并

一些工作尝试通过模型合并方法将知识从一个模态转移到另一个模态。例如,MAM [153] 研究了Transformer [169] 的注意力层是否能跨不同模态泛化。具体来说,它考察了在高资源模态(如数据丰富的图像和文本)上训练的Transformer模型所获得的知识是否可以转移到在低资源模态(如数据稀疏的语音和音频)上训练的Transformer模型。本文展示了跨各种任务、模态和初始化的模型注意力合并。最终结果显示,与标准微调范式相比,MAM在音频分类任务(使用ESC-50数据集 [126])上实现了18.42%的分类错误率降低。    

2.3.3 图像生成模型中的模型融合

图像生成模型,如生成对抗网络(GANs)、变分自编码器(VAEs)、正则化流(Flows)和去噪扩散概率模型(Diffusions),旨在近似给定数据集背后的底层数据分布,以便生成更多具有相同分布的新样本。然而,图像生成模型仍面临以下挑战:无法灵活生成具有多种风格组合的样本、生成模型训练成本高昂,以及无法生成指令中指定的所有细节。这一困境促使人们关注专家模型,这些模型在不同的数据片段或分布上训练具有特定能力的一组专家,允许在推理时灵活添加或移除某些风格的专家。考虑到集成学习的部署难度和资源成本,模型融合提供了一种新的视角,无需额外内存和推理成本即可结合不同风格的技能特定专家。

2.3.3.1 生成模型中的风格混合

现有的生成模型通常仅根据训练数据生成分布。然而,在实际部署中,不同用户或艺术家往往希望生成具有不同风格组合的艺术品。为这些混合分布收集额外数据成本高昂,且微调模型可能导致遗忘其他能力。模型融合提供了灵活组合多种风格的可能性。

Earl GAN Cocktail [10] 尝试合并多个预训练的 GAN 模型。近期,基于扩散的图像生成模型 [56, 139, 140] 因其卓越的生成能力而比基于 GAN 的模型受到更多关注。因此,大多数研究集中在融合不同的扩散模型上。具体而言,Diffusion Soup [12] 展示了能够线性合并针对不同风格数据片段(例如,不同领域/类别或不同用户提供的数据)微调的扩散模型,实现混合风格的零样本生成。此外,Diffusion Soup 实证验证了模型融合具有抗记忆效应,即生成的图像不太可能复制训练数据,这有利于生成多样化的图像。与直接合并模型参数的 Diffusion Soup 不同,MaxFusion [118] 受到 Ziplt [151] 的启发,提出基于相同输入噪声合并多个扩散模型的中间特征,以生成满足多个条件的图像。然而,基于全参数微调合并多个扩散模型在任务数量庞大时成本高昂。为解决这一问题,ZipLoRA [145] 和 MoLE [186] 旨在无缝合并参数高效的 LoRA 模块。例如,ZipLoRA 提出合并独立训练的内容/主题(例如,特定对象或人物)LoRA 与艺术风格(例如,绘画或绘图等)LoRA,使扩散模型能够生成任何用户提供的主题和风格组合 [141]。这种方法使用户和艺术家能够轻松组合他们选择的公开可用主题和风格 LoRA。

2.3.3.2 降低生成模型的训练成本

在现实场景中,大规模训练数据通常来自不同领域或由不同用户提供。鉴于需要添加新数据或移除过时数据,每次更新数据后重新训练单一模型往往不切实际 [12]。例如,使用 8 块 A100 GPU [101] 训练一个 CM 模型 [150] 大约需要一周时间。这是因为现有方法仅在生成模型训练中应用最终收敛权重,而忽略了中间训练轨迹。LCSC [101] 表明,通过进化算法简单地组合扩散模型中间的训练轨迹,可以显著降低训练成本。具体而言,仅需少量迭代或小批量大小即可训练扩散模型,达到与完全训练的扩散模型相媲美的图像质量。例如,在 CIFAR-10 数据集上,LCSC 分别将一致性蒸馏和一致性训练 [150] 的训练过程提升了 23 倍和 7 倍。其根本原因是,优化轨迹的每个局部检查点附近存在许多高质量盆地(即生成质量更好的区域),这些区域由于梯度估计的巨大方差而无法通过随机梯度下降到达。然而,检查点插值提供了一种到达这些盆地的机会。    

2.3.3.3 提高生成模型的忠实度

一些关于文本到图像(T2I)的研究表明,尽管现有的 T2I 生成模型能够根据文本提示生成高质量图像,但这些图像往往未能充分捕捉和反映文本中的语义细节,例如生成多个主体或正确描绘物体间的空间关系 [89]。为提高 T2I 生成模型的忠实度,SELMA [89] 设计了一种新颖的四阶段范式。在前两个阶段,通过现有大型语言模型的多样化提示收集一系列输入文本(对应不同技能),并使用 T2I 模型生成相应的图像数据。第三阶段涉及在不同技能的图像上分别微调技能特定的专家(即 LoRA)。在第四阶段,将具有不同技能的专家模型合并,以在推理期间获得最终模型。与多技能联合学习的范式相比,这种在独立学习后合并专家技能的方法可能有助于缓解知识/技能冲突,同时效率更高。

2.4 模型融合在不同机器学习子领域的应用

模型融合是一种简单且有效的技术,广泛应用于机器学习的各个子领域,如持续学习、多任务学习、领域泛化、联邦学习、小样本学习和对抗防御等。这里论文将全面讨论模型融合在不同机器学习子领域的应用。表 3}提供了简要总结。

表 3:模型融合技术在不同机器学习子领域应用的总结。

LLMs、MLLMs等领域的模型合并:方法、理论、应用与机遇-AI.x社区

2.4.1 模型融合在持续学习中的应用

持续学习 (CL) 涉及使用流式、非平稳数据流训练模型。CL 中的主要挑战是“灾难性遗忘” 问题;即,CL 模型在训练新任务后对旧任务的预测准确性急剧下降。主流 CL 方法主要分为基于记忆回放的方法、基于架构扩展的方法、基于正则化的方法和基于子空间投影的方法 [178]。近年来,越来越多的人对使用模型融合来解决灾难性遗忘问题感兴趣。这种新颖的方法提供了几个好处,例如避免与基于网络扩展的方法相关的额外参数和推理成本,并消除基于记忆的方法所需缓存旧数据的需要。

2.4.1.1 模型融合缓解灾难性遗忘

受 Tangent Task Arithmetic [123] 的启发,Tangent Model Composition [104] 提出在预训练模型的切线空间中独立微调每个任务,然后线性微调这些模型以执行 CL。这种方法不依赖于 CL 的具体设置,可以轻松应用于任务、类别和领域增量学习场景。此外,ITA [127 ] 强调微调模型必须在预训练模型的同一盆地中,以确保非线性模型的可组合性。它在传统的 CL 中引入了一个类似于 EWC [85] 的正则化项,以约束独立模型训练时微调权重和预训练权重之间的距离。WARP [135] 建议通过在偏好数据集上使用 RLHF 对齐预训练 LLM 的权重与其对齐权重进行线性插值,从而缓解预训练 LLM 的知识遗忘。BAM通过合并模型不断适应 LLM 到新语言,同时保留通用能力。MagMax [112 ] 合并修剪的任务向量,进一步缓解参数符号冲突和旧知识遗忘。Equifinality、PAINT [64] 和 LM-Cocktail [187] 插值微调模型和零样本模型的权重,以提高下游任务的准确性,而不会降低支持/通用任务的准确性。    

与合并完整模型不同,一些研究专注于合并参数高效的模块。Chi-tale等人[20]提出了一种基于任务算术[65]的持续学习(CL)方法。该方法首先为每个任务微调一个特定任务的低秩适应(LoRA),然后根据微调模型与预训练模型之间的差异构建任务向量。多个任务向量随后被合并,并使用少量数据(每类10个样本)对合并后的模型进行微调。与传统的CL方法,特别是基于回放的方法相比,这种方法消除了每次迭代时回放旧任务数据的需要,从而加速了模型训练。此外,使用类别平衡子集对合并后的模型进行微调有助于减轻CL模型的偏差。类似地,DynaMMo[128]在医疗图像的CL设置中应用了轻量级模型合并(即适配器)。与基于架构扩展的CL方法不同,这种方法不会随着任务数量的增加而导致参数数量线性增加。与DynaMMo的静态聚合参数高效微调(PEFT)模块不同,DAM[19]在推理过程中引入了动态聚合PEFT模块以执行CL。AMM[17]提出合并卷积层以促进增量新类发现并防止遗忘基本知识。Disperse-Then-Merge[44]建议在大型语言模型(LLMs)的有监督微调过程中合并针对不同数据分区训练的子模型,以减少数据偏差并缓解对通用预训练知识的遗忘。

2.4.2 多任务/多目标/多领域/辅助学习中的模型合并

在机器学习中,为了优化资源效率,论文通常使用单一模型来处理具有不同分布的多个任务、目标或数据领域。传统的多任务学习(MTL)、多目标学习(MOO)或多领域学习(MD)范式要求收集来自所有任务、目标或领域的数据来协同训练模型,这导致了高昂的数据管理和模型训练成本。当引入新的任务、目标或领域时,这种方法尤其昂贵,因为从头开始使用所有可用数据重新训练一个全面的模型是资源密集型的。许多最近的研究提出了通过直接合并模型来跨任务、目标或领域整合知识的高效方法。

2.4.2.1 多任务学习中的知识迁移

多任务学习(MTL)的目标是使单个模型能够同时执行多个任务,从而促进这些任务之间的知识迁移[18, 110, 144, 152, 192, 203]。如图 1 ( c ) 所示,为了避免联合训练的高成本,一种直接的方法是将多个在不同任务上独立训练的模型合并,以实现MTL。

这里论文以一些代表性任务为例。对于计算机视觉中的MTL任务,Task Arithmetic [65]、Ties-Merging [190]、AdaMerging [194] 以及其他研究[156, 193, 197]提出结合在不同视觉分类任务上训练的ViT模型,所获得的模型能够完成多个任务的对象分类。Task Arithmetic [65]的结果表明,合并任意两个数据集上独立训练的模型所得到的合并模型,其性能可与单任务模型相媲美。类似地,合并了在不同任务上训练的ResNet架构的Ziplt [151]也取得了相当的成果。对于自然语言处理中的MTL任务,DARE [201] 引入了一种同源模型同化的方法,将LLMs增强为“免费午餐”。例如,合并WizardLM和WizardMath显著提升了WizardLM在GSM8K(评估LLMs数学推理能力的基准)上的性能,从2.2提升至66.3。Akiba等人[6]建议直接合并具有数学能力的LLM和具有日语能力的LLM,结果是一个能够解决日语数学问题的模型。此外,许多研究表明,结合在不同任务上训练的PEFT模块(如Adapter或LoRA)也可以实现MTL [160, 209]。    

2.4.2.2 多目标优化中的知识转移

多目标优化(MOO)旨在同时优化多个目标函数。这些目标函数可能相互冲突,因此MOO问题通常不存在单一的最优解。相反,它涉及在多个目标之间寻找权衡,这对应于识别一组帕累托最优解。Tang等人 [158] 提出使用混合专家(MoE)模型合并方法来近似整个帕累托集。具体而言,他们的方法为每个目标训练一个独立模型,并学习一个路由网络来平衡多个目标(模型)之间的权衡。路由网络的输入是任务偏好向量,其输出由独立模型的合并系数组成。考虑到直接基于原始评估指标评估帕累托解是耗时的,MAP [91] 提出了一种二阶泰勒展开模型作为真实评估指标的替代模型,并进一步使用进化算法基于该替代模型计算帕累托前沿。

2.4.2.3 多领域学习中的知识转移

与专注于具有不同对象类别的数据集的现有基于模型合并的多任务学习(MTL)方法不同,Ye等人 [197] 探索了跨多个领域的模型合并,其中数据集共享相同的类别但在环境上下文上有所不同。为了缓解多领域模型之间的冲突,引入了一个权重相似度准则来评估不同模型层之间的相关性。对于具有高度相关性的层,采用简单的权重平均或RegMean [78]策略来合并已在同一任务的不同领域中微调的模型。对于具有低相关性的层,在推理阶段使用门控机制灵活地组合权重。Branch-Train-Merge [92] 展示了在64个不同领域上训练专家语言模型并随后合并它们的有效性。

2.4.2.4 辅助任务学习中的知识转移

辅助任务学习(ATL)的目标是通过利用从相关辅助任务中获得的知识来提高目标任务的性能。与旨在优化所有任务平均性能的多任务学习(MTL)不同,ATL 专注于仅提高主要任务的性能。然而,ATL 经常遇到梯度冲突问题,导致负迁移,即辅助任务的引入干扰了主要任务的性能。为了缓解负迁移,Jiang 等人 [76] 提出了 ForkMerge 方法,该方法定期执行“分叉”和“合并”操作。模型首先定期复制成多个分支:第一个分支仅针对主要任务进行训练,而其余分支则联合训练主要任务和辅助任务。然后使用验证集确定最优合并系数,以合并由各个分支更新的模型。实证结果显示,ForkMerge 在多个辅助任务学习基准上实现了正迁移增益。

2.4.3 分布外/域泛化中的模型合并

分布外泛化(OODG)和域泛化(DG)的共同目标是提高模型在未见数据上的性能。它们的关键区别在于,OODG 专注于提高模型对与训练数据分布显著不同的未知数据的泛化能力,而 DG 则强调提高模型在未见域上的泛化能力。近期众多研究表明,模型合并在 OODG 和 DG 中都有助于提高训练稳定性和整体性能。

2.4.3.1 更好的分布外泛化中的模型合并

在现实场景中,训练好的模型可能部署在分布不断变化的环境中。例如,自动驾驶模型在干净的数据集上进行训练,但实际上,它们容易受到自然损坏(如相机噪声、运动模糊)和更显著的分布偏移(如夏季到冬季)[14, 55] 等不可预见分布的影响。OODG 的目标是增强模型对与训练分布显著不同的未知数据的泛化能力。    

随机权重平均(Stochastic Weight Averaging, SWA)[67] 是一种简单且广泛使用的技巧,用于提高机器学习模型训练的稳定性和分布外(OOD)性能。从统计学的角度来看,权重平均有助于减少模型训练过程中的方差。许多研究在训练模型时合并训练轨迹中的中间权重状态(即检查点)[50, 67, 161, 170, 195, 208]。例如,WiSE微调[184] 表明,在线性组合预训练模型和微调模型的权重时,可以在分布偏移的情况下显著提高准确性,同时保持原始分布上的高准确性。SWA [50, 67] 简单地平均从特定时期的开始到训练结束的所有检查点。这种方法被解释为有助于模型收敛到平坦而非尖锐的局部最优,从而改善泛化能力 [67, 82]。自适应SWA [32] 强调,过早执行SWA可能导致欠拟合,而过晚执行可能导致过拟合。它提出仅在验证集上的泛化能力提高时进行平均,有效地将SWA与早期停止机制结合。然而,简单的平均权重往往不是最优的。特别是,TWA [94] 通过表明权重的平均系数可以在训练方式中确定来解决这一问题。因此,TWA与简单的SWA不同,可以从训练的初始时期开始执行平均,无需定义用于确定权重平均开始时间的额外超参数。

与以往沿着一条训练轨迹平均权重的研究不同,诸如Model Soups [183, 219]、AdapterSoup [24]、Model-Ratatouille [133]、WARM [136]、WARP [135]、PAPA [79]、WASH [42]、DART [70]和DiWA [132]等方法提出合并多个独立微调或训练的模型。这些模型通常更具多样性,从而提升了OOD(Out-of-Distribution)性能。独立训练的模型在超参数(例如,学习率、权重衰减、Dropout)、批次顺序、数据增强技术(如随机裁剪、水平翻转)以及训练步数等方面存在差异。具体而言,Model-Ratatouille [133]从相同的初始模型出发,在辅助任务上微调多个模型,然后继续在目标任务上微调这些模型,最终合并这些多样化的模型以提高OOD性能。WARM [136]通过从预训练模型的轨迹中采样不同的检查点作为下游偏好微调任务的初始权重,进一步增加了微调模型的多样性。为了减少训练多个模型的额外成本,Model Stock [71]提出可以利用权重空间的几何特性和预训练模型的锚定效应,仅使用少数微调模型来近似合并权重。MEHL-Soup [95]开发了一种可扩展且高效的方法来学习模型合并系数,它仅在每次迭代中加载模型的子集,显著降低了学习合并系数的朴素模型汤的计算和内存需求。

上述分析揭示了SWA由于依赖单一轨迹而缺乏多样性。相比之下,Model Soups和DiWA独立训练,可能导致多个差异显著的模型,从而导致权重平均失败。为了平衡这两种方法,Lookaround [208] 引入了一种基于权重平均的梯度下降优化器。该优化器在优化过程中迭代执行“around”和“average”步骤。在“around”步骤中,从同一起点训练多个独立模型,每个模型使用不同的数据增强方法。在“average”步骤中,对多样化的模型进行平均,并将结果用作下一次迭代的起点。

2.4.3.2 模型合并以提升领域泛化能力

领域泛化方法旨在仅使用源域的训练数据来泛化到未知的目标域。例如,在交通标志识别的背景下,用于识别各种城市环境中交通标志的机器学习(ML)模型的训练数据来自多个城市(即源域)。然而,在部署时,模型必须识别它从未遇到过的新城市环境(即目标域)中的交通标志。现有的领域泛化(DG)方法可以分为域对齐、数据增强、正则化和元学习框架 [8]。与这些方法互补的是,模型合并技术可以无缝集成,进一步提高域外性能而不需修改。具体而言,领域泛化中的模型合并主要发生在源域模型的训练过程中。合并来自不同训练阶段的中间权重状态有助于提高最终模型的稳定性和泛化能力。    

SWAD [15] 展示了更平坦的最小值能更好地泛化到未见过的领域。受 SWA [67] 启发,SWAD 提出了一种密集且过拟合敏感的随机权重采样策略来识别这些更平坦的最小值。更具体地说,与 SWA 不同,它从预定义的 epoch 开始直到最终 epoch,每隔 K个 epoch 收集一次随机权重进行平均。SWAD 密集地收集权重,即每一步/迭代收集一次,并且随机权重收集的开始和结束由验证集上的性能变化决定。EoA [ 8 ] 也表明模型平均可以提高域外性能稳定性,并且与不带权重平均的模型集成相比,集成多个移动平均模型可以进一步增强性能。

2.4.4 联邦学习中的模型合并

联邦学习(Federated Learning,FL)是一种分布式学习方法,允许多个客户端在不共享数据的情况下协作训练模型。FL 主要包括两种设置:集中式(带有中央服务器)和分散式(不带中央服务器)。每个客户端基于本地数据更新模型或计算梯度,并将更新信息发送给中央服务器(在集中式 FL 中)或其他客户端(在分散式 FL 中)进行聚合以更新全局模型,从而确保数据隐私保护。

2.4.4.1 联邦学习范式

模型合并是 FL 中常规且关键的操作。以集中式 FL 为例,它通常涉及N个客户端和一个中央服务器 S。每个客户端拥有一组私有训练数据。具体来说,集中式 FL 范式中的训练过程包括五个步骤:(1)模型初始化:中央服务器初始化全局模型参数;(2)模型分发:服务器上的最新模型在第 t 轮通信中发送给本地客户端。(3)本地模型更新:第 i 个客户端基于本地数据计算梯度来更新模型。(4)模型上传:所有本地客户端的更新模型被发送到服务器进行聚合。(5)模型聚合:服务器上的多个本地模型被聚合。这五个步骤重复进行,直到模型收敛或达到最大训练轮数。由于本文不是对FL的综述,论文重点实现“模型聚合”步骤。在 FL 中,模型合并指的是在每次通信轮次中汇总来自各个客户端的模型参数,从而形成一个更新的全局模型。

2.4.4.2 本地知识聚合的模型合并

大多数联邦学习(FL)方法采用简单的坐标级平均来聚合本地模型。例如,它们根据一些启发式规则计算本地模型合并系数。FedAvg [114],最经典的FL方法,提出根据每个客户端的训练数据量在服务器上对本地模型进行加权合并。FedNova [175] 基于更新步数在客户端对模型更新进行归一化和缩放,有效地聚合本地模型以获得高性能的全局模型。FedAtt [74] 根据客户端和服务器参数的相似性计算层级注意力系数,基于这些系数融合本地模型。FedFisher [73] 计算每个客户端参数的Fisher信息矩阵以合并本地模型。在更具挑战性的FL任务中,上述直接的坐标级合并方法可能导致全局模型性能次优。受神经网络置换不变性特性的启发,PFNM [204]、OTFusion [148] 和 FedMA [174] 提出在合并前对本地模型的神经元进行置换。类似地,GAMF [99] 将模型合并问题转化为基于图匹配的多图匹配问题,然后合并对齐的本地模型。

2.4.5 零样本/少样本学习中的模型合并

在机器学习模型的实际应用中,收集大量标注数据在特定场景(如医疗诊断、实时监控)中可能成本高昂或不可行。用户通常希望深度模型能够有效执行以前未遇到过的新任务,即通常所说的跨任务泛化能力 [61]。零样本 [115] 和少样本学习 [198] 可以减少对大量数据的依赖,使模型更好地处理未见类别或少量样本,提高模型的跨任务泛化能力。在少样本学习中,常见的做法是使用有限的样本来微调模型。然而,由于数据量极少,这种微调过程往往不稳定,仅能带来有限的性能提升。最近,一些研究探索了在零样本和少样本条件下合并预训练模型(来自某些公开可访问的资源)以增强跨任务泛化能力。    

2.4.5.1 零样本学习中的跨任务泛化模型融合

模型融合技术在零样本学习的多个应用中展示了其有效性。实际应用的例子包括跨语言迁移[25, 63, 86, 211]、混合风格图像生成[12, 118]以及多模态处理[16]。

一些工作通过模型合并实现跨语言迁移,例如聊天[63]、文本摘要[25]或推理[211]。一个表现良好的特定语言大型语言模型(LLM)需要完全训练,而世界上有700种语言,并非所有语言都有足够的标注数据支持模型微调。因此,跨语言知识迁移尤为重要。例如,Huang等人[63]基于在英语聊天数据上微调的LLAMA2-chat和预训练的LLAMA2构建了Chat向量,并将其与在其他非英语语言上连续预训练的LLAMA2模型组合。这使得新模型能够在非英语语言中进行聊天。Chronopoulou等人[25]开发了一个零样本多语言摘要框架。它使用合并模型(一个监督式摘要模型和一个高资源语言的无监督预训练模型,以及一个低资源语言的无监督预训练模型)来执行低资源语言的文本摘要任务。同样,AdaMergeX[211]展示了模型合并在跨语言迁移中的有效性,涉及三个任务:推理、自然语言理解和自然语言生成。在混合风格图像生成任务中,Diffusion Soup[12]和MaxFusion[118]表明,通过合并多个扩散模型可以增强零样本生成能力。在多模态任务中,DAMC[16]实验证明,只要从相同的LLM初始化,通过合并多模态模型可以实现零样本多模态扩展。例如,通过合并视觉LM和音频LLM,组合模型不仅能够独立执行图像或音频任务,还能获得同时处理包含视觉和听觉信息的输入的零样本能力。

2.4.5.2 模型合并在少样本学习中的粗任务泛化

参数高效微调(PEFT),如LoRA或Adapter,促进了成千上万个定制PEFT模块的创建和共享,每个模块针对不同的下游任务在不同数据上进行训练。一个自然的问题是,是否可以通过合并预训练在不同上游任务上的PEFT模块来提高对样本有限的未见下游任务的迁移准确性。

近年来,关于模型合并的研究给出了肯定的答案,表明合并模型能够增强少样本场景下的泛化能力[9, 53, 61]。例如,LoraHub [61] 提出合并HuggingFace上可用的LoRA模块,以实现对未见任务的自适应性能,其中不同LoRA的合并系数通过少样本样本以无梯度的黑盒方式搜索。正如预期,少样本LoraHub的表现优于少样本情境学习,并通过消除将示例作为输入传递给LLMs的需求来降低推理成本。LoraRetriever [212] 进一步提出根据输入动态检索最相关的LoRA并合并它们。同样,MerA [53] 提出将预训练的适配器合并为一个适配器,用于少样本NLP场景。总体而言,经过良好训练的LoRA或适配器可以作为宝贵的资源,用户可以轻松共享、访问并应用于各种下游任务。在现实世界中,上游和下游任务可能完全不同,源自不同的数据集、领域,甚至是同一数据集的不同部分。Asadi等人[9]全面评估了少样本学习设置下的模型合并。具体而言,该研究考察了上游和下游任务之间标签、领域和任务漂移的三种情况。结果表明,模型合并在不同上下文的少样本学习场景中增强了模型的泛化能力。    

2.4.6 对抗学习中的模型合并

在机器学习社区中,预训练模型的开源可用性[129, 130, 163, 166, 167]加速了技术进步。在此背景下,开发者常常下载未经验证的检查点来微调他们的模型,甚至将训练过程外包给第三方平台[185]。因此,开源模型也容易受到恶意攻击,如中毒攻击,其中特定的输入可以触发隐藏的恶意行为。这引发了一些有趣的问题:模型合并是否会导致攻击,它能否用于开发防御机制?此外,在模型合并的情境下,如何增强知识产权保护?

2.4.6.1 模型合并作为攻击策略

参数高效微调(PEFT)方法[34],如LoRA [59],展现出功能可迁移性。这意味着基于预训练模型针对特定任务微调的LoRA模型可以成功迁移到另一个预训练模型[103]。实践中,开发者常从开源平台下载LoRA模型以应对特定的下游任务[61]。若不慎下载并整合了被植入后门的LoRA(可视为特洛伊木马),可能引入安全漏洞。LoRA-as-an-Attack的研究[103]表明,将受污染数据训练的被植入后门的LoRA与干净数据训练的良性LoRA合并,会导致后门注入。此现象在多LoRA合并时同样存在。

2.4.6.2 模型合并作为防御策略

LoRA的可迁移性也为模型合并作为一种防御策略提供了机会。具体来说,如果论文知道一个模型可能容易受到某些攻击,论文能否训练一些LoRA来增强模型的防御能力(即降低攻击者的成功率)?例如,Liu等人[103]演示了使用GPT-3.5生成包含后门触发器的良性数据集。然后在这些良性数据上训练了一个专门的防御LoRA,并将其合并到被污染的预训练模型中。这种防御性模型合并最终导致了后门效应的减弱。此外,研究表明,在全参数微调的背景下,模型合并可以作为模型防御的"免费午餐"。涉及四种模型架构和四个数据集的实验表明,在不需额外努力的情况下合并多个被污染的模型可以缓解这些污染攻击,同时对良性数据集的准确率几乎不受影响。Rebuffi等人[137]和Croce等人[28]合并了一组lp(对于不同的p)鲁棒微调模型,以轻松控制每个威胁模型对抗lp边界对抗攻击的鲁棒性水平。类似地,[45]的实验分析表明,模型合并为对抗越狱攻击[179]提供了一种有效的防御机制。

在另一个实际场景中,合并未经授权的模型可能会侵犯模型所有者的知识产权。恶意用户可能会合并几个高质量的开源模型(例如,那些仅授权用于研究目的的模型)来创建一个新模型,然后声称这个新模型完全是由他们自己从头开发和训练的,随后提供模型服务以谋取商业利益。在这种情况下,对于模型所有者来说,检测他人是否合并了他们的模型变得尤为重要。MergeGuard [26]对两种现有防御方法——量化水印[90]和指令性指纹[188]——在模型合并背景下的有效性进行了初步分析。研究观察到,虽然水印方法在合并后的模型中无法被检测到,但指纹方法仍然可以被检测到。

本文转载自​AI帝国​,作者: 无影寺 ​​



收藏
回复
举报
回复
相关推荐