導讀 目前,大模型相關工作進展如火如荼,其卓越的文本語境了解能力和編碼解碼能力備受矚目。本次分享将探讨是否可以直接利用大模型的強大能力更好地解決圖資料和圖任務上的問題。
主要内容包括以下五個方面:
1. 為什麼應用大語言模型進行圖學習
2. 大語言模型進行圖學習的現狀概述
3. 大語言模型促進跨領域跨任務的統一圖學習
4. 潛在研究方向
5. 問答環節
分享嘉賓|蔣卓人 浙江大學 “百人計劃”研究員
編輯整理|刁震
内容校對|李瑤
出品社群|DataFun
01
為什麼應用大語言模型進行圖學習
首先要探讨的是為什麼可以應用大語言模型進行圖學習,将從兩個方向來探讨其可行性,第一是大語言模型的能力,第二是圖資料本身的特點。
1. 大語言模型的能力
從早期統計的語言模型,到神經網絡的語言模型,到預訓練語言模型,再到現在的大語言模型,模型能力,尤其是對于文本的編碼能力不斷增強,其處理下遊任務的能力也在随之提升。尤其是大語言模型,已經在一些推理任務上展現出了突破性的效果,因為語言模型規模的不斷擴大,加之豐富的語境學習能力,使得之前語言模型在推理方面的欠缺得到了一定程度的彌補。
一些研究人員認為,之前的語言模型的模式是直接讓模型去輸出結果,忽略了中間的思考過程,而人類在解決數學應用題或者推理問題時,通常會逐漸地書寫整個解題過程才能得出最終的答案。是以很容易聯想到,如果讓模型先輸出中間的推理步驟,再根據生成的步驟得到答案,是不是就能夠提升模型的推理表現。關于這一問題,Google 提出了一種利用思維鍊的提示方式,稱為 Chain-of-Thought prompting。在 prompt 當中增加一些邏輯的說明,除了将問題輸入模型,還将類似題目的一些解題思路和步驟輸入模型,使得模型不僅輸入最終的結果,還輸出一些中間的步驟,可以提升模型的推理能力。
大語言模型在這種問題上有很大潛力,可以去做很多有意思的推理。我們也是以想到,大語言模型是否具有在圖任務上的推理能力。
2. 圖資料的特征
接下來從另一個角度,也就是圖資料本身的特征來看,大語言模型為什麼能夠應用于圖學習。
我們發現相當多的圖任務和文本是緊密聯系的,比如在一個常見的學術場景當中,學者、論文、會議這些節點天然就是以圖的形式存在的,他們之間會有各種各樣的關系。
另外有一些圖資料,可以結合文本資訊,使其屬性或者特點得到更好的表述。比如分子圖就是一個天然的圖結構,我們可以使用一些文本來表述其屬性,比如苯環是有毒的,水分子是沒有毒的,這些文本表述對于我們了解圖的屬性,或者基于圖去做一些預測和推理任務是很有幫助的。是以大語言模型的文本推理能力,可以幫助我們去解決一些圖相關的任務。事實上我們現在已有一些工作在利用大語言模型來助力圖學習。
02
大語言模型進行圖學習的現狀概述
接下來從兩個方面來介紹大語言模型進行圖學習的現狀,首先來看一下不同的圖資料應用場景,接着将介紹圖任務中大語言模型所扮演的不同角色。
1. 不同的圖資料應用場景
圖資料大緻可以分為三類:第一類是不含文本資訊的圖,稱為 Pure Graphs,例如交通圖;第二類是其本身有圖,可以和一些相關文字放在一起,稱為 Text-Paired Graphs,例如蛋白質分子式;第三類是節點本身就蘊含着豐富的文本資訊,稱為 Text-Attributed Graphs,例如社交媒體網絡、學術圖譜網絡等等。接下來看一下對于這三類圖資料,可以怎樣應用大語言模型。
(1)Pure Graph
第一類 Pure Graph,沒有文本資訊,或者沒有語義豐富的文本資訊,比如交通圖、電力傳輸圖,隻有拓撲資訊。在這種圖上主要要去完成的任務,是一些經典的圖上的離散數學相關問題,比如分析圖的連通性、兩個節點之間的最短路徑、哈密爾頓路徑等拓撲結構上的問題。
針對這類問題,可以轉化為問答的方式。通過一些文本去表述圖裡面有幾個節點、節點之間的邊是什麼樣的、有幾條邊等等,可以向大模型提問比如①和④之間有沒有一條邊,還可以問聯通性問題,或者最短路徑問題。在一個無向圖中,可以問圖中有多少個節點,有哪幾條邊,邊上的權重是多少,讓大語言模型直接去解圖上的這些問題。
在 Advances in Neural Information Processing Systems 2024 上的一個工作就是用這種政策來直接解 Pure Graph 上的問題。由上圖中的對比資料可以看出,直接應用大模型,與 Random guess 相比還是展現出了一定的圖的了解能力,尤其結合一些 chief source 或者 self-consistency 之後,在一些任務上能達到不錯的效果。
(2)Text-Paired Graph
針對 Text-Paired Graph,這裡介紹 ICML2023 的一個工作,化學分子用圖的方式做一個模态編碼,文本是用文本的方式去做模态編碼,用對比學習去進行訓練,通過增強的文本資訊增強對化學分子式的表示能力,然後再去解決針對化學分子式的一些特殊任務。
上圖是一些測試資料,綠色表示的是最好的情況,總體來看加入的文本資訊對圖上的這些任務有着很好的增強作用。
(3)Text-Attributed Graph
第三篇是 EACL 2024 上的一個工作,是針對 Text-Attributed Graph,即有着豐富的文本資訊的圖。這個工作把原本圖上的一些結構資訊轉換成了文本的輸入,給到大模型,再讓大模型去做推理。與 Pure Graph 不同的地方是,首先它的 node 是作為語言模型的 token,這樣可以利用大語言模型加文本表示的結構資訊,對節點本身也去進行編碼。是以這個架構最後除了可以得出圖推理任務的輸出以外,還有一些節點的表示。
實驗結果表明,在擁有豐富文本資訊的圖資料集上,利用大模型的方式去編碼節點特征,再去了解圖結構這樣的方式,會比傳統的圖神經網絡模型表現更好,它對大模型的參數有真正的訓練,是以理論上讓大模型感覺到了圖本身的一些知識。
對于不同的圖資料,語言模型的應用方式是不一樣的。
2. 圖任務中大語言模型的不同角色
大語言模型在圖任務中可以扮演三種角色,分别是 Enhancer/Encoder、Predictor 和 Aligner,接下來将逐一介紹。
(1)LLM as Enhancer/Encoder
在 LLM as Enhancer 或者 Encoder 中,大語言模型是作為一個輔助的角色支援 GNN 完成最終的圖推理,對于圖本身拓撲結構的了解還是由傳統的圖神經網絡來完成的。
這種方式,又可以分為兩種,一種是 Explanation-based,利用大語言模型和 prompt 對輸入的文本資訊進行增強,得到一個 explanation,把這個 explanation 作為增強後的一個特征,再進行文本的編碼,随後喂到圖結構裡面,再用圖神經網絡去完成進一步的推理。第二類是 Embedding-based,直接利用大模型把 text 屬性做 embedding,喂到圖的表示裡面,讓圖神經網絡去做推理。
ICLR 2024 上的一個工作,是典型的 Explanation-based 的方式。其中有 title、abstract,有 prediction 和 explanation,把每個節點的文本屬性,比如節點的标題和摘要,封裝在一個自定義的 prompt 裡面,去 query 大語言模型(GPT3.5),生成預測,預測這篇文章屬于哪個領域,并生成解釋,即為什麼得出這樣的預測。在有了這些更加豐富的文本資訊之後,把所有原始的文本資訊以及預測和解釋都輸入到大語言模型當中做 fine-tune,然後轉化成更為豐富的文本節點表示,再把這個文本節點表示放到 GNN 當中,讓其去做更好的推測。這樣就可以讓圖神經網絡在圖任務上取得更好的推理結果。
結果證明這個方式是有效的。
密歇根大學和百度,以及其他幾個團隊聯合在 KDD 上發表的一個工作,是 Embedding-base 方式的一項工作。如上圖中所示,黃色是最好的,綠色排名第二,粉色排名第三。在用大語言模型解決圖任務時發現,基于微調的大語言模型的 embedding 在标簽數量不夠多的時候,其表現會很差。
還有一種情況是在 High label ratio 情況下,也就是在有較多标簽的情況下,還是傳統的預訓練 embedding 結合 GNN 的方式會更好一些。從上圖中可以看出,主要的優秀的結果都是在 sentence base 的 model 裡面。這其實也是很有意思的一個現象,預訓練的這些文本并沒有加入結構資訊,在需要結構資訊去做推理的任務上,超過了用圖結構資訊去微調的這些語言模型。
這一發現給我們的啟示是,簡單的 fine-tune,比如把圖的結構在 fine-tune 階段讓大語言模型來看一下的這種方式可能并不是最好的方式。我們需要找到一個更好的方式,讓圖的結構資訊能夠被更好的融合,這是一個很值得我們去深入研究和探索的問題。
(2)LLM as Predictor
第二類角色是大語言模型作為 Predictor,即預測者。顧名思義,大語言模型将直接作為圖推理任務的主角,而不再是單純地幫助我們生成更好的文本表示。這裡也分為兩種方式,一種是 Flatten-based,是用文本表述一個圖結構,把有結構資訊的文本輸入到大語言模型當中,結合 prompt,最終進行圖的推理。第二種是 GNN-based 的方式,一開始還會依賴 GNN 對原始的圖和節點做表示,然後把這些圖的表示和文本的表示一起輸入到大模型裡面,讓大模型去做推理。
北大、微軟還有一些高校團隊 2023 年的一個工作叫 Gpt4graph,其本質上就是把圖的結構轉化為文本表示。其中用一些結構化的标簽,腳本語言去描述了一個圖,把這個直接喂給大模型,讓他去生成一些 context,結合這個 context 和本身的原始輸入,輸出最終的結果。
實驗結果表明,用不同的方式去描述圖,對結果會有顯著的影響。比如用 GML 的方法去做 size detection,檢測圖大小,效果是比較好的。在算 degree 的任務上,用 edge list 的方式去表示圖會得到比較好的結果。另外,使用 role prompting 方式能夠很好地提升模型的性能,因為可以讓大語言模型更加關注到特定的關系,或者其中一些節點特殊的屬性和角色,進而讓模型提取到更有價值的資訊,做出更好的預測。
另一個工作是港大和百度團隊在 2023 年的一個工作,名為 GraphGPT,其本質上就是基于 GNN 的一種方式。首先用 GNN 對圖結構資訊進行編碼,通過編碼後節點的 embedding 嵌入到文本表示當中,喂給大模型做圖推理。要讓文本模型直接去了解圖的 embedding,需要将圖的 embedding 和文本的 embedding 做一個對齊,才能獲得更理想的效果。
實驗結果證明了該方法的有效性。
(3)LLM as Aligner
第三種角色,LLM as Aligner,相比前兩種會更複雜一些,對文本模态的資料進行編碼時,會利用一些額外的文本資訊去做監督信号,促進本身這個圖神經網絡的學習,進而讓結構資訊和文本資訊進行互動式學習,或者直接把文本學習的神經網絡和圖學習的神經網絡做交叉,還可以利用 GNN 進行知識蒸餾。
一種主流的方式是對比學習,利用節點的表示和文本的表示之間的對應關系去構造對比學習的樣本,同步訓練圖神經網絡和大語言模型,實作對齊。
另一種做法是采用蒸餾的方式,明尼蘇達大學、亞馬遜 UIUC 和 CMU 的一個工作是通過一個 Teacher GNN 和其它一些文本無關的資訊,共同更新共享文本編碼的函數,捕捉在這些沒有标簽的文本當中增強的文本資訊。這個工作本質上就是通過 Teacher GNN 把一些拓撲結構資訊蒸餾到文本表示的架構當中,讓學到的增強的文本資訊包含一部分拓撲結構資訊。
通過上面的介紹可以看到,現在的研究主要還是在對針對不同類别的圖資料專門進行了一些設計,來解決一些特定的問題,比如分子圖上的問題,或者學術網絡富文本的問題等等。而未來我們希望将大語言模型做成統一的架構,直接用其實作跨領域、跨任務的統一的圖學習。
03
大語言模型促進跨領域跨任務的統一圖學習
首先來看一下在大語言模型出現之前的做法。
以 KDD'20 的一個工作為例,這一工作是采用圖的對比編碼,利用自監督的圖神經網絡去訓練架構,捕捉網絡當中通用的拓撲結構的特性,進而實作跨資料集的訓練。這類工作的限制是,不同領域中的節點特征是無法對齊的,是以往往會放棄一些節點的特征表示,隻用結構特征作為節點特征去進行初始化。
我們團隊在今年的 AAAI 上也發表了一項圖預訓練相關的工作,用文本的自編碼器加上一些 motive 的 auto discovery 的機制,來促進資料集之間的知識遷移。但是我們必須承認,這一類方法對于兩個領域之間文本特征無法對齊的這種跨領域的情況,是沒有辦法直接實作資料集上的遷移的。
在大語言模型提出之後,為我們提供了新的嘗試途徑。這是華盛頓大學和京東以及北京大學 2023 年的一個工作,叫 One for all。在該工作中,模型的輸入是包含豐富文本資訊的圖,以及任務的描述,這二者通過大語言模型嵌入到統一的空間,被轉化為帶有統一任務表示的提示圖,然後再把這個提示圖喂給一個單一的 GNN,讓 GNN 去做自适應的下遊任務的預測。
這一工作解決了跨領域任務中不同領域圖資料節點特征不對齊的問題,把所有的特征全部轉化為文本,然後用大語言模型去進行編碼,這樣無論屬于哪個領域,最後都能用文本的方式進行編碼。
為實作任務上的跨越,設計了如上圖所示的結構,引入了任務節點的概念,即 node of interest。這類節點也是用文本對任務去進行表述,這樣就可以把任務也轉化成文本表示,就實作了對不同任務的相容,把不同的任務轉化成了如圖中所示的連結預測的問題。
這一工作在圖資料上面都取得了比較好的結果。同時還觀察到,用所有的資料集做文本的預訓練可以讓知識更好地遷移。
另一個是新加坡國立大學的名為 UniGraph 的工作。這個工作是在 One for all 的基礎上,把大語言模型和 GNN 做預訓練,提出了多種進一步提升的方法,比如針對 few-shot、zero-shot 等等。其本質還是用大語言模型去編碼文本化的特征,實作跨資料集的訓練特征。在任務上也是類似的,One for all 是直接用任務節點,這裡是定義了一個任務子圖,本質上都是把任務泛化到文本的可表述的範圍之内,進而實作節點、邊、圖級别任務的統一。
這個工作的效果比 One for all 更優,因為使用了一些 prompt 的技巧。通過資料觀察發現,在預訓練的時候,并不是資料集越多越好,可能的一個原因是如果圖資料之間确實有比較大的不相容性,存在一些噪聲或對立沖突的時候,用太多的資料去做預訓練,反倒會降低大語言模型在圖資料上的推理能力。
最後是福州大學和 Emory University 在今年的一個工作。該工作與之前兩個工作最大的差別是去掉了 GNN,直接通過 instruction tuning 的方式訓練大語言模型做圖的任務。很明确的三個步驟,首先用文本去描述圖,生成 instruction,最後去做 tuning。
基于語言模型 LLaMA-7B 做了 instruction tuning 之後,效果超過了傳統的圖模型。需要注意的是,這裡的資料集都是 Text-Attributed 的圖,即包含了大量豐富文本資訊的圖資料。而對于 Pure Graph 和 Text-Paired Graph 的效果是不明确的。
04
潛在研究方向
目前已有的工作,尤其是今年的這些工作,已經在大語言模型促進跨領域跨任務統一圖學習方向上邁出了很多堅實的步伐,取得了一些積極的效果。除此之外還有哪些可以深挖的方向呢?首先需要思考的是,目前這種 fine-tune 加 prompt engineering 的方式是不是真的讓大模型學到了圖裡面的拓撲結構資訊。
密歇根大學和 UIUC 的一個工作用大模型去直接做了圖任務的推理,經過大量實驗發現,對于大模型來說有 context 就可以了,context 内部結構怎麼描述或者圖裡的表述是否正确并不重要。在做線性表述的時候,效果不會有很大的差别。所謂線性表述,就是直接把 neighborhood 的文本資訊作為輸入,讓大語言模型做推理,另外就是很規範的、很标準的、很嚴謹的一個圖的表述。
另外,随機做一些重排布,比如把結構打亂,去掉一些二階鄰居,或把一階鄰居的順序放到随機的一個路徑當中,看到的結果是推理效果并沒有很大差别。那麼大語言模型在這種範式下面做圖推理任務時到底依賴的資訊是什麼?是不是像我們想象的了解了圖的拓撲結構。
另外還觀察到,大語言模型在 neighborhood 和我們要預測的 ground truth 的節點同質性比較強的時候,預測效果會比較好。還是同樣的問題,大語言模型到底是學了這些文本,還是真的了解了這個結構?
研究人員也發現,當目标節點包含的文本不足以讓模型做出合理預測時,反倒可以讓大語言模型從結構資訊當中獲益。這顯示出大語言模型還是可以去利用這些結構資訊的,隻是該如何把這部分能力激發出來。
未來的研究方向主要包括兩個問題。第一個問題是,是否存在對于所有不同領域圖學習都有益的通用的結構特征,這個特征怎麼學,大語言模型是否能學到。第二個問題是,對于複雜的拓撲結構特征,怎麼讓大語言模型能夠關注到,而不是隻是利用文本 context 上的能力做推測。這将是未來值得繼續探究的問題。
05
問答環節
Q1:針對 Pure Graph,是否可以引入一些更好的文本表述?
A1:對于 Pure Graph 而言,引入一些更好的文本表述一定是對提升效果有幫助的,尤其是在使用大語言模型去解決推理問題的這個路徑上。因為大語言模型本身的強項就在于其文本方面的能力。
Q2:跨領域統一圖學習的意義?
A2:在做圖神經網絡圖挖掘的學者看來,我們之前往往要針對特定的領域專門開發一個圖的神經網絡,存在資料上對不齊,任務上對不齊的問題。如果有一個統一的範式架構,一方面對于研究者來說,是一個很強的研究工具;另外一方面對于使用者來說,也有了統一的範式,是以是雙方受益的。從目前研究趨勢上來看,面向統一的通用的方法越來越受到大家關注。因為我們總是希望找到一個終極的好的方法,能夠解決盡量多的問題。
Q3:怎麼結合業務選擇?
A3:分享中提到了三種不同的圖,以及大語言模型的三種角色,在應用大語言模型時,應根據自身的技術條件和技術積累,選擇一個最擅長的最适合的路徑來走。重點是要能夠解決問題。
以上就是本次分享的内容,謝謝大家。