LLMs、MLLMs等領域的模型合并:方法、理論、應用與機遇 精華
?一、結論寫在前面
論文標題: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等開源倉庫,使用戶能夠輕松獲取能力各異的訓練有素的專家模型。這些豐富的模型倉庫進一步推動了模型合并方向的快速發展。
圖1:集成學習范式與模型合并范式的示意圖。(a) T個獨立模型用于T個任務,(b) 集成T個獨立模型用于T個任務,(c) 一個合并模型用于T個任務。
隨著模型合并在機器學習社區的各個領域中變得越來越流行,全面了解現有模型合并技術的優勢和局限性以及它們在不同領域的應用變得至關重要。盡管社區已經做出了一些努力,但仍有很大的空白需要填補。更具體地說,Mergekit 、MergeKit 和 FusionBench 是技術報告,其中 MergeKit 僅討論了七種代表性方法,而 FusionBench 討論了八種合并方法。
此外,Zheng 等人 [214] 討論了“從模型中學習”的主題,并且僅在整篇論文中以單個小節(僅一頁)提及模型合并。與“模型合并”主題最相關的工作是 [96],但在應用方面,它僅在三種場景中討論模型合并:聯邦學習、微調和蒸餾。由于模型合并方向的快速發展,它也忽略了許多最近發表的文章。為了填補這些空白,本調查旨在闡明模型合并方向的方法、理論、應用和未來趨勢,提供相關方法的全面分類。特別是,本文通過涵蓋三個主要方面來增強對模型合并的全面理解:
首先,現有的模型合并方法是如何分類的?論文首先在圖 2提出了一種新的分類法,將現有的模型合并方法分為兩個階段 :合并前和合并中。(i) 合并前方法旨在為合并創造更好的條件。它進一步分為使用線性化微調來實現權重空間和輸入空間的解耦,進行架構轉換以將異構模型轉換為同構模型,以及對齊權重以將它們放置在同一盆地中。(ii) 合并中方法側重于設計復雜的技術將多個模型合并為一個。這些方法在合并模型時解決任務沖突和干擾問題。它們可以進一步分為基本合并方法,執行最簡單的參數合并策略;加權合并方法,根據特定規則計算的重要性合并多個模型;子空間合并方法,將多個模型投影到稀疏子空間進行合并;基于路由的方法,根據推理期間的輸入樣本動態合并模型;以及基于后校準的方法,校正合并模型。除了這些方法外,論文還討論了模型合并的理論或實證分析。
其次,哪些應用能從模型合并中受益?論文詳細討論了模型合并在基礎模型和機器學習十余個子領域中的各種應用場景。如圖 2(下部)所示,模型合并可應用于多種基礎模型,包括大型語言模型、多模態大型語言模型和圖像生成模型。例如,大型語言模型中的模型合并有助于緩解不真實和有毒輸出、實現知識遺忘,并加速訓練。此外,模型合并也出現在不同的機器學習子領域中,如持續學習、多任務/多域學習、小樣本學習及其他領域,以解決各種挑戰。例如,在持續學習中,模型合并可以減輕對舊任務的災難性遺忘。在多任務學習、多目標學習和多域學習中,它促進了知識遷移。此外,在對抗學習中,模型合并可用于攻擊和防御策略。
第三,模型合并的剩余挑戰和未來研究機遇是什么?盡管合并方法取得了進展并廣泛應用于多個領域,但該領域仍存在許多開放性挑戰和未來研究方向。例如,隨著任務數量的增加,現有方法與獨立專家模型之間的性能差距逐漸顯著更大。此外,當前的模型合并方法在合并過程中產生了巨大的內存成本,并且缺乏信任保證以及深入的理論分析。解決這些差距需要研究人員的巨大努力,以進一步推動該領域的繁榮發展。
圖2:機器學習中模型合并的分類法。這一通用框架涵蓋了先進的模型合并方法和理論(上部分),以及模型合并技術在基礎模型和超過10個機器學習子領域的實際應用(下部分)。
2.2 模型融合方法
論文首先在介紹模型融合的符號表示和問題定義。然后詳細闡述先進的模型融合方法(表1總結了每類方法的主要目的)。現有的模型融合技術大致可以分為以下兩類:(i) 合并前方法(Before Merging Methods):為模型融合提供更好的先驗知識。(ii) 合并中方法(During Merging Methods ):通過各種策略解決任務沖突/干擾,然后執行參數合并操作。最后,論文總結了模型融合有效性的理論或解釋。
表1:現有模型融合方法的總結。
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) 所示
圖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] 擴展到參數高效的微調設置中,結合了具有不同能力的適配器。然而,基本合并方法的性能在大多數情況下并不令人滿意,尤其是當任務相互干擾時。
圖 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 估計進行模型合并。
圖 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 :基礎模型中模型融合技術的應用總結。
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:模型融合技術在不同機器學習子領域應用的總結。
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]——在模型合并背景下的有效性進行了初步分析。研究觀察到,雖然水印方法在合并后的模型中無法被檢測到,但指紋方法仍然可以被檢測到。
