1. 極低訓練成本
通過我們提出的VPGTrans方法,可以快速(少于10%訓練時間)將已有的多模態(tài)對話模型的視覺模塊遷移到新的語言模型,且達到類似或更優(yōu)效果。比如,相比于從頭訓練視覺模塊,我們可以將BLIP-2 FlanT5-XXL的訓練開銷從19000+人民幣縮減到不到1000元:
▲圖 1:基于我們的VPGTrans方法的BLIP-2訓練開銷縮減對比
2. 多模態(tài)大模型定制
通過我們的VPGTrans框架可以根據(jù)需求為各種新的大語言模型靈活添加視覺模塊。比如我們在LLaMA-7B和Vicuna-7B基礎(chǔ)上制作了VL-LLaMA和VL-Vicuna。
3. 開源多模態(tài)對話模型
我們開源了VL-Vicuna,多模態(tài)對話模型,可實現(xiàn)高質(zhì)量的多模態(tài)對話:
▲圖 2:VL-Vicuna的交互實例
一、動機介紹
1.1 背景
2023年是AI元年,以ChatGPT為代表的大語言模型(LLM)大火。LLM除了在自然語言領(lǐng)域顯示出巨大的潛力之外,也開始逐漸輻射到其他相關(guān)領(lǐng)域。比如,LLM在多模態(tài)理解領(lǐng)域掀起了一股從傳統(tǒng)預訓練視覺語言模型(VLM)到基于大語言模型的視覺語言模型(VL-LLM)的變革。通過為LLM接入視覺模塊,VL-LLM可以繼承已有LLM的知識,零樣本泛化能力,推理能力和規(guī)劃能力等。相關(guān)模型有BLIP-2[1],Flamingo[2],PALM-E等。
▲圖 3:常用的VL-LLM架構(gòu)
現(xiàn)有的常用的VL-LLM基本采取圖3所示的架構(gòu):在一個基座LLM基礎(chǔ)上訓練一個視覺soft prompt生成模塊(Visual Prompt Generator, VPG),以及一個進行維度變換的線性層(Projector)。在參數(shù)規(guī)模上,LLM一般占主要部分(比如11B),VPG占次要部分(比如1.2B),Projector最小(4M)。在訓練過程中,LLM參數(shù)一般不會被更新,或者僅僅更新非常少量的參數(shù)??捎柧殔?shù)主要來自于VPG和projector。
1.2 動機
實際上,即便基座LLM的參數(shù)凍結(jié)不訓,但由于LLM的大參數(shù)量,訓練一個VL-LLM的關(guān)鍵開銷依然在于加載基座LLM。因此訓練一個VL-LLM依然無法避免極大的計算代價。比如,要得到BLIP-2(基座LLM為FlanT5-XXL)需要付出超過600個小時的A100訓練時長。如果租用亞馬遜的A100-40G機器,大概需要將近2萬元人民幣的費用。既然從零訓練一個VPG代價如此昂貴,那么我們開始思考能否把一個已有的VPG遷移到新的LLM上來節(jié)省開銷。
▲圖 4:VPG遷移: 跨LLM大小遷移和跨LLM類型遷移
如圖4所示,我們主要探索了兩種類型的VPG的遷移:
(1)跨LLM大小遷移 (TaS): 比如從OPT-2.7B到OPT-6.7B。
(2)跨LLM類型遷移 (TaT): 比如從OPT到FlanT5
其中TaS的意義在于:在LLM相關(guān)科研中,我們通常需要在小LLM上調(diào)參,再擴展到大LLM。有了TaS,我們可以在調(diào)參之后,把小LLM上已經(jīng)訓好的VPG直接遷移到大LLM上。TaT的意義在于:不同功能種類的LLM層出不窮,比如今天有了LLaMA,明天又有了Alpaca和Vicuna。TaT可以讓我們利用已有的VPG快速為新語言模型添加視覺感知能力。
1.3 貢獻
(1) 提出高效的方法: 我們首先通過一系列的探究實驗,探究了影響VPG遷移效率的關(guān)鍵因素。根據(jù)探索實驗發(fā)現(xiàn),我們提出了一個兩階段的高效遷移框架VPGTrans。該框架可以大幅度縮減訓練VL-LLM所需的計算開銷和需要的訓練數(shù)據(jù)。比如,相比于從頭訓練,我們通過BLIP-2 OPT-2.7B到6.7B的VPG遷移,可以僅用大約10%的數(shù)據(jù)和計算時間就達成各個數(shù)據(jù)集相似或更好的效果(圖1)。訓練花銷從17901人民幣到1673元。
(2) 得到有趣的發(fā)現(xiàn): 我們同時提供了TaS和TaT場景下一些有趣的發(fā)現(xiàn),并嘗試給出解釋: a) TaS場景下,使用VPGTrans從小到大遷移不會影響最終模型效果。b) TaS場景下,越小的語言模型上訓練的VPG,遷移到大模型時效率越高,最終效果越好。c) TaT場景下,越小的模型之間遷移的gap越大。在我們驗證實驗中,OPT-350M和FlanT5-base使用VPGTrans互相遷移幾乎和從頭訓練一樣慢。
(3) 開源: 我們使用VPGTrans得到了兩個新的VL-LLMs: VL-LLaMA和VL-Vicuna,并開源在了社區(qū)上。其中VL-Vicuna實現(xiàn)了高質(zhì)量的多模態(tài)對話。歡迎小伙伴嘗試:https://vpgtrans.github.io/.
二、高效率的VPG遷移方案: VPGTrans
首先我們進行一系列的探索驗證實驗,分析如何最大化對于VPG的遷移效率。接著我們基于這些重要觀察提出一個解決方案。
2.1 探究實驗
我們選取BLIP-2架構(gòu)作為我們的基礎(chǔ)模型,預訓練語料采用COCO和SBU,總共1.4M圖文對。下游任務采用COCO Caption, NoCaps, VQAv2, GQA和OK-VQA的zero-shot設(shè)定進行評測(對caption任務并非嚴格zero-shot)。下面是我們的關(guān)鍵發(fā)現(xiàn):
(1)直接繼承一個訓練好的VPG可以加速收斂,但效果有限:我們發(fā)現(xiàn),直接遷移一個LLM上訓練好的VPG到大LLM可以加速模型收斂,但加速效果有限,且收斂后模型效果相比于從頭訓練VPG會掉點(圖5的VQAv2、GQA藍線最高點均低于橘線)。我們猜測,這個掉點是由于隨機初始化的projector會在訓練起始階段損傷VPG中已有的視覺感知能力。
▲圖 5:VPG inherit (藍線): 直接繼承訓練好的VPG。train from scratch (橘線):從頭訓練VPG。only linear (綠線):只訓練linear projector不訓練VPG。
(2)先warm-up訓練projector可以防止掉點,且進一步加速收斂:于是,我們固定住VPG和LLM,先warm-up訓練projector 3個epoch,再解凍VPG進行下一步訓練。我們發(fā)現(xiàn),這樣不僅僅可以避免掉點情況,還能夠進一步加速VPG收斂(圖6)。但值得強調(diào)的是,由于訓練的主要開銷在LLM(參數(shù)巨多),僅僅訓練projector的開銷不會比同時訓練VPG和projector的開銷小太多。所以,我們開始探究加速projector warm-up的關(guān)鍵技術(shù)。
▲圖6:先warm-up訓練projector可以防止掉點+加速收斂
(3)詞向量轉(zhuǎn)化器初始化可以加速projector warm-up:首先,VPG是通過把圖像轉(zhuǎn)化為LLM可以理解的soft prompt來產(chǎn)生效果的。而soft prompt的使用方式和詞向量其實是非常相似的,都是直接輸入語言模型來提示模型產(chǎn)生對應內(nèi)容。所以,我們使用詞向量來作為soft prompt的一個代理,訓練了一個到的詞向量轉(zhuǎn)化器(一個線性層)。然后,我們將詞向量轉(zhuǎn)化器和上的projector融合作為projector的初始化。通過這個初始化,我們可以將projector的warm-up訓練由3個epoch減為2個epoch。
(4)projector可以在超大學習率下快速收斂:我們進一步實驗發(fā)現(xiàn),projector由于其參數(shù)量較少,可以使用5倍的正常學習率進行訓練而不崩潰。通過5倍學習率的訓練,projector warm-up可以進一步被縮短到1個epoch。
(5)一個附加發(fā)現(xiàn): 雖然projector warm-up很重要,但僅訓練projector是不夠的。尤其在caption任務上面,僅僅訓練projector的效果要比同時訓練VPG的效果差一截 (圖5綠線在COCO Caption和NoCaps均遠低于藍線)。這也就意味著,僅僅訓練projector會導致欠擬合,也就是無法充分對齊到訓練數(shù)據(jù)。
2.2 我們所提出的方法
▲圖 7:VPGTrans框架: (1) 一階段:projector的warm-up (2) 二階段: 整體微調(diào)
如圖7所示,我們的方法共分為兩個階段:(1)第一階段: 我們首先使用詞向量轉(zhuǎn)化器和原有projector進行融合作為新projector的初始化,然后用5倍學習率訓練新projector一個epoch。(2) 第二階段:直接正常訓練VPG和projector。
三、實驗結(jié)果
3.1 加速比
▲表1:我們的VPGTrans的相比于從頭訓練在各個數(shù)據(jù)集的加速比
如表1所示,我們測試了不同遷移類型下,VPGTrans在不同數(shù)據(jù)集上的加速比。VPGTrans在某指定數(shù)據(jù)集A上的加速比是通過從頭訓練達到A上最佳效果a的輪數(shù)除以VPGTrans在A上效果超過a的最小訓練輪數(shù)得到。比如,從頭在OPT-2.7B上訓練VPG,在COCO caption達到最佳效果需要10個epoch,但從OPT-125M遷移VPG到OPT-2.7B,僅需1個epoch就能達到該最佳效果。則加速比為10/1=10倍。我們可以看到,無論是在TaS還是在TaT場景下,我們的VPGTrans都可以實現(xiàn)穩(wěn)定的加速。
3.2 有趣的發(fā)現(xiàn)
我們選取了一個比較有趣的發(fā)現(xiàn)進行了說明,其他更多更有意思的發(fā)現(xiàn)請參照我們的論文。
TaS場景下,越小的語言模型上訓練的VPG,遷移起來效率越高,最后模型效果越好。參考表1,我們可以發(fā)現(xiàn)OPT-1.3B到OPT-2.7B的加速比要遠小于OPT-125M、OPT-350M到OPT-2.7b的加速比。我們嘗試提供了一個解釋:一般越大的語言模型,由于其文本空間的維度更高,會更容易損害VPG(VPG一般都是類似于CLIP的預訓練模型)本身的視覺感知能力。我們通過類似于linear probing的方式進行了驗證:
▲圖 8:僅訓練linear projector層的跨LLM大小遷移 (模擬linear probing)
如圖8所示,我們進行了OPT-125M,350M,1.3B,2.7B之間的跨LLM大小的遷移。在實驗中,為了公平對比不同模型大小下訓練過的VPG的視覺感知能力,我們固定住VPG的參數(shù)僅僅訓練linear projector層。我們選取了COCO Caption上的SPICE指標作為視覺感知能力的衡量手段。不難發(fā)現(xiàn),對于每一個給定的,幾乎都符合越小,最終SPICE越高的一個現(xiàn)象。
3.3 大規(guī)模實驗
前文實驗主要是在小規(guī)模場景下驗證猜想。為了證明我們的方法的有效性,我們模擬BLIP-2的預訓練過程進行了大規(guī)模實驗:
▲表2:真實場景下的大規(guī)模實驗結(jié)果
如表2所示,我們的VPGTrans在大規(guī)模場景下依然有效。通過OPT-2.7B到OPT-6.7B的遷移,我們僅用10.8%的數(shù)據(jù)和不到10%的訓練時長達到了相似或更優(yōu)的效果。尤其是,我們的方法在BLIP-2 以FlanT5-XXL為基座LLM下實現(xiàn)了5%左右的訓練成本控制
四、定制您的VL-LLMs
我們的VPGTrans可以快速為任意新的LLMs添加視覺感知模塊,從而得到一個全新的高質(zhì)量VL-LLM。在本工作,我們額外訓練了一個VL-LLaMA和一個VL-Vicuna。其中VL-LLaMA的效果如下:
▲表3:VL-LLaMA的效果展示
同時,我們的VL-Vicuna可以進行多模態(tài)對話。我們和MiniGPT-4進行了簡單的比較:
五、總結(jié)
在這項工作中,我們對 VPG 在 LLM 之間的可遷移性問題進行了全面調(diào)查。我們首先探討了最大化遷移效率的關(guān)鍵因素?;陉P(guān)鍵觀察,我們提出了一種新穎的兩階段遷移框架,即 VPGTrans。它可以在顯著降低訓練成本的同時,實現(xiàn)相當或更好的性能。通過 VPGTrans,我們實現(xiàn)了從 BLIP-2 OPT 2.7B 到 BLIP-2 OPT 6.7B 的 VPG 遷移。相較于從零開始連接 VPG 到 OPT 6.7B,VPGTrans僅需10.7%訓練數(shù)據(jù)和不到10%的訓練時長。此外,我們展示并討論了一系列有趣發(fā)現(xiàn)及其背后的可能原因。最后,我們通過訓練VL-LLaMA和LL-Vicuna,展示了我們的 VPGTrans 在定制新的 VL-LLM 方面的實際價值。
-
開源
+關(guān)注
關(guān)注
3文章
3412瀏覽量
42737 -
模型
+關(guān)注
關(guān)注
1文章
3338瀏覽量
49266 -
LLM
+關(guān)注
關(guān)注
0文章
301瀏覽量
411
原文標題:VPGTrans: 10%的成本定制你自己的類GPT-4多模態(tài)大模型
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
對比解碼在LLM上的應用
![對比解碼<b class='flag-5'>在</b><b class='flag-5'>LLM</b>上的應用](https://file1.elecfans.com/web2/M00/A4/11/wKgZomULuxeAAwe2AAAfesugdIw763.png)
遷移學習
云計算的可遷移性,沒那么簡單
云原生存儲在實際場景中可以做什么
![云原生存儲<b class='flag-5'>在</b>實際場景中可以做什么](https://file.elecfans.com/web1/M00/B8/C8/o4YBAF59wseAef_nAAEO4hgJ0TY452.png)
在云中執(zhí)行ActiveDirectory遷移
LLM在各種情感分析任務中的表現(xiàn)如何
![<b class='flag-5'>LLM</b><b class='flag-5'>在</b>各種情感分析任務中的表現(xiàn)如何](https://file1.elecfans.com/web2/M00/88/D5/wKgZomR0b1yAD74zAAAdr4RGBFI928.png)
100%在樹莓派上執(zhí)行的LLM項目
![100%<b class='flag-5'>在</b>樹莓派上執(zhí)行的<b class='flag-5'>LLM</b>項目](https://file1.elecfans.com/web2/M00/C2/22/wKgZomXgQROAO--xAAAnB3xBLS8934.png)
蘋果承諾:2025年秋季iOS與Android數(shù)據(jù)可互換
什么是LLM?LLM的工作原理和結(jié)構(gòu)
LLM模型的應用領(lǐng)域
在TMS320F2837x和TMS320F28P65x之間進行遷移
![<b class='flag-5'>在</b>TMS320F2837x和TMS320F28P65x<b class='flag-5'>之間</b>進行<b class='flag-5'>遷移</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
在TMS320F2838x和TMS320F28P65x之間進行遷移
![<b class='flag-5'>在</b>TMS320F2838x和TMS320F28P65x<b class='flag-5'>之間</b>進行<b class='flag-5'>遷移</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論