好的,歡迎大家回來。今天的課,我們先講大語言模型,再講多模態(tài)大語言模型。
第一部分討論多模態(tài)基礎(chǔ)模型的基本知識,包括架構(gòu)和預(yù)訓練。然后講如何將大語言模型適配成多模態(tài)模型。前兩部分仍局限于輸入多模態(tài)數(shù)據(jù)但生成文本的情況。接著我們會探討如何以多模態(tài)數(shù)據(jù)為條件,生成多模態(tài)數(shù)據(jù)——也就是從文本生成邁向多模態(tài)生成,以及一些最新方向。
回顧一下,大語言模型現(xiàn)在通常分三個階段訓練:預(yù)訓練階段,在海量數(shù)據(jù)上按既定方法預(yù)測下一個詞元;指令微調(diào)階段,提供人類示范的“輸入-輸出”對,讓模型學會遵循指令;當下還有后訓練階段的測試時擴展,讓模型思考并搜索多條可能路徑來得到正確答案。這些模型的能力包括問答(從互聯(lián)網(wǎng)或自身權(quán)重中檢索知識)、開放對話、多語翻譯、檢索實時新聞和信息,以及解決數(shù)學題、寫代碼這類需要將復(fù)雜問題分解、逐步求解并以可解釋方式呈現(xiàn)的推理任務(wù)。David已經(jīng)帶大家了解了這些最新進展。
現(xiàn)在,我們要從大語言模型走向大型多模態(tài)模型。大語言模型本身只接收文本,沒有扎根于真實世界的感官信息。最大的區(qū)別在輸入端:理想情況下,你希望模型能接收視頻——比如我們展示過的那些展現(xiàn)人思維活動的視頻——來理解社交互動、接收傳感器和實體機器人數(shù)據(jù),讓模型真正扎根、理解真實世界中各種不同的媒介。那么,構(gòu)建這些大型多模態(tài)模型面臨哪些挑戰(zhàn)?目前進展如何?
這是我所看到的時間線和當前的階段。我們從多模態(tài)模型起步,讓模型理解世界,做些簡單的分類任務(wù)。如今,你當然還能讓模型回答分類問題,只需以問題形式提問,并附上可能的答案列表即可。從分類走向更開放的任務(wù),你不僅能問“他是開心、難過還是諷刺”,還可以要求它描述、抓取關(guān)系——從單個詞的回答走向基于視頻的開放式對話。接著有工作進一步擴展到解釋:不只是給出答案,還要解釋原因。比如你可以追問,為什么這兩個人顯然在互諷、似乎彼此厭惡,卻分明是多年老友?模型可能會解釋其中的語言,引用視覺證據(jù)和面部表情,甚至回溯之前的片段來佐證自己的判斷。我們現(xiàn)在正處于這個“解釋”階段。我們已經(jīng)從分類、開放式、有來有往的對話,推進到了基于多模態(tài)數(shù)據(jù)的、帶有逐步推理的、相當好的解釋。
![]()
再往前,還有更困難的方向:能否用一段短視頻作為提示,進一步生成、動畫化一個故事?給一段起始指令,模型可能生成視頻、音頻、語言,讓角色動起來。然后是反事實推理——如果你問“如果這些人來自不同的社會或文化,這種諷刺還會被視為幽默還是冒犯?會冒犯誰?”模型能否生成更多視頻和音頻來論證?目前,在多模態(tài)推理和解釋方面已有許多有趣進展,當下也在推進多模態(tài)輸入和多模態(tài)輸出,朝著生成和反事實方向邁進。
這是我眼中未來這些模型發(fā)展的總示意圖:模型接收語言和各種不同模態(tài),學習語言與多模態(tài)的表示;基于此,它能繼續(xù)生成文本,因此語言模型是扎根于多模態(tài)的;它還能生成其他模態(tài),并且可以在與人多步對話和交互中完成這一切。今天的課就覆蓋這三個部分。第一部分,回顧一些已有工作,介紹如何接收不同模態(tài)、學習表示,用基礎(chǔ)模型獲得豐富表示。第二部分,討論如何將學到的多模態(tài)表示快速適配,使其不僅能用于分類,還能用于語言模型的交互和對話。第三部分,探討如何超越文本生成,在輸入和輸出端生成其他模態(tài)。
![]()
第一部分,學習多模態(tài)表示。我們見過用于語言的Transformer,它們同樣可以用于視覺。本質(zhì)上,現(xiàn)在任何東西都可以被分詞為離散單元并視為序列。語言是詞的序列,圖像是圖像塊的序列,視頻是幀的序列,傳感器信息也可以看作序列。Transformer通過在這些序列元素上學習自注意力,來獲得信息不斷豐富的表示。多模態(tài)Transformer自然成為許多此類模型的骨干。與單模態(tài)Transformer最大的區(qū)別在于,查詢和鍵來自不同模態(tài)。查詢可能來自語言,鍵來自非語言模態(tài)(如聲音特征、視覺特征)。維度必須統(tǒng)一,因為你需要把它們視為同一個底層多模態(tài)空間,在這個空間里衡量對齊和相似度,而這只有在嵌入空間相同時才可能實現(xiàn)。Wq將語言映射到該空間,Wk將非語言信息映射到該空間。這樣你就能得到一個3×4的交叉注意力矩陣——不只是詞與詞之間,而是詞與非語言表達之間。它不只是關(guān)注同一時刻的表達,也可以關(guān)注更早或更晚時刻的表達。
對齊本身不是唯一目標。真正目的是利用這種對齊來學習更好的表示。用這個加權(quán)平均得到的新多模態(tài)表示,就可以用來做推理,比如預(yù)測諷刺。這種從純語言Transformer擴展而來的多模態(tài)版本,幾乎被所有基礎(chǔ)模型采用。
最初,人們用數(shù)據(jù)從頭訓練Transformer,后來開始預(yù)訓練。常見做法是:對圖像序列和詞序列,先在每個模態(tài)內(nèi)應(yīng)用Transformer,然后應(yīng)用跨模態(tài)Transformer,讓語言關(guān)注視覺,視覺關(guān)注語言,通常雙向都做。經(jīng)過多層之后,語言關(guān)注了視覺,視覺關(guān)注了語言,得到兩組非對稱的多模態(tài)表示——這很有用,因為視覺可能需要密集關(guān)注圖像的很多區(qū)域,而語言因詞少而關(guān)注更稀疏。所以雙向獨立獲得非對稱表示很重要。
后來人們開始預(yù)訓練這些Transformer。用大規(guī)模圖文數(shù)據(jù),做各種預(yù)測任務(wù),基本都是自監(jiān)督或無監(jiān)督的,不需要人類標注。可以做掩碼語言建模:遮住一些詞,用周圍詞和圖像區(qū)域來預(yù)測被遮住的詞,遮得越多,越迫使模型從視覺翻譯信息。也可以做掩碼區(qū)域建模:遮住圖像某些部分,用其余圖像區(qū)域和文字描述來預(yù)測被遮住的部分。這是在更細粒度層面的。還有更全局的層面:用整張圖像(所有圖像塊)和整段文本(整串詞)做對比學習。整張圖像對應(yīng)這段描述,而與其他描述不同。人們探索了很多目標函數(shù),有基于視覺和語言的細粒度(詞級別、小圖像區(qū)域級別)的,也有全局的(整體圖像與整體描述匹配)。
這些模型顯示,部分注意力和對齊分數(shù)具有一定可解釋性。比如從單詞“花”出發(fā)的交叉注意力,確實高亮顯示了花所在的區(qū)域;“墻”的注意力也高亮顯示了墻的圖像塊。這并不新鮮,我們見過語言Transformer、視覺Transformer、多模態(tài)Transformer及其不同的預(yù)訓練方式,這里只是回顧。
接下來,你需要將這些表示適配為大語言模型的輸入,這樣才能靈活地對多模態(tài)上下文進行問答。怎么做呢?一個關(guān)鍵思路是“適配”。大多數(shù)時候,大語言模型規(guī)模巨大,理想情況下你希望將其凍結(jié),不用更新太多參數(shù)。你可以對任何模態(tài)的數(shù)據(jù)定義一個適配器。比如一張圖像,通過預(yù)訓練的CNN或視覺Transformer得到特征嵌入,然后定義一個適配器——它是一個很小的變換,輸入圖像特征,輸出與語言模型詞元嵌入維度相同的東西。把圖像特征適配到凍結(jié)大語言模型的輸入空間后,你可以將它作為前綴,放在詞嵌入之前拼接起來,一起送入預(yù)訓練模型。這樣模型就能在上下文中同時理解被適配為詞元空間的圖像特征和實際文本的詞嵌入。
這個模型怎么訓練?唯一需要訓練的就是適配器。適配器可以非常小,甚至一個簡單的線性變換就足夠了。視覺模型可訓練也可凍結(jié),語言模型通常凍結(jié)。訓練時,給它成對的圖像和文字描述,讓它以前文(適配后的圖像特征和已預(yù)測出的詞)為條件,自回歸地預(yù)測序列中的下一個詞。訓練完成后,你可以做很多事:給它一張新圖像,問它是什么顏色,它會給出正確答案——盡管它從未見過圖像和問題的組合,只見過文本。如果零樣本效果不夠好,還可以給它單樣本示例,讓它據(jù)此泛化。
![]()
這就是2021年Google DeepMind的工作。他們進一步擴大規(guī)模,在2022年推出了Flamingo模型,同樣基于凍結(jié)大語言模型加適配器的方法。擴大規(guī)模后,模型可以進行更長篇幅的對話。給它一張圖像,經(jīng)過圖像嵌入和適配器進入語言模型,你就能跟它聊月球上的兩只泰迪熊,或者聊不同風格的芒果。大家可能在社交媒體上見過早期視覺模型的一些案例:一張?zhí)O果的照片,上面貼了張寫有“iPod”的貼紙,視覺模型就把它分類為iPod。而Flamingo能正確識別出上面貼了張貼紙,且貼紙上寫的是iPod——不過對這些病毒式傳播的失敗案例被“修復(fù)”,也不必過度解讀,因為大公司很可能看到推特上的搞笑例子,就把它們加進訓練數(shù)據(jù)了。
如今的GPT-4,沒人真正知道它的運作方式。一些人做了小型開源版本,發(fā)現(xiàn)適配器層非常通用:圖像經(jīng)過凍結(jié)的視覺Transformer(Q-Former),再加上一個線性適配層,將圖像特征映射到開源指令跟隨語言模型的詞元嵌入維度,唯一訓練的就是這個線性層。
現(xiàn)在這些模型通常分階段訓練。第一階段是對齊:用大量圖像及其期望描述,訓練模型看圖說話。第二階段是指令微調(diào):不僅描述圖像,而是給模型圖像和人類標注的指令,以及人類寫出的理想回答,用這些數(shù)據(jù)做監(jiān)督學習,預(yù)測理想回答中的每個詞,只訓練線性層。這是2023年的工作,當時還沒有做第三階段的后訓練人類反饋。第一階段只是描述圖像,第二階段更開放,比如評價一個Logo,由人類標注他們感興趣的任務(wù)和理想回答。
人們已經(jīng)把這種適配器模型擴展到了更多模態(tài)。LLaMA-Adapter就是一個很好的開源社區(qū)項目,基于LLaMA構(gòu)建。它包含一系列針對不同模態(tài)的適配器:圖像、3D點云(經(jīng)過點云表示模型編碼后適配到LLaMA輸入空間)、多種語言等。比如給一個3D點云和指令,就能生成對應(yīng)的圖像。因為他們在輸出端還接入了文本到圖像的擴散模型。
![]()
數(shù)據(jù)方面,預(yù)訓練數(shù)據(jù)集規(guī)模呈指數(shù)級增長:從YFCC到LAION-400M,再到LAION-5B,最近開源的是DataComp,有120億個數(shù)據(jù)點。另一個趨勢是,以前預(yù)訓練只是單張圖像配單個描述,現(xiàn)在越來越多使用“圖文交錯”數(shù)據(jù)——圖像、描述、圖像、描述自然交替,更貼近真實世界的交流方式,這帶來了新的能力。同時,近期工作轉(zhuǎn)向更高數(shù)據(jù)質(zhì)量而非數(shù)量,意識到海量數(shù)據(jù)中很多并不好用,有些甚至包含不當內(nèi)容。現(xiàn)在趨勢是過濾出規(guī)模較小但質(zhì)量更高的數(shù)據(jù)集,如DataLLM和DCLM,它們也是圖文交錯的。
指令微調(diào)數(shù)據(jù)集規(guī)模更小、更分散。這個階段的格式不再是圖文互相描述,而是圖像加上人類寫的指令和理想回答。GPT-4的指令微調(diào)數(shù)據(jù)大約5000條,是最早的例子之一。LLaVA、InstructBLIP是其他流行的視覺指令微調(diào)數(shù)據(jù)集。它們的量級在數(shù)十萬,而非預(yù)訓練階段的數(shù)十億。這些是通用領(lǐng)域的,當然還有很多針對特定領(lǐng)域的指令微調(diào)數(shù)據(jù)集,比如David兩周前展示的大規(guī)模醫(yī)學影像和醫(yī)學問題指令微調(diào)數(shù)據(jù),以及LLaVA-Med和Biomed等醫(yī)學領(lǐng)域數(shù)據(jù)集。
第三部分。我們講了如何用多模態(tài)數(shù)據(jù)學習表示,以及如何快速適配進大語言模型。下一步是,除了生成文本,還要生成更多模態(tài)的數(shù)據(jù)。比如根據(jù)描述生成圖像、從點云生成圖像、高亮相關(guān)片段或檢索證據(jù)——這些都是視覺和音頻生成問題。近期趨勢正是從純文本生成走向多模態(tài)生成。你們可能見過文本到圖像模型,比如Stable Diffusion,我們大約兩周后會詳細講。今天先假定大家已有基本了解,重點講如何將它們整合進多模態(tài)模型。
快速回顧:用海量圖像訓練出優(yōu)秀的圖像編碼器和解碼器。如今最好的圖像編碼器大多基于CLIP,它在訓練時就用對比學習讓圖像表示與語言表示很接近,這極大地方便了后續(xù)工作。大致流程是:CLIP編碼圖像,語言模型編碼文本,然后預(yù)測CLIP圖像嵌入,最后用擴散模型或流匹配模型逐像素生成圖像。
怎么把文本到圖像模型整合進多模態(tài)大模型管線?一個創(chuàng)新是圖文交錯訓練。你看到圖像,它通過視覺編碼器和適配層,然后是一段描述,接著更多圖像、更多描述……所有這些交錯在一起,構(gòu)成完整的輸入序列,送入語言模型。語言模型生成后續(xù)詞元來完成故事,同時生成的嵌入可以與圖像庫中的嵌入計算相似度,從而檢索出最匹配的圖像,實現(xiàn)視覺上的延續(xù)。
部署后,你可以用語言和視覺與模型多次交互,模型也能生成語言和視覺,并保持連續(xù)性。比如對話中隨時要求“給我看看插畫”或“再給我看張照片”,模型就能檢索或生成相應(yīng)的圖像。
這種檢索方式只在離散的圖像庫中工作,優(yōu)點是一定能生成真實的圖像,缺點是受限于圖像庫且有時較慢。于是自然延伸到逐像素圖像生成。同樣,圖像通過視覺適配器,語言通過描述,圖文交錯輸入,然后由一個決策模塊決定是檢索還是生成。有時檢索更好,有時生成更好。例如剛出爐的餅干怎么在農(nóng)貿(mào)市場展示,檢索模型給了碼放緊湊的樣式,生成模型給了更松散的擺盤樣式。
![]()
一個常用的數(shù)據(jù)集叫視覺敘事,是大型圖文交錯數(shù)據(jù)集,故事由文本和圖像交替組成,用于訓練和評估這些模型。
最新進展方面。我們花了很多時間講適配器——凍結(jié)大語言模型加小型適配器來快速獲得多模態(tài)能力。但上周有人可能看到了LLaMA-4,它宣稱自己是“原生多模態(tài)模型”,這在業(yè)界引發(fā)了一場爭論。所謂原生,就是不僅從一個預(yù)訓練的大語言模型開始并適配多模態(tài)信息,而是從零開始,用隨機初始化的參數(shù),同時訓練語言、圖像、視頻等多種模態(tài)。這當然只有大公司才有資源做。LLaMA-4對此大加渲染,其最大模型達到2萬億參數(shù)。它的優(yōu)勢在于,如果承擔得起成本,就能從圖像和視頻中發(fā)現(xiàn)更多信息,而我們已經(jīng)幾乎窮盡了訓練這些模型所用的文本數(shù)據(jù)。
對心理學和生物學背景的人來說,這種方式也很有吸引力,因為這更接近人類和兒童的學習方式——先學習視覺、聽覺和運動感知,然后才學習語言。但結(jié)果目前并不理想。我們也不知道GPT-4o和Gemini具體如何訓練,很可能是預(yù)訓練、適配和部分原生訓練的混合。
非原生多模態(tài)大模型采用“解耦”架構(gòu):大語言模型和圖像編碼器都是預(yù)訓練好的,可以凍結(jié),也可以微調(diào)。這種架構(gòu)非常模塊化、即插即用,尤其適合在論文中做實驗或擴展到更多模態(tài)。原生模型則直接在多模態(tài)輸入上訓練。有些用晚期融合(先有好的圖像特征,再與文本聯(lián)合訓練),有些用早期融合(甚至不需要單獨訓練圖像編碼器,直接對像素或圖像塊進行嵌入,送入語言模型)。圖像模型在什么層級進入語言模型,這本身也是個系統(tǒng)工程問題。
Meta發(fā)布LLaMA-4時也發(fā)布了這些原生多模態(tài)模型的擴展定律。我們幾周前讀過一篇關(guān)于混合模態(tài)生成模型擴展定律的論文,也是出自Meta。那篇論文研究的就是原生多模態(tài)模型——文本、語音,有的從零訓文本,有的從零訓語音,有的從零聯(lián)合訓練。他們的最新結(jié)論是:早期融合在小規(guī)模時略有優(yōu)勢,但到大規(guī)模時不同架構(gòu)表現(xiàn)相似;原生多模態(tài)模型的擴展趨勢與單模態(tài)大語言模型相似,只是擴展指數(shù)差一個常數(shù)因子——這或許是好事,意味著關(guān)于擴展的所有工作可能以常數(shù)倍換算到原生多模態(tài)模型。而適配型多模態(tài)模型的擴展定律,目前還缺乏系統(tǒng)研究,因為語言部分和適配部分的擴展可能不是單一多項式關(guān)系。
LLaMA-4還率先在多模態(tài)模型中公開使用了混合專家架構(gòu),這對原生多模態(tài)模型在相同推理成本下帶來了顯著增益。他們的消融實驗發(fā)現(xiàn),為不同模態(tài)設(shè)計獨立的專家反而不如模態(tài)無關(guān)的專家設(shè)計。我們也做了相關(guān)研究,出發(fā)點正是模態(tài)交互的不同類型:有時信息是共同且冗余的,有時有很多協(xié)同。預(yù)訓練的視頻大模型在信息相似時表現(xiàn)尚可,但在需要捕獲涌現(xiàn)出的新協(xié)同信息時很吃力。因此我們設(shè)計了基于信息來源的路由機制,不同專家負責不同交互類型,還有一個通用專家。
![]()
在多模態(tài)時間序列大模型方面也有不少有趣工作,基本都是凍結(jié)預(yù)訓練大語言模型,加上傳感器編碼模型和適配器。任務(wù)包括傳感器分類,甚至可以“問”模型下一個傳感器值是多少,模型會輸出類似“0.6”這樣的詞元化數(shù)字。但目前這些模型的表現(xiàn)還很值得商榷。有研究發(fā)現(xiàn),去掉一些復(fù)雜的注意力層,甚至把凍結(jié)的大語言模型替換成簡單的注意力層,性能變化微乎其微,這說明具體什么組件在起作用還很不清楚。時間序列的表示方式也在探索中:有人設(shè)計專門的時間序列表示模型,有人把序列畫成圖像輸入,效果意外地好,也有人直接以數(shù)字文本形式輸入,這在機器人領(lǐng)域較常見。
總結(jié)一下。我們回顧了多模態(tài)基礎(chǔ)模型及其架構(gòu)與預(yù)訓練方法的演變。當前流行的方法是通過訓練模塊化的適配器層,將凍結(jié)的大語言模型適配為多模態(tài)版本。另一個大趨勢是,從純文本生成走向多模態(tài)輸入加多模態(tài)輸出,實現(xiàn)真正的多模態(tài)交互。此外還有原生多模態(tài)模型、多模態(tài)混合專家、圖文交錯訓練等方向。別忘了推進項目,提交閱讀作業(yè)。謝謝大家。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.