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