- +1
圖與基礎模型:多模態基礎模型關系推理能力概述
原創 應智韜 集智俱樂部

導語
近年來,采用深度學習對圖結構數據建模的方法取得了巨大進展,并改變了模型理解關系結構的能力。在集智俱樂部讀書會中,耶魯大學計算機科學系助理教授應智韜(Rex Ying)介紹了利用圖結構在多種機器學習場景中實現復雜推理的探索,尤其是聚焦在基礎模型中的應用,包括在對比學習中用鄰近圖捕捉相似關系,稀疏 Transformer 通過圖擴散來擴散注意力、降低模型復雜度,GNN學習分子圖表征,思維傳播利用關系推理增強大模型的復雜推理能力。本文由社區成員劉佳瑋整理成文。
研究領域:基礎模型,多模態,關系推理,圖神經網絡,對比學習
應智韜(Rex Ying) | 講者
劉佳瑋 | 整理
王志鵬、范長俊 | 審校
目錄
0. 基礎模型概述
1. 模型架構中的關系結構
- 鄰近圖捕捉相似關系
- 稀疏 Transformer
2. 任務中的關系結構
- GNN學習分子圖表征
3. 推理中的關系結構
- 思維傳播
4. 總結
0. 基礎模型概述
“基礎模型”(foundation model)一詞最初由斯坦福大學的 Bommasani 等人提出,定義為“在廣泛的數據上訓練且可以被應用于廣泛的下游任務的模型”。人工智能向基礎模型的范式轉變意義重大,允許用更廣泛的通用模型替換幾個狹窄的任務特定模型,這些模型一旦經過訓練就可以快速適應多個應用程序,并且隨著模型參數增大,有可能展現出“涌現”能力。
當談及基礎模型時,我們的定義可能會更加廣泛,不僅僅包括大語言模型(LLM),還涵蓋了基于自監督學習框架的各種基礎模型。這些模型通常會在最終任務上進行微調。這種范式在機器學習領域的作用日益增大。以ImageNet為例,它之所以取得成功,主要是因為當時人們普遍崇尚監督學習。ImageNet手動標記了1400萬張圖像,這為監督學習提供了數據基礎,從而推動了視覺領域的巨大進展。然而,在大多數情況下,這種方法并不可行。例如,自然語言處理涉及眾多任務和大量翻譯工作,不可能讓人逐一完成。此外,我們獲取的數據往往是無監督的。因此,基礎模型的最大優勢在于,即使在沒有監督的情況下,我們仍然可以利用大量數據來開發通用模型,適用于各種不同的下游任務。下面是一個傳統的基礎模型框架:

圖1 預訓練和微調
這個過程主要分為預訓練(pre-training)和微調(finetuning)兩個步驟。在預訓練階段,我們采用自監督學習方法,例如使用語言模型。首先,我們使用一個編碼器,例如 transformer,對輸入數據進行編碼,然后得到一些嵌入(embedding)。接著,我們再從這個嵌入進行解碼。在解碼后,我們會采用一種自監督損失函數,例如掩碼語言模型(mask language model)。完成預訓練后,在微調階段,我們將編碼器固定下來,不再需要對該部分進行優化或僅優化很小一部分。然后,我們將輸入數據直接通過這個編碼器得到一個embedding,再從這個embedding進行各種下游任務的處理,包括文本分類、摘要和翻譯等。在此過程中,我們會采用各種損失函數來微調下游任務。
需要注意的是,如果是GPT模型,需要遷移的部分不再是編碼器,而是解碼器(decoder)。然而,整體框架基本保持不變。對于圖像基礎模型的訓練,同樣可以采用這個框架。只需將輸入數據從文字轉換為圖片,并采用編碼器-解碼器架構來獲得自監督損失。在微調階段,同樣可以將編碼器遷移過來,訓練各種下游任務。這個框架在不同類型的數據(圖、圖像、文字等)中具有很高的通用性。
接下來,我們要考慮不同數據的模態。在自然語言處理(NLP)領域,文本通常以句子的形式呈現。在每個句子中,我們能看到不同的單詞,它們組成了不同的詞組。類似地,在計算機視覺(CV)領域,數據則以圖片的形式出現,而圖片的基本單元可能是像素。在圖(Graph)中,圖的構成單元是節點,許多節點組成一個子圖。

圖2. NLP、CV和Graph的對比
本次分享的內容內容涉及這三個不同的方面,同時也會探討不同數據模態的適用性。希望所介紹的方法能夠廣泛應用于不同的基礎模型上,這些方法的一個共同點就是利用關系推理或圖的方式來實現。將從三個方面展開,首先是預訓練,其次是微調,最后是模型推理。這三個步驟都可以利用圖關系推理的方法來實現。
1. 預訓練中的關系結構
我們從預訓練開始談起,也就是自監督學習。自監督學習通常分為兩大類:生成式和對比式。生成式的任務主要是掩碼語言模型,即將數據的一部分進行掩碼,然后讓模型進行恢復。而對比式則不是生成被掩碼掉的內容,而是去區分相似的和不相似的數據。對比式自監督算法通常具有較高的有效性,因此我們今天分享的第一項工作是關于對比學習(contrastive learning)的形式。
對比學習是一個非常簡單的原則。在許多數據中,有些數據點是相似的,有些則相距甚遠。如果模型能夠區分出哪些東西相似和哪些東西相距甚遠,我們就達到了自監督學習的目的。如果這個嵌入空間能夠捕捉到這樣的屬性,那它就是一個很好的嵌入方式。因此,在訓練時,我們會使用這樣的目標:輸入一些相似的數據點和一些不相似的數據點,將這些數據全部編碼到嵌入空間,然后在嵌入空間上進行對比學習。這樣做的結果是,我們需要把相似數據的嵌入變得盡可能接近,不相似的數據的嵌入盡可能遠離。這是一個大致的原則,比較容易理解。
一般來說,對于每個需要進行對比學習的數據點,我們定義一個錨點(author)。錨點的意思是,我們可以創造一些正例(positive example),就是一些跟自己很相似的東西,還有一些負例(negative example),一些跟自己很不相似的東西。我們可以通過把嵌入空間里面相似的拉近、不相似的拉遠來做自監督學習。如果沒有標簽監督的情況下我們怎么樣去找哪些是正例哪些是負例呢?一般來說,做這種對比的方式,就是我可以對自己的錨點做一些變換。比如圖片不管怎么旋轉、位移,進行各種各樣的變換,這個圖片的語義不會有什么區別,變換以后我們依然能夠認出來它是同一個物體。所以經過變換可以創造一些正例,這樣的準則在圖里面也經常會用。比如一些圖對比學習的方法,會把一個節點的鄰居進行隨機游走來進行采樣。然后把它作為對鄰居的擾動,可以得到一些類似的鄰居,那這些就是我們的正例。有了這個以后,我們就可以定義各種對比學習的損失函數(例如 InfoNCE),然后在這個InfoNCE的框架下,我們不光是要找正例,還得找負例,怎么找負例是一個問題。
我們想象什么樣的負例會更有用,看一下可能會出現什么樣的負例。我們可以有簡單負例(easy negative),例如圖3中最左邊的負例跟一開始的圖像完全不同。即便這個模型非常笨它也能夠區分出它們不同。然后中間是稍微難一些的負例,這些負例就比較有趣,比如說它們可能都是貓科動物,但是它們可能是不同的動物,那這些就是一些困難負例(hard negative),因為模型需要有更多的知識才能發現它們是不同的東西。然后最右邊叫做偽負例(false negative),因為它們其實是同一個物種,所以模型沒有必要把它們當做負例。如果是負例的話,通過InfoNCE這些負例之間的距離在嵌入空間上很遠,這沒必要,因為它們都是同一種。或者說即便我們需要區分,但是它們不應該被拉得非常遠。然后在這三種里面什么對增加模型的表現能力更有效?很顯然大家都會覺得是困難負例,因為它可能比較像,但是并不完全一樣。所以這更能夠考驗模型的辨識能力。所以困難負例是我們比較關心的,然后它可以是有不同的表現形式。比如說它們可以是背景、花紋比較相似,但其實是不同的動物。

圖3 簡單負例、困難負例和偽負例
BatchSampler:用鄰近圖捕捉相似關系
這個工作是講者的學生還有唐杰老師的學生一起合作的一個項目,研究的動機是用鄰近圖(proximity graph)去捕捉相似的關系。就是說,有各種各樣的數據點,它們可以是圖也可以是圖像、文字或者各種想要做對比學習的數據,我們把它轉換成圖的形式,每個節點代表一個數據點,這些數據點之間的連線就代表他們的相似度,只有當這兩個節點非常相近的時候,我們才會把他們連起來。然后我們通過這個圖來討論怎樣采樣好的困難負例,就是那些看上去很像但其實是不一樣的負例。這個圖的構造其實非常簡單,首先我們有一個正在做對比學習的編碼器,然后我們把節點編碼到這個嵌入空間,然后做最近鄰等操作構建鄰近圖,基于這個圖做一些操作尋找負例。我們的方法通過有重啟的隨機游走(random walk with restart)來探索局部鄰域,它的好處在于靈活性。我們可以想象困難負例一般在哪兒,他肯定不是最近的幾個,因為最近的可能是同類,即偽負例。肯定也不是很遠的,因為這些點肯定是完全不相關的簡單負例。我們的方法可以通過超參數控制重啟概率,論文發表在KDD2023上,感興趣的讀者可以看一下。
Yang Z, Huang T, Ding M, et al. BatchSampler: Sampling Mini-Batches for Contrastive Learning in Vision, Language, and Graphs[J]. arXiv preprint arXiv:2306.03355, 2023.

圖4 BatchSampler的基本想法
我們把這個方法叫做BatchSampler,它的想法就是通過在鄰近圖上做隨機游走來控制采樣到一些很高質量的負例。我們有一些超參數,首先就是最近鄰的數量,還有就是隨機游走的重啟概率。可以想象,當重啟概率是1的時候,也就是每走一步就會回到原點,那其實就是找一階鄰居,得到的樣例很難。另一個極端是重啟概率為0,那就是純粹的隨機游走,很容易走到很遠的地方,獲得很簡單的樣例。通過調重啟概率,我們就可以找到想要難度的樣例,這種方法可以用在各種模態的數據上面。
稀疏 Transformer:通過圖擴散來擴散注意力,降低模型復雜度
接下來我們用圖的角度解釋Transformer架構。由于Transformer架構的復雜度主要來自注意力機制,它的復雜度是O (token*token),這給Transformer應用于長序列帶來了挑戰。稀疏Transformer可以顯著降低復雜度,我們可以將其想象成圖的形式,這種注意力矩陣很像圖的鄰接矩陣。稀疏Transformer的核心思想是用局部注意力和隨機注意力取代全局注意力,局部注意力是指設置一個很小的窗口,而隨機注意力是指隨機找一些連接來計算。

圖5 稀疏Transformer的注意力機制
這樣做可以節省時間和空間,但也有一些挑戰。如果我用局部窗口的話,感受野就會降低,也就是我沒法直接在每一層通過算自注意力機制來增加模型的表達能力。還有一個問題是它可能會對序列的擾動敏感,不夠魯棒。為此,我們希望模型能夠具有全局注意力,并且降低模型復雜度。在AAAI的工作中,我們把稀疏Transformer當成一個稀疏圖,然后通過圖擴散的方式來擴散注意力的值,從而在Transformer模型上探索結構。這樣做的好處是很多格子是通過擴散算出來的,不需要反向傳播,從而能夠節省很多計算和存儲開銷。
Feng A, Li I, Jiang Y, et al. Diffuser: efficient transformers with multi-hop attention diffusion for long sequences[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2023, 37(11): 12772-12780.

圖6 diffuser的擴散方式
2. 微調中的關系結構
GNN學習分子圖表征
在做微調的時候也有一些有意思的技巧,這里關注分子結構的基礎模型,怎樣通過不同的任務和任務之間的相似度來增加模型微調的表現。這里介紹一篇最近發表在NeurIPS上面的論文。在分子結構上,我們可以有各種下游任務,例如可溶性、毒性或活性預測等,這是一個非常適合基礎模型的場景。基本架構就是用GNN去編碼一個分子輸入,得到每個節點(原子)的嵌入,然后通過聚合或者池化操作得到分子的嵌入,然后預測各種分子級別的下游任務。
Huang T, Hu Z, Ying R. Learning to Group Auxiliary Datasets for Molecule[J]. arXiv preprint arXiv:2307.04052, 2023.

圖7 分子圖神經網絡的訓練步驟
圖上的預訓練任務通常可以是生成式任務也可以是對比式任務,但對于分子結構來說仍然是一個非常有挑戰性的話題。首先,有標注的數據集很少,往往需要昂貴的領域知識來建立。然后往往它們用的分子也都是不一樣的。一個比較自然的想法是說,因為這些下游任務都非常小,所以我們能不能結合多個下游任務,比如把幾個毒性相關的下游任務和數據放在一起來做微調。通過從基礎模型微調的形式去改進可能會是一個更加有效的策略。但這樣做有一個問題就是很容易出現負遷移。我們觀察一個數據集是否能幫助另一個數據集,紅色表示提升很明顯。我們可以看到有些規律,例如幾乎所有數據集都可以幫助FreeSolv數據集。

圖8 兩個數據集能否互相幫助的實驗
那么能否找到對某個數據集有幫助的數據集呢?我們覺得兩個數據集之間的關系分為兩種,一種是結構的相關性,另一種是任務的相關性。描述這兩種相關性的方式很多,這里不展開討論。基于這些相關性,我們就可以把單個任務轉化成一組任務。在訓練的時候,我們就可以把這些數據放到一起算損失。假設這兩個數據集關系非常緊密,輔助數據集是非常有用的,那就可以用同一套編碼器,只用不同的解碼器做不同的任務。另一個極端是,如果兩個數據集或者下游任務完全無關,就應該使用兩套編碼器來訓練,才能得到最好的效果。很多情況可能介于兩種極端情況之間,他們的任務可能在分布上相似又有一定的區別,這就應該采用中間的混合形式,部分參數共享。

圖9 三種融合不同數據的方式
我們建議使用路由機制來動態分配每個輔助數據集對網絡子層目標數據集的影響。路由機制的學習取決于輔助數據集的梯度如何影響目標數據集的性能。然而,以目標數據集感知的方式優化這種路由機制具有挑戰性,因為它僅在輔助數據集的前向傳遞期間使用。為了解決這個問題,我們建議使用雙層優化框架,并使用元梯度(meta gradients)來自動學習任務的相似度。雙層優化框架分為兩個步驟:首先,利用輔助任務的梯度更新除路由函數外的模型參數;其次,我們重用這個計算圖并計算路由機制的元梯度。

3. 推理中的關系結構
思維傳播:用大模型進行復雜推理
關系推理能否在大語言模型的推理階段有所幫助呢?目前比較流行的方式是通過設計各種各樣的提示(prompt)來使大語言模型更好地解決一些復雜問題,例如思維鏈(chain-of-thought)、思維樹(tree-of-thought)和思維圖(graph-of-thought)等,但這些方法還不夠高效。鑒于目前的prompt是獨立的,所以能否通過探索問題之間、解之間的關系來幫助模型有更強的推理能力,這種方式我們叫做思維傳播(thought propagation)。
思維傳播包含如下幾個步驟。首先,LLM Solve使用基礎的提示方法解決輸入的問題。然后,LLM Propose是指提示LLM去提出一些相似的問題,這些問題都可以用LLM來解決。然后我們會分別得到一些解,這些解就是模型對于之前問題的回答。然后根據這些回答,我們進行聚合或者投票來得到當前問題的回答,這就叫 LLM Aggregate。最后的LLM Readout就是判斷新的解和舊的解哪個更好,或者二者能否結合得到更好的解。
Yu J, He R, Ying R. Thought Propagation: An Analogical Approach to Complex Reasoning with Large Language Models[J]. arXiv preprint arXiv:2310.03965, 2023.

圖10 思維傳播的整體框架
研究中做了大量實驗來驗證方法的有效性,想要進一步了解可以參考論文。這里展示一個創意寫作的實驗,就是給一些句子寫四段話。要求這個故事是連貫的,連貫度可以通過LLM或者人類進行打分。我們把這個問題拆解成四個階段。首先,LLM Solve就是寫四段話的問題。然后,LLM Propose階段采用重寫策略作為提示,就是說寫四個類似意思的句子然后用他們寫四個連貫的段落。通過這個提示,可能生成一些類似的任務,然后在LLM Solve階段分別解決這些任務。然后我們可以做傳播和讀出操作,也就是通過比對各種寫作計劃,把他們綜合成一個更加連貫的故事。

圖11 思維傳播的實現舉例
我們可以用各種LLM去解決這個問題,然后用GPT-4評估連貫度。可以看到,GPT4的連貫度比GPT3.5要更好,思維傳播也比之前的方式效果更好。請一些人類參與打分也發現,思維傳播比之前的方式效果更好。

圖12 創意寫作的量化實驗
4. 總結
總結一下,關系推理在基礎模型中還是有很多用途的。即便很多情況下問題和圖看上去無關,但我們可以把問題建模成圖的形式。講者主要分享了關系推理在基礎模型的不同階段中的應用。總的來說,講者認為有兩個方面非常重要。一個是基于基礎模型的神經表示,另一個是基于圖的符號表示。如果二者可以完美融合,在長遠上看會有很大的幫助。
學者簡介

應智韜(Rex Ying),耶魯大學計算機科學系的助理教授。研究重點包括圖神經網絡算法、幾何嵌入、可解釋模型,以及最近涉及關系推理的多模態基礎模型。Rex是許多廣泛使用的GNN算法的作者,如GraphSAGE,PinSAGE和GNNExplainer。此外,Rex還致力于圖形學習在物理模擬、社交網絡、知識圖譜、神經科學和生物技術中的各種應用。Rex在Pinterest開發了第一個十億規模的圖嵌入服務,在亞馬遜開發了基于圖的異常檢測算法。
個人主頁:https://www.cs.yale.edu/homes/ying-rex/
斑圖學者主頁:https://pattern.swarma.org/user/124029
原標題:《圖與基礎模型:多模態基礎模型關系推理能力概述》
本文為澎湃號作者或機構在澎湃新聞上傳并發布,僅代表該作者或機構觀點,不代表澎湃新聞的觀點或立場,澎湃新聞僅提供信息發布平臺。申請澎湃號請用電腦訪問http://renzheng.thepaper.cn。





- 報料熱線: 021-962866
- 報料郵箱: news@thepaper.cn
互聯網新聞信息服務許可證:31120170006
增值電信業務經營許可證:滬B2-2017116
? 2014-2025 上海東方報業有限公司