综述!深度模型融合(LLM/基础模型/联邦学习/微调等)

人工智能 新闻
模型融合作为一种提高深度模型精度和鲁棒性的技术,促进了许多应用领域的改进。

23年9月国防科大、京东和北理工的论文“Deep Model Fusion: A Survey”。

深度模型融合/合并是一种新兴技术,它将多个深度学习模型的参数或预测合并为一个模型。它结合了不同模型的能力来弥补单个模型的偏差和错误,以获得更好的性能。然而,大规模深度学习模型(例如LLM和基础模型)上的深度模型融合面临着一些挑战,包括高计算成本、高维参数空间、不同异构模型之间的干扰等。本文将现有的深度模型融合方法分为四类:(1)“模式连接”,通过一条损失减少的路径将权重空间中的解连接起来,以获得更好的模型融合初始化;(2)“对齐”,匹配神经网络之间的单元,为融合创造更好的条件;(3)“权重平均”是一种经典的模型融合方法,将多个模型的权重进行平均,以获得更接近最优解、更准确的结果。(4)“集成学习”结合了不同模型的输出,这是提高最终模型准确性和鲁棒性的基础技术。此外,分析深度模型融合面临的挑战,并提出了未来模型融合可能的研究方向。

由于数据隐私和实际资源节省问题,深度模型融合引起了越来越多的兴趣。尽管深度模型融合的发展带来了许多技术突破,但也产生了一系列挑战,例如计算负载高、模型异构性以及组合优化对齐速度慢等[133, 204],让一些方法在具体的场景受到限制[227, 254],这激发了科学家研究不同情况下模型融合的原理。

不过,有些工作只关注单一视角(例如特征融合等)[45, 195]和特定场景[213]的模型融合,或者不同方式的信息融合(多模态融合[1, 103] ])而不是参数的融合。加上最近的进展和代表性应用,例如联邦学习(FL)[160]和微调[29]等,本文根据内部机制和目的分为四类,如图所示整个模型融合流程示意图,以及各种方法的分类和连接。

对于独立训练且彼此不相邻的模型,“模式连接”和“对齐”使解决方案更加接近,从而 以获得更好的平均原始条件。对于权值空间存在一定差异的相似模型,“权重平均(WA)”倾向于直接对模型进行平均,在损失函数值较低的参数空间区域中获得更接近最优点的解 [118]。此外,对于现有模型的预测,“集成学习”整合了模型的不同形式的预测,以获得更好的结果。

模型融合作为一种提高深度模型精度和鲁棒性的技术,促进了许多应用领域的改进。“联邦学习[160]”是一种在中央服务器上聚合客户端模型的应用程序,使各方能够为函数的计算(例如各种统计数据、分类器[177])贡献数据,而不会带来隐私暴露的风险。“微调”对预训练的模型进行小幅调整,与模型融合相结合,以降低训练成本并适应特定任务或领域的需求。模型融合还涉及到“蒸馏”。即结合多个复杂模型(教师)的软目标知识,训练一个针对特定需求的小模型。“基础/LLM上的模型融合”包括大型基础模型或大型语言模型(LLM)的工作,例如视觉Transformer(ViT)[79]和GPT[17]等。模型融合的应用帮助开发人员适应各种任务和领域的需求,促进深度学习的发展。

为了确定训练网络的结果对于 SGD 噪声是否稳定,损失屏障(误差屏障)被定义为两点损失线性插值与两点线性连接损失之间的最大差[50]。损失屏障说明,沿着 W1 和 W2 之间的路径优化图 [56, 61] ,误差是恒定的还是增加的。如果两个网络之间存在一条隧道,其屏障约等于0,则相当于模式连接[46,59,60]。也就是说,SGD得到的局部极小值可以通过一条最大损失最小化的路径 φ 连接起来。

基于梯度的优化得到的解可以在权重空间中通过没有屏障的路径(连接器)连接起来,这被称为模式连接[46, 50]。可以沿着低损失路径获得更适合模型融合的其他模型。根据路径的数学形式和连接器所在的空间,分为三个部分“线性模式连接(LMC)[66]”、“非线性模式连接”和“子空间的模式连接” ”。

模式连接可以解决训练过程中的局部优化问题。模式连接路径的几何关系 [61, 162] 也可用于加速随机梯度下降 (SGD) 等优化过程的收敛性、稳定性和准确性。总之,模式连接为解释和理解模型融合的行为提供了新的视角[66]。但计算复杂度和参数调整的困难应该得到解决,特别是在大型数据集上训练模型时。下表是线性模式连接(LMC) 和非线性模式连接的标准训练流程总结。

如图是二维损失图和其他维度子空间中的模式连接示意图。左:两个盆地最小值的线性插值导致高损失屏障[46]。较低的两个最佳值遵循接近恒定的低损失路径(例如贝塞尔曲线、多边框链等)[66]。π(W2)是W2的排列对称性的等价模型,与W1位于同一盆地。Re-Basin 通过为各个流域提供解决方案来合并模型 [3]。右图:低损失路径连接子空间中的多个最小值(例如,由 d-维 楔形组成的低损失流形 [56])等)。

下表是在不同局部最小值之间寻找隧道的方法。

总之,模式连接为深度模型融合提供了更新、更灵活的视角。神经网络的训练容易陷入局部最优,从而导致性能下降。在模型连接的基础上,可以找到性能更好的其他模型,并将其作为进一步优化和融合的起点。可以利用已经训练的模型在参数空间中移动来达到新的目标模型,这样可以节省时间和计算开销,适合数据有限的情况。然而,在连接不同模型时,可能会引入额外的复杂性和灵活性,从而增加过度拟合的风险。因此,应仔细控制相关的超参数和变化程度。此外,模式连接需要微调或参数更改,这可能会增加训练时间和资源消耗。综上所述,模型连通性在模型融合方面具有诸多优势,包括帮助克服局部最优问题、提供解释网络行为的新视角等。未来,模式连接有望帮助理解神经网络的内部机制并提供指导 以便将来进行更高效的深度模型融合设计。

由于来自不同网络的通道和组件的随机性,网络的活动组件相互干扰[204]。因此,未对齐的加权平均值可能会忽略不同模型中单位之间的对应关系并损坏有用信息。例如,不同模型中的两个神经元之间存在一种关系,它们可能完全不同但功能相似。对齐是将不同模型的单元进行匹配,从而为深度模型融合获得更好的初始条件。其目的是使多个模型的差异更小,从而增强深度模型融合效果。此外,对齐本质上可以被视为组合优化问题。一种代表性机制“Re-basin”,它为各个流域提供解决方案,合并具有更好原始条件的模型。根据对齐目标是否是数据驱动的,对齐分为“激活匹配”和“权重匹配”两种类型,如表所示。

一般来说,即使对于浅层神经网络,鞍点和局部最优的数量也会随着参数数量呈指数增长[10, 66]。研究发现,训练中存在不变性,导致这些局部最优中的某些点具有相同的表示形式 [22,81,140]。具体来说,如果通过排列交换隐藏层的单元,则网络的功能不会改变,这称为排列对称性[43, 50]。

这些不变性带来的排列对称性有助于更好地理解损失图的结构 [22, 66]。不变性也可以被视为损失图中鞍点的来源[14]。[68]研究神经网络中对称性的代数结构以及这种结构如何在损失图几何中表现出来。[14]在高维平台引入排列点,在该点可以交换神经元,而不会增加损失或参数跳跃。对损失进行梯度下降,调整神经元m和n的参数向量θm和θn,直到向量到达排列点。

基于排列对称性,权空间中不同区域的解可以生成等价解。等效解位于与原始解相同的区域,具有低损失屏障(盆地),称为“Re-basin”[3]。与模式连接相比,Re-basin倾向于通过排列而不是低损失隧道的方式将点传输到盆地中。目前,对齐是Re-basin的代表性方法[3, 178]。然而,如何高效地搜索排列对称性的所有可能性,使得所有解都指向同一个盆地是当前的挑战。

如图是【14】引入排列点交换神经元的示意图。左:一般对齐过程,模型A参考模型B转化为模型Ap,然后Ap和B的线性组合产生C。右:调整不同隐藏层两个神经元的参数向量θm和θn接近排列点,在排列点[14]θ′m = θ′n,两个神经元计算相同的函数,这意味着两个神经元可以交换。

对齐通过调整模型的参数使模型更加相似,可以提高模型之间的信息共享,从而提高融合模型的泛化能力。此外,对齐有助于提高模型在复杂任务上的性能和鲁棒性。然而,对齐方法面临着组合优化速度慢的问题。对齐需要额外的计算开销来调整模型的参数,这可能导致更复杂且耗时的训练过程,特别是在大深度模型中[142, 204]。

综上所述,对齐可以提高不同模型之间的一致性和整体效果。随着DL应用场景的多样化,对齐将成为优化深度模型融合、提高泛化能力的关键方法之一。未来,对齐可以在迁移学习、域自适应[63]、知识蒸馏等领域发挥作用。例如,对齐可以减少迁移学习中源域和目标域之间的差异,提高对新域的学习 。

由于神经网络参数的高度冗余,不同神经网络的权值之间通常不存在一一对应的关系。因此,通常不能保证权重平均(WA) 在默认情况下表现良好。对于权重差异较大的训练网络,普通平均值表现不佳[204]。从统计的角度来看,WA允许控制模型中的各个模型参数,从而减少最终模型的方差,从而对正则化属性和输出结果产生可靠的影响[77, 166]。

下表是WA的代表性方法:

快速几何集成 (FGE) [66] 和检查点平均 [149] 的启发,[99]利用恒定或周期性学习率对SGD轨迹的多个点进行平均,这被视为随机权重平均(SWA)。SWA 改进了一系列重要基线的训练,提供了更好的时间可扩展性。SWA 不是训练一组收集的模型(如普通融合),而是训练单个模型来找到比 SGD 更平滑的解决方案。在下表中列出了与 SWA 相关的方法。此外,SWA 可以应用于任何架构或数据集,并展示出比快照集成 (SSE) [91] 和 FGE 更好的性能。在每个周期结束时,对新获得的权重与现有权重进行平均来更新 SWA 模型。

然而SWA只能对局部最优点附近的点进行平均,最终得到一个相对最小值,而不能准确逼近最优值。另外,由于某些因素(如前期收敛性差、学习率大、权重变化率快等),最终的输入样本偏差可能较大或不充分,导致整体效果不佳。大量工作往往会改变 SWA 的采样方法。

如图不同SWA相关方法的采样和学习率安排比较。(a) SWA:恒定学习率。(b)SWA:周期性学习率。(c)SWAD:密集采样。(d)HWA:利用在线和离线WA,以不同的同步周期采样,滑动窗口长度为h。

模型汤[239]是指对用不同超参微调的模型进行平均的方法。它简单但有效,在 ImageNet-1K 上实现了 90.94% 的准确率,超过了之前在 CoAtNet-7 (90.88%) [38] 和 ViT-G (90.45%) [255] 上的工作。如表总结了不同的模型汤方法。

在 多任务学习(MTL )中,预训练模型和任务向量(即 τi = Wft − Wpre,预训练模型和微调模型之间的差异)相结合,在所有任务上获得更好的性能。基于这一观察,任务算术[94]通过加法和线性组合微调任务向量来提高模型在任务上的性能,这已成为直接编辑预训练模型的灵活高效的方法,如图所示:采用任务算术和LoraHub(Low-rank adaptations Hub)。

另外,子空间中的模型融合将训练轨迹限制在低维子空间中,可减少负载和难度。

WA 通过平均不同深度模型的权重来获得最终模型,无需额外的计算复杂性或训练过程[109, 159]。一般来说,如果随机模型在表示能力、结构或训练数据方面存在显着差异,则融合的结果可能无法达到预期的性能。使用相同的超参配置但具有不同的数据顺序从头开始对模型进行线性插值甚至不如随机模型有效[59]。因此,大量提出的方法旨在以其他数学方式优化 WA 过程。

此外,当模型共享其优化轨迹的一部分(例如,检查点平均、尾部平均、SWA [99, 149] 等)或在相同的预训练模型上进行微调时(例如,模型汤 [239] 等),插值模型的准确性表现更好[167]。此外,模型汤[239]对具有不同超参配置的模型进行平均以获得最终结果。此外,在模型平均值中选择适当的权重也可能是一个挑战,这通常充满主观性。更复杂的权重选择机制可能需要大量复杂的试验和交叉验证。

WA是深度学习中一种很有前景的技术,未来可以作为模型优化技术,减少不同迭代之间的权值波动,提高稳定性和收敛速度。WA可以改进联邦学习(FL)的聚合阶段,以更好地保护隐私并降低未来的通信成本。此外,通过在终端设备上实施网络压缩,有望减少模型在资源受限设备上的存储空间和计算开销[250]。简而言之,WA是一种有前途且具有成本效益的DL技术,可以应用于FL等领域,以提高性能并减少存储开销。

集成学习,或多分类器系统,是一种集成多个单一模型来生成最终预测的技术,包括投票、平均[195]等。它提高了整体性能并减少了模型的方差,解决了诸如过拟合、 不稳定,数据量有限。

基于现有的预训练源模型,模型重用[266]提供了应用于新任务所需的模型,而无需从头开始重新训练新模型。它可以节省时间和计算资源,并在资源有限的情况下提供更好的性能[249]。另外,由于迁移学习的重点是解决目标域上的预测任务,因此模型重用可以视为迁移学习的一种。但迁移学习需要源域和目标域的标记数据,而在模型重用中,只能收集未标记的数据,而不能使用源域的数据[153]。

与多分类器集成学习不同,大多数当前方法重用现有的特征、标签或模态来获得最终预测[176, 266],而不存储大量训练数据[245]。模型重用的另一个关键挑战是从一组针对给定学习任务的预训练模型中识别有用的模型。

使用单一模型进行模型重用会产生过多的同质信息(例如,在一个域训练的模型可能不适合另一域的数据),并且很难找到完全适合目标域的单一预训练模型 。一般来说,用一组相似的模型来产生比单个模型更好的性能,这被表示为多模型重用(MMR)[153]。

下表比较不同复用方法的特点,简而言之,模型复用可以显着减少使用预训练模型所需的数据量,解决不同端之间传输数据时消耗大量带宽的问题。多模型复用也有广泛的应用,例如语音识别、安全隐私交互系统、数字视网膜[64]等。

与联邦学习[88,89,160]等对模型参数和规模有一定要求的相关模型融合算法相比,集成学习方法利用预测来组合多个异构弱分类器,没有这样的限制。另外,集成方法中不同架构的网络会比WA有更明显的比较效果。然而,集成方法需要维护和运行多个经过训练的模型,并在测试时将它们一起运行。考虑到深度学习模型的规模和复杂性,这种方法不适合计算资源和成本有限的应用程序[204]。

由于集成学习框架的多样性,可以实现模型多样性并增强泛化能力。将来,这对于处理数据变化和对抗性攻击非常重要。深度学习中的集成学习有望为模型预测提供置信度估计和不确定性测量,这对于决策支持系统、自动驾驶[74]、医疗诊断等的安全性和可靠性至关重要。

近年来,深度模型融合领域出现了大量的新研究,也推动了相关应用领域的发展。

联邦学习

为了解决数据存储的安全性和集中化挑战,联邦学习(FL) [160, 170]允许许多参与模型协作训练共享的全局模型,同时保护数据隐私,而无需将数据集集中在中央服务器上。它也可以被视为多-方学习问题[177]。特别是,聚合是 FL 的一个重要过程,它包含了由各方(例如设备、组织或个人)训练的模型或参数更新。如图演示了集中式和分散式 FL 中的两种不同聚合方法。,左:中央服务器和客户端终端之间的集中式联邦学习,迁移模型或梯度,最终聚合在服务器上。右:分散式联合学习在客户端终端之间传输和聚合模型,无需中央服务器。

下表是联邦学习的不同聚合方法:

简而言之,FL 中聚合步骤的本质是一种模型融合技术。选择合理的模型融合方法可以减少特定参与者或个体数据对最终模型的影响,从而提高模型在全局范围内的泛化能力和适应性。今后良好的聚合方法有望有助于应对联邦学习中的一系列挑战。高质量且可扩展的聚合方法预计将面临FL的一系列挑战,例如客户端异构性、非独立同分布异构数据、有限的计算资源[141]等。FL有望展现其潜力在更多领域中,例如自然语言处理、推荐系统[146]、医学图像分析[144]等。

微调

微调是一个基本模式(例如预训练模型),是调整模型以执行下游任务的有效方法 [23, 41],这可以使用更少的标记数据获得更好的泛化和更准确的输出。与随机初始化相比,预训练模型是通过相对一组特定于任务的数据来训练的,这始终是更好的训练标准起点。尽管如此。现有微调模型 [28, 29] 的平均值甚至是比普通预训练模型更好的基础模型,用于对下游任务进行微调。

此外,最近有大量将 WA 与微调相结合的工作,如图所示,例如 model soup [239]、DiWA [190] 等。微调提高了目标分布的准确性,但往往导致分布变化的稳健性下降。对微调模型进行平均的策略可能很简单,但它们没有充分利用每个微调模型之间的连接。因此,在目标任务训练之前先进行中间任务训练可以探索基础模型的能力[180,185,224]。受相互训练策略 [185] 的启发,[188]微调辅助任务的模型,利用不同的辅助任务并提高分布外(OOD)泛化能力。

微调模型的平均值减少了实现目标所需的训练时间[28],并生成更准确和更好的泛化模型。本质上,不同的微调方式(例如,冻结层微调、顶层微调等)也会对最终的精度和分布偏移产生一定的影响[240]。然而,WA和微调的结合是昂贵的开销,对具体应用有一定的限制。此外,它可能面临保存检查点爆炸或灾难性遗忘的问题[121],特别是应用于迁移学习。

知识蒸馏

知识蒸馏(KD)[83]是集成多个模型的重要方法,涉及以下两类模型。教师模型是指在大规模数据上训练的大型且强大的模型,具有较高的预测能力和表达能力。学生模型是一个相对较小的模型,具有较少的参数和计算资源 [18, 199]。利用教师的知识(例如输出概率分布、隐藏层表示等)指导训练,学生可以用更少的资源和更快的速度达到接近大型模型的预测能力[2, 119, 124 ,221]。考虑到多个教师或学生的表现预计比单个模型[6]更好,根据聚合目标将 KD 分为两类,如图所示。

第一类方法是合并多个教师模型并直接提取学生模型,如表所示。目前,最近的工作主要集成教师的输出(例如,logits [6,49,252]或特征) 基础知识 [143, 241] 等)。

另一种方法是使用教师模型提取多个学生,然后合并这些学生模型。然而,合并多学生也存在一些问题,例如计算资源需求大、解释性差以及过度依赖原始模型等。

基础模型/LLMs的模型融合

基础模型在处理复杂任务时表现出强大的性能和突现能力,大型基础模型的特点是其庞大的规模,包含数十亿个参数,帮助学习数据中的复杂模式。特别是,随着最近新的LLM [200, 264]的出现,如GPT-3 [17, 172],T5 [187],BERT [41],Megatron-LM,WA的应用[154, 212, 256] ] LLM引起了更多关注。

此外,最近的工作 [120, 256] 倾向于设计更好的框架和模块来适应应用LLM。由于高性能和低计算资源,对大型基础模型进行微调可以提高分布变化的鲁棒性[240]。

责任编辑:张燕妮 来源: 自动驾驶之心
相关推荐

2023-02-26 14:17:44

2023-06-06 07:03:02

2023-11-19 23:36:50

2023-03-13 14:41:22

机器学习算法

2023-06-07 08:22:59

LLM微调技术

2020-05-21 14:05:17

TFserving深度学习架构

2024-04-07 07:40:00

2024-02-22 09:27:22

AI数据

2017-10-09 12:55:29

机器学习KaggleStacking

2023-04-27 09:41:47

2017-07-11 10:19:24

浅层模型机器学习优化算法

2023-06-09 08:00:00

QLoRa语言模型微调

2017-09-19 16:10:50

深度学习目标检测模型

2017-08-16 10:57:52

深度学习TensorFlowNLP

2023-01-09 13:21:29

模型

2010-09-28 09:22:34

DOM模型Html

2024-01-06 16:55:31

AI模型

2023-01-09 08:00:00

迁移学习机器学习数据集

2023-06-19 16:05:22

大型语言模型人工智能
点赞
收藏

51CTO技术栈公众号