多模態(tài)大模型學雜了能力反下降?新研究:MoE+通用專家解決沖突
微調,能讓通用大模型更加適配具體的行業(yè)應用。
但現(xiàn)在,研究人員們卻發(fā)現(xiàn):
對多模態(tài)大模型做“多任務指令微調”,大模型可能會“學得多錯得多”,因為不同任務之間的沖突,導致泛化能力下降。
△多模態(tài)指令微調存在任務沖突
舉個例子,多模態(tài)問答任務可能要求回復盡可能簡潔準確,文檔理解任務卻會反過來要求大模型盡可能詳細地做出描述。
不同下游任務指令微調數(shù)據(jù)分布差異較大,導致一個大模型難以在多個下游任務中均達到最優(yōu)性能。
如何解決這個問題?
來自香港科技大學、南方科技大學和華為諾亞方舟實驗室的聯(lián)合研究團隊,受MoE(混合專家模型)開源大模型Mixtral-8×7B的啟發(fā),提出利用稀疏專家模型,打造下游任務泛化性能更好、理解能力更強的多模態(tài)大模型。
圖片
具體細節(jié),一起來看。
多模態(tài)指令微調存在任務沖突
為了驗證多模態(tài)指令微調中不同類型任務數(shù)據(jù)對模型性能的影響,研究人員將數(shù)據(jù)進行如下劃分:
- VQA(視覺問答):VQAv2、OKVQA、A-OKVQA、OCRVQA,
- Captioning(圖像描述):COCO Caption、Web CapFilt、TextCaps,
- Full(所有數(shù)據(jù)):VQA、Captioning、LLaVA-150k、VQG(視覺問題生成,基于VQA數(shù)據(jù))。
基于以上數(shù)據(jù),研究人員采用LoRA對InstructBLIP進行微調,獲得3個專家模型,并在其他數(shù)據(jù)(Flickr30k-圖像描述、GQA/SciQA/IconQA/TextVQA等不同類型視覺問答、HM/VSR等多模態(tài)分類或推理任務)上進行零樣本測試和評估。
圖片
從上圖(右)中可以看出,在指令微調中,并非采用全量數(shù)據(jù)會取得最好效果,相反,只有三個下游任務(GQA,VSR,TextVQA)在全量數(shù)據(jù)專家下表現(xiàn)最好。
這說明,對于大部分任務來說,在指令微調過程中引入其他任務的數(shù)據(jù),反而會降低模型性能,多模態(tài)指令微調存在任務沖突。
另一方面,實驗中觀察到,VQA和Captioning兩個專家模型,在各自任務中取得了相較于全量專家更好的表現(xiàn)。這樣的方法看似解決了任務沖突的問題,但存在以下局限:
- 不同訓練任務的知識無法在任務專家之間共享;
- 訓練的數(shù)據(jù)需要人為地劃分,當訓練數(shù)據(jù)種類較多時難以進行;
- 新任務來臨時,需要人為判斷使用哪一個任務專家。
為了解決以上局限,研究團隊提出,可以利用稀疏專家模型(MoE),不同的專家處理不同的任務,并設計一種數(shù)據(jù)劃分的方法,把相似的任務交給同一個專家處理。
基于指令聚類的稀疏專家多模態(tài)大模型
通過指令聚類劃分數(shù)據(jù)
圖片
在大型視覺-語言模型(LVLM)中,該文定義指令為所有的文本輸入,如上圖(左)C1-C4的文本。
這些指令描述了任務的意圖、要求。因此,作者使用Kmeans將所有的指令聚為64類。
如上圖(右)所示,指令的聚類信息可以有效表示數(shù)據(jù)的任務類型。這樣做省去了人力劃分數(shù)據(jù)的成本。
基于指令聚類信息進行混合LoRA專家路由
圖片
和前面的任務專家相似,模型在該層的輸出同樣由凍結的LLM線性層以及微調的LoRA產生。
不同的是,這里利用數(shù)據(jù)的指令聚類信息來對混合LoRA進行路由。具體而言,對于的模型的輸入,可以按照如下方式計算它的路由信息:
圖片
其中,topk()(考慮k=1的情況)保持前k個最大項不變,并將其他的設置為0,C是可學習的類別的嵌入表征,C[xi]表示xi對應指令的聚類表征,Wgate是路由的線性參數(shù)。
通用專家提升模型泛化性
實驗發(fā)現(xiàn),上述的指令聚類LoRA專家的確緩解了任務沖突的問題,但由于一個專家可能只見過一部分任務,整個模型對下游任務的泛化性降低了。
圖片
因此,該研究團隊提出用通用專家來從所有數(shù)據(jù)中學習指令泛化能力。
與MoE不同,除了通過top1選擇的任務專家,該方法還固定地激活一個通用專家,使得這個專家從所有的指令數(shù)據(jù)中學習。
因此,模型在該層輸出為LLM原始凍結參數(shù)W,任務專家We和通用專家Wu的加權和。
圖片
在這樣的設計下,任務專家和通用專家的協(xié)同既提升了模型在和訓練集相似任務的表現(xiàn),又保障了模型對新任務的泛化能力。
實驗效果
該論文遵循InstructBLIP的實驗場景(數(shù)據(jù)使用、評估標準、訓練細節(jié)),在13個訓練數(shù)據(jù)集(包括VQA、Captioning、VQG等)上進行指令微調并在11個測試數(shù)據(jù)集上評估(訓練數(shù)據(jù)集和測試數(shù)據(jù)集沒有重疊)。
圖片
由上表所示,引入該文章提出的方法(MoCLE)后,InstructBLIP相較于基線模型在所有下游任務上都有提升,其中,在VSR,IconQA,TextVQA和MSVD-QA的提升尤為明顯。
圖片
上圖可視化了LLM某一層混合LoRA專家在不同數(shù)據(jù)下的路由結果,虛線上下方分別是訓練和測試數(shù)據(jù)。(a)和(b)分別顯示了使用指令聚類信息和指令token平均表征作為路由的結果。
可以看到,使用指令聚類信息路由時,數(shù)據(jù)在專家中出現(xiàn)了分化。例如專家0主要負責VQA相關任務,專家2主要負責Captioning相關任務,有效實現(xiàn)專家的差異化。另一方面,使用指令token平均表征作為條件時,不同任務對專家的激活是相似的,沒有出現(xiàn)分化。
研究團隊認為,稀疏專家多模態(tài)大模型+通用專家模塊的組合,緩解了任務之間的沖突,還保證了稀疏模型對任務的泛化能力,使得多模態(tài)大模型能夠更有效地適配不同的下游行業(yè)應用。
這是首個在多模態(tài)大模型指令微調中結合LoRA和稀疏專家模型(MoE)來緩解任務沖突并保持模型泛化能力的工作。
該工作證實了其應對復雜下游任務的有效性,并未多模態(tài)大模型的應用和發(fā)展開辟了新途徑。