轉(zhuǎn)載整理自 智子引擎
量子位 | 公眾號 QbitAI
隨著多模態(tài)大模型的快速發(fā)展,當前主流多模態(tài)大模型具備完成多種任務(wù)的能力(圖文描述、視覺問答、文字識別、圖標理解、目標檢測等)。但是,這些不同的多模態(tài)任務(wù)往往具有完全不同的數(shù)據(jù)分布,導(dǎo)致在模型訓(xùn)練過程中遇到“多任務(wù)沖突”的問題,尤其在模型參數(shù)量較小時,這種問題尤為突出。如何才能在有限增加模型參數(shù)量以及訓(xùn)練成本的條件下,高效地擴展模型容量,緩解多模態(tài)大模型“多任務(wù)沖突”問題?
近日,針對這一挑戰(zhàn),來自大模型初創(chuàng)公司智子引擎的研究團隊開源了基于MoE架構(gòu)的多模態(tài)大模型Awaker2.5-VL。Awaker2.5-VL通過設(shè)置多個專家,擴展了模型在不同任務(wù)上的能力,有效地緩解了多模態(tài)“多任務(wù)沖突”的問題。該模型還對MoE中門控網(wǎng)絡(luò)的路由策略進行了細致的研究,并設(shè)計了一個簡單且十分有效的路由策略,提升了模型訓(xùn)練的穩(wěn)定性。目前,Awaker2.5-VL的論文和代碼已經(jīng)公開,后續(xù)還會更新更強的版本。
論文地址:https://arxiv.org/abs/2411.10669
代碼倉庫:https://github.com/MetabrainAGI/Awaker
模型架構(gòu)Awaker2.5-VL采用參數(shù)高效的LoRA-MoE架構(gòu),如下圖(左)所示。該架構(gòu)包含多個Task Expert和一個Global Expert,分別學(xué)習(xí)專用知識和通用知識,每個專家都是一個LoRA結(jié)構(gòu)。此外,該架構(gòu)還包含一個門控網(wǎng)絡(luò)用于控制專家的激活。這種MoE架構(gòu)可以在Attention、MLP等結(jié)構(gòu)中執(zhí)行快速插入的操作,并且還可以通過調(diào)整每個LoRA的秩自行調(diào)整模型的參數(shù)量。Awaker2.5-VL還設(shè)計了一個簡化版的MoE架構(gòu),如下圖(右)所示,在這個簡化版MoE中,門控網(wǎng)絡(luò)被移除,而是由其它層MoE共享的路由結(jié)果控制專家的激活。Awaker2.5-VL在基座模型中的不同模塊穿插使用這兩種MoE架構(gòu)。
Awaker2.5-VL采用的兩種MoE架構(gòu)
Awaker2.5-VL針對MoE架構(gòu)中門控網(wǎng)絡(luò)的路由策略進行了研究,并設(shè)計了一種簡單且有效的Instance-level的路由策略。該策略將圖片和問題的Embedding作為門控網(wǎng)絡(luò)的輸入,并且為了保持訓(xùn)練和推理時路由的一致性,訓(xùn)練時數(shù)據(jù)中的label部分不參與路由。此外,與傳統(tǒng)MoE不同的是,Awaker2.5-VL每一層MoE的門控網(wǎng)絡(luò)都共享相同的輸入。這種簡單高效的路由策略降低了模型的復(fù)雜度,提高了模型的穩(wěn)定性。
模型訓(xùn)練Awaker2.5-VL以Qwen2-VL-7B-Instruct作為基座模型進行實現(xiàn),總模型參數(shù)量為10.8B。訓(xùn)練分為三個階段,如下圖所示。第一階段,初始化訓(xùn)練。在該階段基座模型被凍結(jié),并設(shè)置一個單LoRA進行訓(xùn)練。第二階段,MoE訓(xùn)練。該階段進行整個MoE模塊的訓(xùn)練(包括每個專家和門控網(wǎng)絡(luò)),其中每個專家都使用第一階段訓(xùn)練的LoRA進行參數(shù)初始化。第三階段,指令微調(diào)階段。該階段將MoE的門控網(wǎng)絡(luò)凍結(jié),僅訓(xùn)練每個“專家”,將進一步加強模型的指令跟隨能力。同時,該階段的訓(xùn)練策略也適用于基座模型在其他下游任務(wù)微調(diào)的場景。
Awaker2.5-VL的三階段訓(xùn)練過程
Awaker2.5-VL一共使用了1200萬的指令數(shù)據(jù)進行模型訓(xùn)練,其中包括700萬的英文數(shù)據(jù)和500萬的中文數(shù)據(jù)。英文數(shù)據(jù)主要來源于開源數(shù)據(jù),包括Cambrian (2M)、LLaVAOneVision (4M)、Infinity-MM (800K)、MathV360k (360K)等。中文數(shù)據(jù)則是智子引擎團隊的自建數(shù)據(jù)集,包括圖文描述、圖文問答、目標檢測、文字識別等多種任務(wù)數(shù)據(jù)。
模型性能Awaker2.5-VL主要在MME-Realworld系列和MMBench系列Benchmark上分別進行了中文測評和英文測評。MME-Realworld是當前最難、規(guī)模最大多模態(tài)評測基準,而MMBench是主流多模態(tài)大模型參評最多的評測基準之一。
Awaker2.5-VL在MME-Realworld和MME-Realworld-CN都位列榜首,且是目前唯一在該Benchmark上“及格”(超過60分)的模型?紤]到MME-Realworld主要面向自動駕駛、遙感、視頻監(jiān)控等復(fù)雜場景,Awaker2.5-VL在MME-Realworld上的出色表現(xiàn)很好地展示它在落地應(yīng)用中的巨大潛力。
Awaker2.5-VL分別在MMBench、MMBench_v1.1、MMBench_CN、MMBench_CN_v1.1四個榜單進行了測評,并且分別以英文能力平均分數(shù)(MMBench和MMBench_v1.1)和中文能力平均分數(shù)(MMBench_CN和MMBench_CN_v1.1)進行排序。Awaker2.5-VL在中文場景和英文場景中分別位列第9和第7。在同量級參數(shù)量的模型中,Awaker2.5-VL表現(xiàn)遠超其他模型。這就是說Awaker2.5-VL能夠兼顧模型效果和資源消耗,也進一步證明它具有極大的落地應(yīng)用價值。
模型應(yīng)用2024年,智子引擎已經(jīng)成功地將Awaker2.5-VL應(yīng)用于多個復(fù)雜的實際場景,包括國家電網(wǎng)、社會治理、服務(wù)型機器人等。在即將到來的2025年,智子引擎將繼續(xù)探索Awaker2.5-VL更多的落地應(yīng)用場景。為了鼓勵這種探索,智子引擎選擇開源Awaker2.5-VL,基于戰(zhàn)略合作伙伴清昴智能的華為騰原生工具鏈MLGuider-Ascend,Awaker2.5-VL已適配騰全產(chǎn)品線,希望更多生態(tài)伙伴能夠參與進來。同時,為了加速國產(chǎn)化AI進程,Awaker系列開源模型與清昴智能已形成標準的騰國產(chǎn)方案,將上線至騰平臺,歡迎大家關(guān)注和使用。