一起聊聊圖檢索增強(qiáng)生成
圖片
一、結(jié)論寫在前面
論文來自北京大學(xué)、浙江大學(xué)、螞蟻集團(tuán)、中國人民大學(xué)、美國羅格斯大學(xué)
論文標(biāo)題:Graph Retrieval-Augmented Generation: A Survey
論文鏈接:??https://arxiv.org/pdf/2408.08921??
通過參考外部知識庫,RAG 優(yōu)化了 LLM 輸出,有效緩解了“幻覺”、缺乏領(lǐng)域特定知識及信息過時(shí)等問題。然而,數(shù)據(jù)庫中不同實(shí)體間復(fù)雜的關(guān)系結(jié)構(gòu)給 RAG 系統(tǒng)帶來了挑戰(zhàn)。為此,圖RAG(GraphRAG)利用實(shí)體間的結(jié)構(gòu)信息,實(shí)現(xiàn)更精確全面的檢索,捕捉關(guān)系知識,促進(jìn)更準(zhǔn)確、上下文感知的響應(yīng)。鑒于圖RAG的新穎性和潛力,對其當(dāng)前技術(shù)進(jìn)行系統(tǒng)性綜述勢在必行。
論文首次全面概述了GraphRAG技術(shù)進(jìn)行了全面的回顧,系統(tǒng)地分類和整理了其基本技術(shù)、訓(xùn)練方法和應(yīng)用場景。GraphRAG通過利用從圖數(shù)據(jù)集中提取的關(guān)鍵關(guān)系知識,顯著提高了信息檢索的相關(guān)性、準(zhǔn)確性和全面性,從而解決了傳統(tǒng)增強(qiáng)生成(Retrieval-Augmented Generation)方法的關(guān)鍵局限性。
此外,論文考察了圖RAG的下游任務(wù)、應(yīng)用領(lǐng)域、評估方法及工業(yè)應(yīng)用案例。最后,論文探討了未來研究方向,以激發(fā)進(jìn)一步探索并推動(dòng)該領(lǐng)域的發(fā)展。
論文的貢獻(xiàn)可以概括如下:
?論文提供了一份全面且系統(tǒng)的現(xiàn)有最先進(jìn)GraphRAG方法論綜述。論文給出了GraphRAG的正式定義,概述了其包括G-Indexing、G-Retrieval和G-Generation在內(nèi)的通用工作流程。
?論文討論了現(xiàn)有GraphRAG系統(tǒng)的基礎(chǔ)核心技術(shù),包括G-Indexing、G-Retrieval和G-Generation。對于每個(gè)組件,論文分析了當(dāng)前正在探索的模型選擇、方法設(shè)計(jì)及增強(qiáng)策略的范圍。此外,論文還對比了這些模塊中采用的多樣化的訓(xùn)練方法。
?論文界定了與GraphRAG相關(guān)的下游任務(wù)、基準(zhǔn)測試、應(yīng)用領(lǐng)域、評估指標(biāo)、當(dāng)前挑戰(zhàn)及未來研究方向,討論了該領(lǐng)域的進(jìn)展與前景。此外,論文還編制了一份現(xiàn)有的工業(yè)GraphRAG系統(tǒng)清單,提供了學(xué)術(shù)研究向現(xiàn)實(shí)世界工業(yè)解決方案轉(zhuǎn)化的見解。
二、論文的簡單介紹
2.1 論文的背景
圖片
圖 1 直接 LLM、RAG 和 GraphRAG 的比較。給定用戶查詢,直接由 LLMs 回答可能會遇到淺層響應(yīng)或缺乏特異性。RAG 通過檢索相關(guān)文本信息來解決這一問題,一定程度上緩解了問題。然而,由于文本的長度和實(shí)體關(guān)系的靈活自然語言表達(dá),RAG 難以強(qiáng)調(diào)“影響”關(guān)系,這是問題的核心。而 GraphRAG 方法利用圖數(shù)據(jù)中明確的實(shí)體和關(guān)系表示,通過檢索相關(guān)結(jié)構(gòu)化信息實(shí)現(xiàn)精確回答。
盡管大型語言模型(LLMs)在語言理解和文本生成方面表現(xiàn)出色,但由于缺乏領(lǐng)域特定知識、實(shí)時(shí)更新信息和專有知識,這些知識超出了LLMs的預(yù)訓(xùn)練語料庫范圍,可能導(dǎo)致模型產(chǎn)生所謂的“幻覺”[53],即生成不準(zhǔn)確甚至捏造的信息。因此,迫切需要通過外部知識來補(bǔ)充LLMs以緩解這一問題。檢索增強(qiáng)生成(Retrieval-Augmented Generation, RAG)作為一種重要的進(jìn)化,旨在通過在生成過程中集成檢索組件來提高生成內(nèi)容的質(zhì)量和相關(guān)性。
RAG的核心在于其能夠動(dòng)態(tài)查詢大型文本語料庫,將相關(guān)事實(shí)知識融入底層語言模型生成的響應(yīng)中。這種集成不僅豐富了響應(yīng)的上下文深度,還確保了更高程度的事實(shí)準(zhǔn)確性和具體性。RAG因其卓越的性能和廣泛的應(yīng)用而備受關(guān)注,成為該領(lǐng)域的關(guān)鍵焦點(diǎn)。
盡管RAG在各個(gè)領(lǐng)域取得了顯著成果并得到了廣泛應(yīng)用,但在實(shí)際場景中仍存在一些局限性:
(1)忽視關(guān)系:在實(shí)踐中,文本內(nèi)容并非孤立存在,而是相互關(guān)聯(lián)的。傳統(tǒng)RAG未能捕捉到僅憑語義相似性無法表示的重要結(jié)構(gòu)化關(guān)系知識。例如,在論文通過引用關(guān)系鏈接的引用網(wǎng)絡(luò)中,傳統(tǒng)RAG方法側(cè)重于根據(jù)查詢找到相關(guān)論文,卻忽略了論文之間重要的引用關(guān)系。
(2)冗余信息:RAG在以文本片段形式拼接為提示時(shí),往往重復(fù)敘述內(nèi)容,使得上下文變得過長,導(dǎo)致“中間迷失”困境[94]。
(3)缺乏全局信息:RAG只能檢索到傳統(tǒng)檢索增強(qiáng)生成(RAG)方法通常局限于文檔子集,無法全面把握全局信息,因此在如查詢聚焦摘要(QFS)等任務(wù)中表現(xiàn)不佳。
圖檢索增強(qiáng)生成(GraphRAG)作為一種創(chuàng)新解決方案應(yīng)運(yùn)而生,以應(yīng)對這些挑戰(zhàn)。與傳統(tǒng)RAG不同,GraphRAG從預(yù)構(gòu)建的圖數(shù)據(jù)庫中檢索與給定查詢相關(guān)的包含關(guān)系知識的圖元素,如圖1所示。這些元素可能包括節(jié)點(diǎn)、三元組、路徑或子圖,用于生成響應(yīng)。GraphRAG考慮文本之間的相互聯(lián)系,實(shí)現(xiàn)對關(guān)系信息更準(zhǔn)確全面的檢索。此外,圖數(shù)據(jù)(如知識圖譜)提供了對文本數(shù)據(jù)的抽象和總結(jié),從而顯著縮短輸入文本長度,減輕冗長問題。通過檢索子圖或圖社區(qū),論文可以獲取全面信息,有效應(yīng)對QFS挑戰(zhàn),捕捉圖結(jié)構(gòu)中的更廣泛上下文和相互聯(lián)系。
論文首次對GraphRAG進(jìn)行了系統(tǒng)的綜述。具體而言,論文首先介紹了GraphRAG的工作流程及其支撐領(lǐng)域的基本背景知識。隨后,論文根據(jù)GraphRAG過程的主要階段,即基于圖的索引(G-Indexing)、圖引導(dǎo)的檢索(G-Retrieval)和圖增強(qiáng)的生成(G-Generation),分別進(jìn)行了文獻(xiàn)分類,詳細(xì)闡述了各階段的核心技術(shù)和訓(xùn)練方法。此外,論文還探討了GraphRAG的下游任務(wù)、應(yīng)用領(lǐng)域、評估方法及工業(yè)應(yīng)用案例,闡明了GraphRAG在實(shí)際環(huán)境中的應(yīng)用情況,并反映了其在多個(gè)領(lǐng)域的多功能性和適應(yīng)性。最后,鑒于GraphRAG研究仍處于初級階段,論文深入探討了可能的未來研究方向。這一預(yù)測性討論旨在為即將到來的研究鋪平道路,激發(fā)新的研究線索,并推動(dòng)該領(lǐng)域的發(fā)展,最終將GraphRAG推向更加成熟和創(chuàng)新的高度。
圖片
圖2. 問答任務(wù)中GraphRAC框架的概覽。在本調(diào)研中,論文將GraphRAG分為三個(gè)階段:G-索引(G-Indexing)、G-檢索(G-Retrieval)和G-生成(G-Generation)。論文將檢索源分為開源知識圖譜和自建圖數(shù)據(jù)??梢圆捎貌樵冊鰪?qiáng)和知識增強(qiáng)等多種增強(qiáng)技術(shù)來提升結(jié)果的相關(guān)性。與RAG不同,RAG直接使用檢索到的文本來進(jìn)行生成,而GraphRAG需要將檢索到的圖信息轉(zhuǎn)換為生成器可接受的格式,以提升任務(wù)性能。
2.2 GraphRAG 概述
GraphRAG 是一個(gè)利用外部結(jié)構(gòu)化知識圖譜來提升 LMs 上下文理解能力并生成更明智響應(yīng)的框架,如圖 2 所示。GraphRAG 的目標(biāo)是從數(shù)據(jù)庫中檢索最相關(guān)的知識,從而增強(qiáng)下游任務(wù)的答案。該過程可以定義為
其中 a^* 是給定 TAG G的查詢 q 的最優(yōu)答案,A 是可能響應(yīng)的集合。之后,論文聯(lián)合建模目標(biāo)分布 p (a|q, G) 與圖檢索器 p_phi ( G | q, G) 和答案生成器 p_phi (a|q, G ),其中 theta, phi 是可學(xué)習(xí)參數(shù),并利用總概率公式分解 p (a|q, G),可以表述為
其中 G^是最優(yōu)子圖。由于候選子圖的數(shù)量可能隨圖的大小呈指數(shù)增長,因此需要有效的近似方法。因此,方程 4 的第一行通過第二行進(jìn)行近似。具體而言,圖檢索器用于提取最優(yōu)子圖 G^,之后生成器基于檢索到的子圖生成答案。
因此,在本調(diào)研中,論文將GraphRAG的整個(gè)過程分解為三個(gè)主要階段:基于圖的索引(Graph-Based Indexing)、圖引導(dǎo)的檢索(Graph-Guided Retrieval)和圖增強(qiáng)的生成(Graph-Enhanced Generation)。GraphRAG的總體工作流程如圖2所示,各階段的詳細(xì)介紹如下。
基于圖的索引(Graph-Based Indexing,G-Indexing)?;趫D的索引構(gòu)成了GraphRAG的初始階段,旨在識別或構(gòu)建一個(gè)與下游任務(wù)相符的圖數(shù)據(jù)庫G,并在其上建立索引。圖數(shù)據(jù)庫可以來源于公共知識圖譜、圖數(shù)據(jù),或是基于專有數(shù)據(jù)源(如文本或其他形式的數(shù)據(jù))構(gòu)建。索引過程通常包括映射節(jié)點(diǎn)和邊屬性、建立節(jié)點(diǎn)間連接的指針以及組織數(shù)據(jù)以支持快速遍歷和檢索操作。索引決定了后續(xù)檢索階段的粒度,對于提高查詢效率起著至關(guān)重要的作用。
圖引導(dǎo)的檢索(Graph-Guided Retrieval,G-Retrieval)。在基于圖的索引之后,圖引導(dǎo)的檢索階段專注于根據(jù)用戶查詢或輸入從圖數(shù)據(jù)庫中提取相關(guān)信息。具體而言,給定一個(gè)以自然語言表達(dá)的用戶查詢q,檢索階段旨在提取最相關(guān)的元素(例如,實(shí)體、三元組、路徑、知識圖譜的子圖),可以形式化為:
其中G^*是最優(yōu)檢索的圖元素,Sim(·, ·)是一個(gè)衡量用戶查詢與圖數(shù)據(jù)之間語義相似度的函數(shù)。R (·)表示一個(gè)函數(shù),用于縮小子圖搜索范圍,考慮效率。
圖增強(qiáng)生成(G-Generation)。圖增強(qiáng)生成階段涉及基于檢索到的圖數(shù)據(jù)合成有意義的輸出或響應(yīng)。這可能包括回答用戶查詢、生成報(bào)告等。在這一階段,生成器接收查詢、檢索到的圖元素和一個(gè)可選提示作為輸入,生成響應(yīng),可以表示為
其中F (·, ·) 是一個(gè)將圖數(shù)據(jù)轉(zhuǎn)換為生成器可處理形式的函數(shù)。
2.3 基于圖的索引
圖數(shù)據(jù)庫的構(gòu)建和索引構(gòu)成了GraphRAG的基礎(chǔ),圖數(shù)據(jù)庫的質(zhì)量直接影響到GraphRAG的性能。論文將分類和總結(jié)圖數(shù)據(jù)的選擇或構(gòu)建以及所采用的各種索引方法。
2.3.1 圖數(shù)據(jù)
GraphRAG中使用了各種類型的圖數(shù)據(jù)進(jìn)行檢索和生成。在這里,論文根據(jù)其來源將這些數(shù)據(jù)分為兩類,包括開放知識圖譜和自建圖數(shù)據(jù)。
2.3.1.1開放知識圖譜
開放知識圖譜指的是從公開可用的資源庫或數(shù)據(jù)庫中獲取的圖數(shù)據(jù)。使用這些知識圖譜可以顯著減少開發(fā)和維護(hù)所需的時(shí)間和資源。在本調(diào)查中,論文根據(jù)其范圍進(jìn)一步將它們分為兩類,即通用知識圖譜和領(lǐng)域知識圖譜。
(1) 通用知識圖譜。通用知識圖譜主要存儲通用、結(jié)構(gòu)化的知識,并且通常依賴于全球社區(qū)的集體輸入和更新,確保了一個(gè)全面且持續(xù)更新的信息庫。
百科知識圖譜是一種典型的通用知識圖譜,包含了從人類專家和百科全書中收集的大規(guī)?,F(xiàn)實(shí)世界知識。例如,
?Wikidata [151] 是一個(gè)免費(fèi)開放的知識庫,存儲了其姊妹項(xiàng)目如Wikipedia、Wikivoyage、Wiktionary等的結(jié)構(gòu)化數(shù)據(jù)。
?Freebase [7] 是一個(gè)廣泛、協(xié)作編輯的知識庫,從各種來源編譯數(shù)據(jù),包括個(gè)人貢獻(xiàn)和來自Wikipedia等數(shù)據(jù)庫的結(jié)構(gòu)化數(shù)據(jù)。
?DBpedia [2] 通過利用Wikipedia文章中的信息框和類別,表示了數(shù)百萬實(shí)體的信息,包括人物、地點(diǎn)和事物。
?YAGO4 [138] 從Wikipedia、WordNet和GeoNames收集知識。
常識知識圖譜是另一種類型的通用知識圖譜。它們包括抽象的常識知識,如概念之間的語義關(guān)聯(lián)和事件之間的因果關(guān)系。典型的常識知識圖譜包括:
?ConceptNet [91] 是一個(gè)語義網(wǎng)絡(luò),由代表單詞或短語的節(jié)點(diǎn)組成,通過表示語義關(guān)系的邊連接。
?ATOMIC [56, 131] 建模了事件之間的因果關(guān)系。
(2) 領(lǐng)域知識圖譜。特定領(lǐng)域的知識圖譜對于增強(qiáng)LLM解決特定領(lǐng)域問題至關(guān)重要。這些KG在特定領(lǐng)域提供專業(yè)知識,幫助模型獲得更深入的洞察力和對復(fù)雜專業(yè)關(guān)系的更全面理解
?在生物醫(yī)學(xué)領(lǐng)域,CMeKG包含廣泛的數(shù)據(jù),包括疾病、癥狀、治療、藥物以及醫(yī)學(xué)概念之間的關(guān)系。
?CPubMed-KG是一個(gè)中文醫(yī)學(xué)知識數(shù)據(jù)庫,建立在PubMed豐富的生物醫(yī)學(xué)文獻(xiàn)庫之上。在電影領(lǐng)域,
?Wiki-Movies [110] 從與電影相關(guān)的Wikipedia文章中提取結(jié)構(gòu)化信息,將電影、演員、導(dǎo)演、類型和其他相關(guān)細(xì)節(jié)編譯成結(jié)構(gòu)化格式。
?此外,Jin等人 [66] 構(gòu)建了一個(gè)名為GR-Bench的數(shù)據(jù)集,包括跨越學(xué)術(shù)、電子商務(wù)、文學(xué)、醫(yī)療保健和法律領(lǐng)域的五個(gè)領(lǐng)域知識圖譜。
?此外,He等人 [47] 將ExplaGraphs和SceneGraphs的三元組格式和JSON文件轉(zhuǎn)換為標(biāo)準(zhǔn)圖格式,并從WebQSP中選擇需要2跳推理的問題,創(chuàng)建了用于評估GraphRAG系統(tǒng)的通用圖格式數(shù)據(jù)集GraphQA。
2.3.1.2 自構(gòu)建圖數(shù)據(jù)
自構(gòu)建圖數(shù)據(jù)有助于將專有或領(lǐng)域特定知識定制化和集成到檢索過程中。對于原本不涉及圖數(shù)據(jù)的下游任務(wù),研究人員常提出從多個(gè)來源(如文檔、表格和其他數(shù)據(jù)庫)構(gòu)建圖,并利用GraphRAG提升任務(wù)性能。一般而言,這些自構(gòu)建圖緊密關(guān)聯(lián)于方法的特定設(shè)計(jì),與前述的開放領(lǐng)域圖數(shù)據(jù)有所區(qū)別。
?為了模擬文檔間的結(jié)構(gòu)關(guān)系,Munikoti等人[113]提出構(gòu)建一個(gè)異構(gòu)文檔圖,捕捉多種文檔級關(guān)系,包括共引、共主題、共會議等。
?Li等人[87]和王等人[160]根據(jù)共享關(guān)鍵詞建立段落間的關(guān)系。
?為捕捉文檔中實(shí)體間的關(guān)系,Delile等人[20]、Edge等人[25]、Gutierrez等人[43]和李等人[80]利用命名實(shí)體識別工具從文檔中提取實(shí)體,并使用語言模型進(jìn)一步提取實(shí)體間的關(guān)系,提取的實(shí)體和關(guān)系隨后形成知識圖譜。
?還有一些針對下游任務(wù)的映射方法需要根據(jù)任務(wù)本身的特性進(jìn)行設(shè)計(jì)。例如,為了解決專利短語相似性推理任務(wù),Peng和Yang[122]將專利數(shù)據(jù)庫轉(zhuǎn)換為專利-短語圖。若短語出現(xiàn)在專利中,則建立專利節(jié)點(diǎn)與短語節(jié)點(diǎn)間的連接,而專利節(jié)點(diǎn)間的連接則基于引用關(guān)系。
?針對客戶服務(wù)技術(shù)支持場景,Xu等人[169]提出將歷史問題建模為KG,將問題轉(zhuǎn)化為樹形表示以維護(hù)問題內(nèi)部關(guān)系,并利用語義相似度和閾值保留問題間關(guān)系。
2.3.2 索引
基于圖的索引在提高圖數(shù)據(jù)庫查詢操作的效率和速度方面發(fā)揮著關(guān)鍵作用,直接影響后續(xù)檢索方法和粒度。常見的基于圖的索引方法包括圖索引、文本索引和向量索引。
2.3.2.1 圖索引
圖索引是最常用的方法,保留了圖的完整結(jié)構(gòu)。該方法確保對于任何給定節(jié)點(diǎn),其所有邊和相鄰節(jié)點(diǎn)都能輕松訪問。在后續(xù)檢索階段,可以使用諸如BFS和最短路徑算法等經(jīng)典圖搜索算法來促進(jìn)檢索任務(wù)。
2.3.2.2 文本索引
文本索引涉及將圖數(shù)據(jù)轉(zhuǎn)換為文本描述以優(yōu)化檢索過程。這些描述存儲在文本語料庫中,可以應(yīng)用各種基于文本的檢索技術(shù),如稀疏檢索和密集檢索。一些方法使用預(yù)定義規(guī)則或模板將知識圖轉(zhuǎn)換為人類可讀的文本。例如,
?Li等人[81]、Huang等人[55]和Li等人[86]使用預(yù)定義模板將知識圖中的每個(gè)三元組轉(zhuǎn)換為自然語言,
?而Yu等人[179]將具有相同頭實(shí)體的三元組合并為段落。
?此外,一些方法將子圖級信息轉(zhuǎn)換為文本描述。例如,Edge 等人 [25] 在圖上執(zhí)行社區(qū)檢測,并使用大型語言模型(LLMs)為每個(gè)社區(qū)生成摘要。
圖 3. 基于圖的檢索的通用架構(gòu)。
2.3.2.3 向量索引
向量索引將圖數(shù)據(jù)轉(zhuǎn)換為向量表示,以提高檢索效率,便于快速檢索和有效查詢處理。例如:
?實(shí)體鏈接可以通過查詢嵌入無縫應(yīng)用,并且可以利用局部敏感哈希(LSH)等高效向量搜索算法。
?G-Retriever [47] 使用語言模型對圖中的每個(gè)節(jié)點(diǎn)和邊的文本信息進(jìn)行編碼,
?而 GRAG [50] 使用語言模型將 k 跳自我網(wǎng)絡(luò)轉(zhuǎn)換為圖嵌入,從而更好地保留結(jié)構(gòu)信息。
備注。這三種索引方法各有不同的優(yōu)勢:圖索引便于訪問結(jié)構(gòu)信息,文本索引簡化了文本內(nèi)容的檢索,向量索引實(shí)現(xiàn)了快速高效的搜索。因此,在實(shí)際應(yīng)用中,通常傾向于采用結(jié)合這些索引方法的混合方法,而不是僅依賴一種。
2.4 圖引導(dǎo)檢索
在 GraphRAG 中,檢索過程對于確保生成輸出的質(zhì)量和相關(guān)性至關(guān)重要,它通過從外部圖數(shù)據(jù)庫中提取相關(guān)且高質(zhì)量的圖數(shù)據(jù)來實(shí)現(xiàn)。然而,檢索圖數(shù)據(jù)面臨兩大挑戰(zhàn):
(1)候選子圖爆炸:隨著圖規(guī)模增大,候選子圖數(shù)量呈指數(shù)級增長,需要啟發(fā)式搜索算法來高效探索和檢索相關(guān)子圖。
(2)相似度測量不足:準(zhǔn)確測量文本查詢與圖數(shù)據(jù)之間的相似度需要開發(fā)能夠理解文本和結(jié)構(gòu)信息的算法。
論文專注于研究 GraphRAG 中檢索過程的各個(gè)方面,包括檢索器的選擇、檢索范式、檢索粒度以及有效的增強(qiáng)技術(shù)。圖引導(dǎo)檢索的通用架構(gòu)如圖 3 所示。
2.4.1 檢索器
在GraphRAG中,各種檢索器針對檢索任務(wù)的不同方面具有獨(dú)特的優(yōu)勢。論文根據(jù)其底層模型將檢索器分為三種類型:非參數(shù)檢索器、基于語言模型的檢索器和基于圖神經(jīng)網(wǎng)絡(luò)的檢索器。需要注意的是,用于預(yù)處理步驟的模型,如查詢編碼和實(shí)體鏈接,在此不作考慮,因?yàn)檫@些模型在不同方法中有所不同,并非本文的主要關(guān)注點(diǎn)。
2.4.1.1 非參數(shù)檢索器
非參數(shù)檢索器基于啟發(fā)式規(guī)則或傳統(tǒng)的圖搜索算法,不依賴深度學(xué)習(xí)模型,從而實(shí)現(xiàn)高效的檢索。例如,
?Yasunaga等人[175]和Taunk等人[146]檢索包含每個(gè)問題-選項(xiàng)對主題實(shí)體的k跳路徑。
?G-Retriever[47]通過引入邊價(jià)格并優(yōu)化相關(guān)子圖提取,改進(jìn)了傳統(tǒng)的獎(jiǎng)賞收集斯坦納樹(PCST)算法。
?Delile等人[20]和Mavromatis與Karypis[108]首先提取查詢中提到的實(shí)體,然后檢索與這些實(shí)體相關(guān)的最短路徑。這些方法通常涉及一個(gè)實(shí)體鏈接預(yù)處理步驟,以在檢索前識別圖中的節(jié)點(diǎn)。
2.4.1.2 基于語言模型的檢索器(LM-based Retriever)
由于具備強(qiáng)大的自然語言理解能力,語言模型在GraphRAG中作為有效的檢索器。這些模型擅長處理和解釋多樣化的自然語言查詢,使其在基于圖框架的廣泛檢索任務(wù)中表現(xiàn)出色。論文主要將語言模型分為兩種類型:判別式和生成式語言模型。
?子圖檢索器[181]訓(xùn)練RoBERTa[97]作為檢索器,該檢索器從主題實(shí)體擴(kuò)展并按順序決策過程中檢索相關(guān)路徑。
?KG-GPT[71]采用大型語言模型(LLMs)生成特定實(shí)體的前K個(gè)相關(guān)關(guān)系集合。
?Wold等人[164]利用微調(diào)的GPT-2生成推理路徑。
?StructGPT[58]利用LLMs自動(dòng)調(diào)用多個(gè)預(yù)定義函數(shù),通過這些函數(shù)可以檢索并組合相關(guān)信息以輔助進(jìn)一步推理。
2.4.1.3 基于圖神經(jīng)網(wǎng)絡(luò)的檢索器(GNN-based Retriever)
圖神經(jīng)網(wǎng)絡(luò)(GNNs)擅長理解和利用復(fù)雜的圖結(jié)構(gòu)?;贕NN的檢索器通常先對圖數(shù)據(jù)進(jìn)行編碼,然后根據(jù)與查詢的相似度對不同的檢索粒度進(jìn)行評分。例如,
?GNN-RAG[108]首先對圖進(jìn)行編碼,為每個(gè)實(shí)體分配一個(gè)分?jǐn)?shù),并根據(jù)閾值檢索與查詢相關(guān)的實(shí)體
?EtD[90]通過多次迭代來檢索相關(guān)路徑。在每次迭代中,它首先使用LLaMA2[148]選擇連接當(dāng)前節(jié)點(diǎn)的邊,然后利用GNNs獲取新一層節(jié)點(diǎn)的嵌入,為下一輪的LLM選擇做準(zhǔn)備。
備注。在檢索過程中,非參數(shù)檢索器表現(xiàn)出良好的檢索效率,但由于缺乏對下游任務(wù)的訓(xùn)練,可能會遭受檢索不準(zhǔn)確的困擾。同時(shí),盡管基于語言模型的檢索器和基于圖神經(jīng)網(wǎng)絡(luò)的檢索器提供了更高的檢索準(zhǔn)確性,但它們需要大量的計(jì)算開銷??紤]到這種互補(bǔ)性,許多方法提出了混合檢索方法,以提高檢索效率和準(zhǔn)確性。許多方法采用多階段檢索策略,在每個(gè)階段使用不同的模型。例如,RoG [102] 首先利用大型語言模型生成規(guī)劃路徑,然后從知識圖中提取滿足這些規(guī)劃路徑的路徑。GenTKGQA [36] 使用大型語言模型從查詢中推斷關(guān)鍵關(guān)系和約束,并根據(jù)這些約束提取三元組。
2.4.2 檢索范式
在GraphRAG中,不同的檢索范式,包括一次性檢索、迭代檢索和多階段檢索,對于提高檢索信息的相關(guān)性和深度起著至關(guān)重要的作用。一次性檢索旨在通過一次操作收集所有相關(guān)信息。迭代檢索基于先前檢索的信息進(jìn)行進(jìn)一步搜索,逐步縮小到最相關(guān)的結(jié)果。在這里,論文將迭代檢索進(jìn)一步分為自適應(yīng)檢索和非自適應(yīng)檢索,唯一的區(qū)別在于檢索的停止是否由模型決定。另一種檢索范式是多階段檢索,其中檢索被分為多個(gè)階段。在每個(gè)階段可能使用不同類型的檢索器,以獲得更精確和多樣化的搜索結(jié)果。下面,論文將詳細(xì)介紹這些類型的檢索范式。
2.4.2.1 一次檢索
一次檢索旨在通過單次查詢檢索所有相關(guān)信息。一類方法[43, 50, 81]利用嵌入相似性來檢索最相關(guān)的信息片段。另一類方法設(shè)計(jì)預(yù)定義規(guī)則或模式,直接從圖數(shù)據(jù)庫中提取特定的結(jié)構(gòu)化信息,如三元組、路徑或子圖。例如,G-Retriever [47]利用擴(kuò)展的PCST算法檢索最相關(guān)的子圖。KagNet [88]提取長度不超過k的所有主題實(shí)體對之間的路徑。Yasunaga等人[175]和Taunk等人[146]提取包含所有主題實(shí)體及其2跳鄰居的子圖。
此外,論文還包含了一些涉及解耦和獨(dú)立檢索的多重檢索方法,這些方法可以并行計(jì)算并僅執(zhí)行一次。例如,Luo等人[102]和Cheng等人[16]首先指示LLMs生成多條推理路徑,然后使用BFS檢索器在知識圖中依次搜索與每條路徑匹配的子圖。KG-GPT [71]將原始查詢分解為多個(gè)子查詢,在一次檢索過程中為每個(gè)子查詢檢索相關(guān)信息。
2.4.2.2 迭代檢索
在迭代檢索中,采用多次檢索步驟,后續(xù)搜索依賴于先前檢索的結(jié)果。這些方法旨在通過連續(xù)迭代加深對檢索信息理解或完整性的提升。在本調(diào)查中,論文將迭代檢索進(jìn)一步分類為兩類:(1)非自適應(yīng)檢索和(2)自適應(yīng)檢索。論文將在下面詳細(xì)總結(jié)這兩類方法。
(1) 非自適應(yīng)檢索。非自適應(yīng)方法通常遵循固定的檢索序列,檢索的終止由設(shè)置的最大時(shí)間或閾值決定。例如,PullNet [139] 通過 T 次迭代檢索問題相關(guān)子圖。在每次迭代中,論文設(shè)計(jì)了一種檢索規(guī)則來選擇檢索實(shí)體的子集,然后通過在知識圖中搜索相關(guān)邊來擴(kuò)展這些實(shí)體。在每次迭代中,KGP [160] 首先根據(jù)上下文與圖中節(jié)點(diǎn)的相似性選擇種子節(jié)點(diǎn)。然后使用大型語言模型(LLMs)總結(jié)和更新種子節(jié)點(diǎn)的鄰近節(jié)點(diǎn)的上下文,這些上下文在后續(xù)迭代中被利用。
(2) 自適應(yīng)檢索。自適應(yīng)檢索的一個(gè)顯著特點(diǎn)是讓模型自主決定完成檢索活動(dòng)的最佳時(shí)刻。例如,[42, 168] 利用語言模型(LM)進(jìn)行跳數(shù)預(yù)測,作為結(jié)束檢索的指示器。還有一組研究人員使用模型生成的特殊標(biāo)記或文本來作為檢索過程的終止信號。例如,ToG [142] 提示 LLM 代理探索多個(gè)可能的推理路徑,直到 LLM 根據(jù)當(dāng)前推理路徑確定問題可以被回答。[181] 訓(xùn)練了一個(gè) RoBERTa 來從每個(gè)主題實(shí)體擴(kuò)展路徑。在這個(gè)過程中,引入了一個(gè)名為 "[END]" 的虛擬關(guān)系來終止檢索過程。
另一種常見的方法是將大型模型視為代理,使其能夠直接生成問題的答案來信號結(jié)束迭代。例如,[58, 60, 66, 143, 158] 提出了基于 LLM 的代理在圖上進(jìn)行推理。這些代理可以自主決定檢索的信息,調(diào)用預(yù)定義的檢索工具,并根據(jù)檢索到的信息終止檢索過程。
2.4.2.3 多階段檢索
多階段檢索將檢索過程線性劃分為多個(gè)階段,在這些階段之間進(jìn)行諸如檢索增強(qiáng)等額外步驟,甚至包括生成過程。在多階段檢索中,不同的階段可能采用不同類型的檢索器,這使得系統(tǒng)能夠結(jié)合針對查詢不同方面的各種檢索技術(shù)。例如,
?Wang et al. [159] 首先使用非參數(shù)檢索器提取查詢推理鏈中實(shí)體的 n 跳路徑,然后在修剪階段之后,進(jìn)一步檢索修剪子圖中實(shí)體的一跳鄰居。
?OpenCSR [45] 將檢索過程分為兩個(gè)階段。在第一階段,它檢索主題實(shí)體的所有一跳鄰居。在第二階段,它比較這些鄰居節(jié)點(diǎn)與其他節(jié)點(diǎn)的相似性,選擇相似性最高的 top-k 節(jié)點(diǎn)進(jìn)行檢索。
?GNN-RAG [108] 首先使用 GNNs 檢索最有可能成為答案的 top-k 節(jié)點(diǎn)。隨后,它檢索查詢實(shí)體與答案實(shí)體之間的所有最短路徑。
備注。在GraphRAG中,一旦檢索通常表現(xiàn)出較低的復(fù)雜度和較短的響應(yīng)時(shí)間,這使其適合需要實(shí)時(shí)響應(yīng)的場景。相比之下,迭代檢索往往涉及更高的時(shí)間復(fù)雜度,特別是在使用LLM作為檢索器時(shí),可能會導(dǎo)致較長的處理時(shí)間。然而,這種方法通過迭代細(xì)化檢索到的信息并生成響應(yīng),可以產(chǎn)生更高的檢索準(zhǔn)確性。因此,檢索范式的選擇應(yīng)根據(jù)具體用例和需求平衡準(zhǔn)確性和時(shí)間復(fù)雜度。
2.4.3 檢索粒度
根據(jù)不同的任務(wù)場景和索引類型,研究人員設(shè)計(jì)了不同的檢索粒度(即從圖數(shù)據(jù)中檢索相關(guān)知識的形式),可分為節(jié)點(diǎn)、三元組、路徑和子圖。每種檢索粒度都有其自身的優(yōu)勢,適用于不同的實(shí)際場景。論文將在以下章節(jié)中介紹這些粒度的詳細(xì)信息。
2.4.3.1 節(jié)點(diǎn)
節(jié)點(diǎn)允許針對圖中的單個(gè)元素進(jìn)行精確檢索,非常適合目標(biāo)查詢和特定信息提取。通常,對于知識圖譜,節(jié)點(diǎn)指的是實(shí)體。對于其他類型的文本屬性圖,節(jié)點(diǎn)可能包括描述節(jié)點(diǎn)屬性的文本信息。通過檢索圖中的節(jié)點(diǎn),GraphRAG系統(tǒng)可以提供關(guān)于其屬性、關(guān)系和上下文的詳細(xì)見解。例如,Munikoti等人[113]、Li等人[87]和王等人[160]構(gòu)建文檔圖并檢索相關(guān)的段落節(jié)點(diǎn)。Liu等人[90]、Sun等人[139]和Gutierrez等人[43]從構(gòu)建的知識圖譜中檢索實(shí)體。
2.4.3.2 三元組
通常,三元組由實(shí)體及其關(guān)系以主語-謂語-賓語元組的形式構(gòu)成,提供了圖內(nèi)關(guān)系數(shù)據(jù)的結(jié)構(gòu)化表示。三元組的結(jié)構(gòu)化格式使得數(shù)據(jù)檢索清晰有序,這在理解實(shí)體間關(guān)系和上下文相關(guān)性至關(guān)重要的場景中具有優(yōu)勢。Yang等人[171]檢索包含主題實(shí)體的三元組作為相關(guān)信息。Huang等人[55]、Li等人[81]和Li等人[86]首先將圖數(shù)據(jù)的每個(gè)三元組使用預(yù)定義模板轉(zhuǎn)換為文本句子,隨后采用文本檢索器提取相關(guān)三元組。然而,直接從圖數(shù)據(jù)中檢索三元組可能仍缺乏上下文的廣度和深度,因此無法捕捉間接關(guān)系或推理鏈條。為解決這一挑戰(zhàn),Wang等人[152]提出基于原始問題生成邏輯鏈條,并檢索每個(gè)邏輯鏈條的相關(guān)三元組。
2.4.3.3 路徑
路徑粒度數(shù)據(jù)的檢索可以視為捕捉實(shí)體間關(guān)系的序列,增強(qiáng)上下文理解和推理能力。在GraphRAG中,檢索路徑因其能夠捕捉圖內(nèi)復(fù)雜關(guān)系和上下文依賴性而具有明顯優(yōu)勢。
然而,路徑檢索可能頗具挑戰(zhàn)性,因?yàn)殡S著圖規(guī)模的增長,可能的路徑數(shù)量呈指數(shù)級增長,這加劇了計(jì)算復(fù)雜性。為解決這一問題,一些方法依據(jù)預(yù)定義規(guī)則檢索相關(guān)路徑。例如,
?Wang等人[159]與Lo和Lim[98]首先在查詢中選取實(shí)體對,然后遍歷以找出它們之間的所有n跳路徑。
?HyKGE[64]首先定義了三種路徑類型:路徑、共同祖先鏈和共現(xiàn)鏈,隨后利用相應(yīng)規(guī)則檢索這三種路徑。此外,一些方法利用模型在圖上執(zhí)行路徑搜索。
?ToG[142]提出引導(dǎo)LLM代理在KGs上執(zhí)行波束搜索,并找出有助于回答問題的多條可能推理路徑。Luo等人[102]、
?Wu等人[168]以及Guo等人[42]首先利用模型生成可信的推理計(jì)劃,然后基于這些計(jì)劃檢索相關(guān)路徑。
?GNN-RAG[108]首先識別問題中的實(shí)體,隨后提取滿足特定長度關(guān)系的實(shí)體間所有路徑。
2.4.3.4 子圖檢索
子圖檢索因其能夠捕獲圖內(nèi)全面的關(guān)系上下文而具有顯著優(yōu)勢。這種粒度使得GraphRAG能夠提取并分析嵌入在更大結(jié)構(gòu)中的復(fù)雜模式、序列和依賴關(guān)系,從而促進(jìn)更深層次的洞察和對語義聯(lián)系的更細(xì)致理解。
為了確保信息完整性和檢索效率,一些方法提出了一種基于規(guī)則的初步方法來檢索候選子圖,這些子圖隨后會進(jìn)行進(jìn)一步的細(xì)化或處理。Peng和Yang [122] 從自建的專利短語圖中檢索專利短語的自我圖(ego graph)。
Yasunaga等人 [175]、Feng等人 [32] 和Taunk等人 [146] 首先選擇主題實(shí)體及其兩跳鄰居作為節(jié)點(diǎn)集,然后選擇頭尾實(shí)體均在節(jié)點(diǎn)集中的邊來形成子圖。此外,還有一些基于嵌入的子圖檢索方法。例如,Hu等人 [50] 首先對圖數(shù)據(jù)庫中的所有 k 跳自我網(wǎng)絡(luò)進(jìn)行編碼,然后根據(jù)嵌入之間的相似性檢索與查詢相關(guān)的子圖。Wen等人 [163] 和Li等人 [80] 基于預(yù)定義規(guī)則提取兩種類型的圖,包括路徑證據(jù)子圖和鄰居證據(jù)子圖。OpenCSR [45] 從一個(gè)初始的種子節(jié)點(diǎn)開始,逐步擴(kuò)展到新節(jié)點(diǎn),最終形成一個(gè)子圖。
除了上述直接檢索子圖的方法外,一些工作提出了先檢索相關(guān)路徑,然后從這些路徑構(gòu)建相關(guān)子圖的方法。例如,Zhang等人 [181] 訓(xùn)練了一個(gè)RoBERTa模型,通過序列決策過程識別多條推理路徑,隨后將不同路徑中的相同實(shí)體合并,以誘導(dǎo)出一個(gè)最終的子圖。
2.4.3.5混合粒度檢索
考慮到上述各種檢索粒度的優(yōu)缺點(diǎn),一些研究者提出使用混合粒度,即從圖數(shù)據(jù)中檢索多個(gè)粒度的相關(guān)信息。這種粒度增強(qiáng)了系統(tǒng)捕捉細(xì)節(jié)關(guān)系和廣泛上下文理解的能力,從而減少了噪聲并提高了檢索數(shù)據(jù)的相關(guān)性。先前的工作提出了利用大型語言模型(LLM)代理來檢索復(fù)雜的混合信息。Jin等人[66]、Jiang等人[58]、Jiang等人[60]、Wang等人[158]和Sun等人[143]提出采用基于LLM的代理,以自適應(yīng)地選擇節(jié)點(diǎn)、三元組、路徑和子圖。
備注:(1)在實(shí)際應(yīng)用中,這些檢索粒度之間沒有明確的界限,因?yàn)樽訄D可以由多個(gè)路徑組成,路徑可以由幾個(gè)三元組形成。(2)節(jié)點(diǎn)、三元組、路徑和子圖等各種粒度在GraphRAG過程中提供了不同的優(yōu)勢。根據(jù)任務(wù)的具體上下文,在選擇粒度時(shí)平衡檢索內(nèi)容和效率至關(guān)重要。對于簡單的查詢或當(dāng)效率至關(guān)重要時(shí),較細(xì)粒度如實(shí)體或三元組可能更受歡迎,以優(yōu)化檢索速度和相關(guān)性。相反,復(fù)雜場景通常受益于結(jié)合多種粒度的混合方法。這種方法確保了對圖結(jié)構(gòu)和關(guān)系的更全面理解,增強(qiáng)了生成響應(yīng)的深度和準(zhǔn)確性。因此,GraphRAG在粒度選擇上的靈活性使其能夠有效地適應(yīng)不同領(lǐng)域的多樣化信息檢索需求。
2.4.4檢索增強(qiáng)
為了確保高質(zhì)量的檢索,研究者提出了增強(qiáng)用戶查詢和檢索知識的技術(shù)。在本文中,論文將查詢增強(qiáng)分為查詢擴(kuò)展和查詢分解,將知識增強(qiáng)分為合并和修剪。這些策略共同優(yōu)化了檢索過程。盡管其他技術(shù)如查詢重寫在RAG中常用,但在GraphRAG中應(yīng)用較少。論文不深入探討這些方法,盡管它們有可能適應(yīng)GraphRAG。
2.4.4.1 查詢增強(qiáng)
應(yīng)用于查詢的策略通常涉及預(yù)處理技術(shù),以豐富信息以便更好地檢索。這可能包括查詢擴(kuò)展和查詢分解。
(1) 查詢擴(kuò)展。由于查詢通常長度較短且信息內(nèi)容有限,查詢擴(kuò)展旨在通過補(bǔ)充或細(xì)化原始查詢與額外的相關(guān)術(shù)語或概念來改進(jìn)搜索結(jié)果。Luo等人[102]利用大型語言模型(LLMs)生成基于知識圖譜(KGs)的關(guān)系路徑來增強(qiáng)檢索查詢。Cheng等人[16]采用SPARQL從Wikidata獲取查詢實(shí)體的所有別名,以擴(kuò)充捕捉同一實(shí)體詞匯變體的檢索查詢。Huang等人[55]提出了一種共識視圖知識檢索方法,以提高檢索準(zhǔn)確性,該方法首先發(fā)現(xiàn)語義相關(guān)的查詢,然后重新加權(quán)原始查詢項(xiàng)以增強(qiáng)檢索性能。HyKGE[64]利用大型模型生成問題的假設(shè)輸出,將假設(shè)輸出與查詢串聯(lián)作為檢索器的輸入。
(2) 查詢分解。查詢分解技術(shù)將原始用戶查詢分解成更小、更具體的子查詢。每個(gè)子查詢通常關(guān)注原始查詢的特定方面或組件,成功緩解了語言查詢的復(fù)雜性和歧義性。例如,[18, 71]將主要問題分解成子句子,每個(gè)子句子代表一個(gè)不同的關(guān)系,并依次為每個(gè)子句子檢索相關(guān)三元組。
2.4.4.2 知識增強(qiáng)
在檢索初始結(jié)果之后,采用知識增強(qiáng)策略來精煉和改進(jìn)檢索器的結(jié)果。這一階段通常涉及知識合并和知識修剪過程,以突出顯示最相關(guān)的信息。這些技術(shù)旨在確保最終檢索結(jié)果集不僅全面,而且高度符合用戶的信息需求。
(1) 知識融合。知識融合檢索到的信息能夠?qū)崿F(xiàn)信息的壓縮和聚合,有助于通過整合獲得更全面的視角,從多個(gè)來源獲取相關(guān)細(xì)節(jié)。這種方法不僅增強(qiáng)了信息的完整性和連貫性,還緩解了模型中輸入長度限制的問題。KnowledgeNavigator [42] 通過三元組聚合合并節(jié)點(diǎn)并壓縮檢索到的子圖,以提高推理效率。在子圖檢索 [181] 中,研究人員從每個(gè)主題實(shí)體檢索前k條路徑形成單個(gè)子圖后,提出合并不同子圖中相同的實(shí)體以形成最終子圖。Wen等人 [163] 和Li等人 [80] 基于關(guān)系合并檢索到的子圖,將滿足相同關(guān)系的首尾實(shí)體合并為兩個(gè)不同的實(shí)體集,最終形成關(guān)系路徑。
圖4. 圖增強(qiáng)生成的概覽。
(2) 知識剪枝。知識剪枝涉及過濾掉較少相關(guān)或冗余的檢索信息以精煉結(jié)果。先前的剪枝方法主要包括兩類:基于(再)排序的方法和基于大型語言模型(LLM)的方法?;?再)排序的方法涉及使用定制的指標(biāo)或標(biāo)準(zhǔn)對檢索信息進(jìn)行重新排序或優(yōu)先級排序。一種方法引入了更強(qiáng)的模型進(jìn)行再排序。例如,
?Li等人 [81] 將每個(gè)檢索到的三元組與問題-選項(xiàng)對連接,并采用預(yù)訓(xùn)練的交叉編碼器 [129] 對檢索到的三元組進(jìn)行再排序。
?Jiang等人 [64] 使用FlagEmbedding對文本進(jìn)行編碼,以重新排序由嵌入模型“bge reranker large”返回的前k個(gè)文檔。
另一類方法利用查詢與檢索信息之間的相似性進(jìn)行排序。例如,
?Cheng等人[16]根據(jù)子圖與查詢之間在關(guān)系和細(xì)粒度概念上的相似性對候選子圖進(jìn)行重新排序。
?Taunk等人[146]首先對2跳鄰居進(jìn)行聚類,然后刪除與輸入查詢相似度最低的聚類。
?Yasunaga等人[175]根據(jù)預(yù)訓(xùn)練語言模型計(jì)算的問題上下文與知識圖譜實(shí)體節(jié)點(diǎn)之間的相關(guān)性分?jǐn)?shù)對檢索到的子圖進(jìn)行修剪。
?Wang等人[159]、Jiang等人[61]、Gutierrez等人[43]和Luo等人[100]采用個(gè)性化PageRank算法對檢索到的候選信息進(jìn)行排序,以便進(jìn)一步過濾。
?G-G-E[35]首先將檢索到的子圖劃分為若干較小的子圖,然后比較每個(gè)較小子圖與查詢的相似性。刪除相似度低的子圖,并將剩余的較小子圖合并成一個(gè)較大的子圖。
此外,第三類方法提出了新的度量標(biāo)準(zhǔn)用于重新排序。例如,Murnikoti等人[113]提出了一種度量標(biāo)準(zhǔn),既能衡量檢索文本塊的影響力,又能衡量其時(shí)效性。KagNetr將檢索到的路徑分解為三元組,并根據(jù)知識圖譜嵌入(KGE)技術(shù)測量的置信度分?jǐn)?shù)對路徑進(jìn)行重新排序?;诖笮驼Z言模型(LLM)的方法擅長捕捉復(fù)雜的語言模式和語義細(xì)微差別,這增強(qiáng)了它們對搜索結(jié)果進(jìn)行排序或生成響應(yīng)的準(zhǔn)確性。為了避免引入噪聲信息,Wang等人[159]和Kim等人[71]提出通過調(diào)用LLM來檢查并修剪無關(guān)的圖數(shù)據(jù)。
2.5圖增強(qiáng)生成
生成階段是GraphRAG中另一個(gè)關(guān)鍵步驟,旨在將檢索到的圖數(shù)據(jù)與查詢相結(jié)合,以提高響應(yīng)質(zhì)量。在這一階段,必須根據(jù)下游任務(wù)選擇合適的生成模型。然后將檢索到的圖數(shù)據(jù)轉(zhuǎn)換為與生成器兼容的格式。生成器將查詢和轉(zhuǎn)換后的圖數(shù)據(jù)作為輸入,產(chǎn)生最終響應(yīng)。除了這些基本過程外,生成增強(qiáng)技術(shù)可以通過加強(qiáng)查詢與圖數(shù)據(jù)之間的交互并豐富內(nèi)容生成本身,進(jìn)一步提高輸出質(zhì)量。本節(jié)內(nèi)容的組織結(jié)構(gòu)和圖增強(qiáng)生成的概覽如圖4所示。
2.5.1 生成器
生成器的選擇往往取決于當(dāng)前面臨的下游任務(wù)類型。對于判別式任務(wù)(例如多選題問答)或可以表述為判別式任務(wù)的生成式任務(wù)(如知識庫問答KBQA),可以利用圖神經(jīng)網(wǎng)絡(luò)(GNNs)或判別式語言模型來學(xué)習(xí)數(shù)據(jù)的表示。這些表示隨后可以映射到與不同答案選項(xiàng)相關(guān)聯(lián)的logits,以提供響應(yīng)?;蛘撸墒秸Z言模型可以直接用于生成答案。然而,對于生成式任務(wù),僅使用GNNs和判別式語言模型是不夠的。這類任務(wù)需要生成文本,這要求部署解碼器。
2.5.1.1 GNNs
由于GNNs在圖數(shù)據(jù)表示能力上的強(qiáng)大,它們特別適用于判別式任務(wù)。GNNs能夠直接編碼圖數(shù)據(jù),捕捉圖結(jié)構(gòu)中復(fù)雜的關(guān)聯(lián)和節(jié)點(diǎn)特征。這種編碼隨后通過多層感知器(MLP)處理以生成預(yù)測結(jié)果。這些方法主要采用經(jīng)典的GNN模型(例如,GCN [ 7 4 ]、GAT [150]、GraphSAGE [ 4 4 ] 和 Graph Transformers [135]),無論是原始形式還是經(jīng)過修改以更好地適配下游任務(wù)。例如,Sun等人 [140] 在消息傳遞過程中計(jì)算相鄰節(jié)點(diǎn)的PageRank分?jǐn)?shù),并按這些分?jǐn)?shù)加權(quán)聚合它們,這種方法增強(qiáng)了中心節(jié)點(diǎn)從其最相關(guān)的相鄰節(jié)點(diǎn)吸收信息的能力。Mavromatis和Karypis [107] 將查詢解碼為多個(gè)向量(指令),并通過模擬廣度優(yōu)先搜索(BFS)與GNNs來改進(jìn)指令執(zhí)行,以及使用自適應(yīng)推理結(jié)合知識圖譜感知信息來更新指令,從而增強(qiáng)指令解碼和執(zhí)行的有效性。
2.5.1.2 語言模型(LMs)
LMs在文本理解方面具有強(qiáng)大的能力,這也使它們能夠作為生成器發(fā)揮作用。在將LMs與圖數(shù)據(jù)結(jié)合的背景下,首先需要將檢索到的圖數(shù)據(jù)轉(zhuǎn)換為特定的圖格式。這一轉(zhuǎn)換過程確保了結(jié)構(gòu)化信息能被LMs有效理解和利用。這些格式將在第7.2節(jié)中詳細(xì)闡述,對于保持圖數(shù)據(jù)的關(guān)聯(lián)性和層次結(jié)構(gòu)至關(guān)重要,從而增強(qiáng)了模型解釋復(fù)雜數(shù)據(jù)類型的能力。一旦圖數(shù)據(jù)格式化,它就會與查詢結(jié)合并輸入到一個(gè)LM中。
對于僅編碼器模型,如BERT [22] 和RoBERTa [97],它們主要用于判別任務(wù)。與GNNs類似,這些模型首先對輸入文本進(jìn)行編碼,然后利用MLPs將其映射到答案空間[55, 61, 81]。另一方面,編碼器-解碼器和僅解碼器模型,如T5 [127]、GPT-4 [116] 和LLaMA [24],擅長于判別和生成任務(wù)。這些模型在文本理解、生成和推理方面表現(xiàn)出色,能夠直接處理文本輸入并生成文本響應(yīng)。
2.5.1.3 混合模型
考慮到GNNs在表示圖數(shù)據(jù)結(jié)構(gòu)方面的優(yōu)勢,以及LMs在文本理解方面表現(xiàn)出的強(qiáng)大能力,許多研究正在探索這兩種技術(shù)的結(jié)合,以生成連貫的響應(yīng)。本文將混合生成方法分為兩種不同類型:級聯(lián)范式和平行范式。
(1) 級聯(lián)范式。在級聯(lián)方法中,過程涉及順序交互,其中一個(gè)模型的輸出作為下一個(gè)模型的輸入。具體而言,GNN首先處理圖數(shù)據(jù),將其結(jié)構(gòu)和關(guān)系信息封裝成LM能夠理解的形式。隨后,這種轉(zhuǎn)換后的數(shù)據(jù)被輸入到LM中,進(jìn)而生成最終的基于文本的響應(yīng)。這些方法以分步方式利用每個(gè)模型的優(yōu)勢,確保對結(jié)構(gòu)和文本數(shù)據(jù)都進(jìn)行細(xì)致的關(guān)注。
在這些方法中,提示調(diào)優(yōu)[79, 82, 95, 96]是一種典型方法,其中GNN通常用于編碼檢索到的圖數(shù)據(jù)。這種編碼后的圖數(shù)據(jù)隨后作為前綴添加到LM的輸入文本嵌入中。然后通過下游任務(wù)優(yōu)化GNN,以產(chǎn)生增強(qiáng)的圖數(shù)據(jù)編碼[36, 47, 50, 182]。
(2) 并行范式。另一方面,并行方法通過同時(shí)利用GNN和LLM的能力來操作。在這種設(shè)置下,兩個(gè)模型同時(shí)接收初始輸入,并協(xié)同處理相同數(shù)據(jù)的不同方面。然后通過另一個(gè)模型或一組規(guī)則合并輸出,以生成統(tǒng)一的響應(yīng),該響應(yīng)整合了圖形結(jié)構(gòu)和文本內(nèi)容的見解。
在并行范式中,典型方法包括分別使用GNN和LM對輸入進(jìn)行編碼,然后整合這兩種表示,或直接整合它們的輸出響應(yīng)。例如,Jiang等人[59]通過加權(quán)求和聚合GNN和LM的預(yù)測以獲得最終答案。Lin等人[88]和Pahuja等人[118]利用注意力機(jī)制整合GNN導(dǎo)出的圖表示和LM生成的文本表示。Yasunaga等人[175]、Munikoti等人[113]和Taunk等人[146]直接將圖表示與文本表示連接起來。
另一種方法涉及設(shè)計(jì)專用模塊,將GNN與LM集成,使生成的表示能夠封裝結(jié)構(gòu)和文本信息。例如,Zhang等人[184]引入了一個(gè)名為GreaseLM層的模塊,該模塊結(jié)合了GNN和LM層。在每一層,該模塊通過兩層MLP整合文本和圖表示,然后將它們傳遞到下一層。類似地,ENGINE[189]提出了G-Ladders,通過側(cè)結(jié)構(gòu)結(jié)合LM和GNN,增強(qiáng)節(jié)點(diǎn)表示以用于下游任務(wù)。
備注。利用GNN對圖數(shù)據(jù)的表示能力和LM對文本數(shù)據(jù)的表示能力的混合模型具有廣闊的應(yīng)用前景。然而,有效整合這兩種模態(tài)的信息仍然是一個(gè)重大挑戰(zhàn)。
2.5.2 圖格式
在使用GNN作為生成器時(shí),可以直接編碼圖數(shù)據(jù)。然而,當(dāng)使用LM作為生成器時(shí),圖數(shù)據(jù)的非歐幾里得特性構(gòu)成了挑戰(zhàn),因?yàn)樗荒苤苯优c文本數(shù)據(jù)結(jié)合作為LM的輸入。為此,采用圖翻譯器將圖數(shù)據(jù)轉(zhuǎn)換為與LM兼容的格式。這種轉(zhuǎn)換增強(qiáng)了LM的生成能力,使其能夠有效處理和利用結(jié)構(gòu)化圖信息。在本調(diào)查中,論文總結(jié)了兩種不同的圖格式:圖語言和圖嵌入。論文通過圖5中的示例說明這一過程,詳細(xì)介紹如下。
圖 5. 圖語言的圖示。給定左側(cè)部分的檢索子圖,論文展示了如何將其轉(zhuǎn)換為鄰接/邊表、自然語言、節(jié)點(diǎn)序列、類似代碼的形式和語法樹,以適應(yīng)不同生成器的輸入形式要求。
2.5.2.1 圖語言
圖描述語言是一種專門設(shè)計(jì)的規(guī)范化符號系統(tǒng),用于表征和表示圖數(shù)據(jù)。它規(guī)定了一個(gè)統(tǒng)一的語法和語義框架,描述了圖中的組件及其相互連接。通過這些語言,用戶可以以機(jī)器可理解的形式一致地生成、操作和解釋圖數(shù)據(jù)。它們支持圖架構(gòu)的定義、節(jié)點(diǎn)和邊的屬性的指定以及對圖結(jié)構(gòu)的操作和查詢的實(shí)現(xiàn)。接下來,論文將分別介紹五種類型的圖語言:鄰接/邊表、自然語言、代碼、語法樹和節(jié)點(diǎn)序列。
(1) 鄰接/邊表。鄰接表和邊表是廣泛用于描述圖結(jié)構(gòu)的兩種方法[30, 41, 85, 153]。鄰接表列舉了每個(gè)頂點(diǎn)的直接鄰居,提供了一種緊湊的方式來表示稀疏圖中的連接。例如,KG-GPT[71]將檢索到的子圖中的三元組線性化,然后拼接并輸入到大型語言模型中。相反,邊表詳細(xì)列出了圖中的所有邊,提供了一種直接的表示方式,特別適用于以線性格式處理和分析圖。這兩種方法簡明、易于理解和直觀。
(2) 自然語言。鑒于用戶查詢通常以自然語言形式呈現(xiàn),并考慮到大模型(LMs)在自然語言理解方面的卓越能力,使用自然語言描述檢索到的圖數(shù)據(jù)成為一種引人注目的方法。通過將圖數(shù)據(jù)轉(zhuǎn)換為描述性、易于理解的語言,LMs能夠彌合原始數(shù)據(jù)表示與用戶友好信息之間的差距,促進(jìn)與數(shù)據(jù)驅(qū)動(dòng)應(yīng)用更有效的交互。例如,一些研究者[55, 81]提出為每種類型的邊預(yù)定義一個(gè)自然語言模板,然后根據(jù)邊的類型將每條邊的端點(diǎn)填入相應(yīng)的模板中。Ye等人[176]采用自然語言描述中心節(jié)點(diǎn)的1跳和2跳鄰近節(jié)點(diǎn)的信息。Edge等人[25]利用大語言模型(LLMs)為每個(gè)檢測到的圖社區(qū)生成類似報(bào)告的總結(jié)。Wu等人[168]和Guo等人[42]采用LMs重寫檢索到的子圖的邊表,生成自然語言描述。Fatemi等人[30]探索了節(jié)點(diǎn)的不同表示形式(例如整數(shù)編碼、字母表字母、名稱等)和邊的不同表示形式(例如括號、箭頭、關(guān)聯(lián)等)。Jin等人[66],Jiang等人[58],Jiang等人[60],Wang等人[158]和Sun等人[143]通過自然語言對話的形式,將圖內(nèi)不同粒度的信息整合到提示中。
(3) 類代碼形式??紤]到自然語言描述和其他一維序列本質(zhì)上不足以直接表示圖數(shù)據(jù)的二維結(jié)構(gòu),并且鑒于語言模型強(qiáng)大的代碼理解能力,許多研究人員[41]探索使用類代碼格式來表示圖結(jié)構(gòu)。例如,Guo等人[41]研究了使用圖形建模語言(GML)[48]和圖形標(biāo)記語言(GraphML)[130]來表示圖。這些標(biāo)準(zhǔn)化語言專門設(shè)計(jì)用于圖數(shù)據(jù),提供了包括節(jié)點(diǎn)、邊及其相互關(guān)系在內(nèi)的全面描述。
(4) 語法樹。與直接扁平化圖相比,一些研究[186]提出將圖轉(zhuǎn)換為類似語法樹的結(jié)構(gòu)。語法樹具有層次結(jié)構(gòu),并且作為拓?fù)鋱D,也保持了拓?fù)漤樞?。這種方法保留了更多的結(jié)構(gòu)信息,增強(qiáng)了圖的內(nèi)在屬性的理解和分析。這種轉(zhuǎn)換不僅保留了不同圖元素之間的關(guān)聯(lián)動(dòng)態(tài),而且促進(jìn)了更復(fù)雜的圖分析和處理算法。GRAPHTEXT[186]提出將中心節(jié)點(diǎn)的自我網(wǎng)絡(luò)\mathrm{o f}轉(zhuǎn)換為圖-語法樹格式。這種格式不僅封裝了結(jié)構(gòu)信息,還集成了節(jié)點(diǎn)的特征。通過遍歷這個(gè)語法樹,可以獲得一個(gè)既保持拓?fù)漤樞蛴直3謱哟谓Y(jié)構(gòu)的節(jié)點(diǎn)序列。
(5) 節(jié)點(diǎn)序列。一些研究[14, 108]提出通過節(jié)點(diǎn)序列來表示圖,這些序列通常使用預(yù)定義規(guī)則生成。與自然語言描述相比,這些節(jié)點(diǎn)序列更為簡潔,并融入了先驗(yàn)知識,特別是規(guī)則所強(qiáng)調(diào)的結(jié)構(gòu)信息。Luo et al. [102]和Sun et al. [142]將檢索到的路徑轉(zhuǎn)換為節(jié)點(diǎn)序列,并輸入到大型語言模型(LLM)中以提升任務(wù)性能。LLaGA[14]提出了兩種模板,可將圖轉(zhuǎn)換為節(jié)點(diǎn)序列。第一種模板稱為鄰域細(xì)節(jié)模板,提供對中心節(jié)點(diǎn)及其周邊的詳細(xì)考察。第二種稱為跳躍場概覽模板,提供節(jié)點(diǎn)鄰域的概括視角,可擴(kuò)展至更廣泛的區(qū)域。GNN-RAG[108]以節(jié)點(diǎn)序列形式將檢索到的推理路徑輸入到語言模型(LM)中作為提示。
備注:優(yōu)秀的圖語言應(yīng)具備完整性、簡潔性和可理解性。完整性意味著捕捉圖結(jié)構(gòu)中的所有關(guān)鍵信息,確保無重要細(xì)節(jié)遺漏。簡潔性指保持文本描述簡短,以避免“中間迷失”現(xiàn)象或超出語言模型的長度限制。過長的輸入會阻礙語言模型的處理能力,可能導(dǎo)致上下文丟失或數(shù)據(jù)解釋被截?cái)唷?衫斫庑源_保所用語言易于被大型語言模型(LLM)理解,便于準(zhǔn)確表示圖的結(jié)構(gòu)。由于不同圖語言的特性,它們的選擇會顯著影響下游任務(wù)的性能[30]。
2.5.2.2 圖嵌入
上述圖語言方法將圖數(shù)據(jù)轉(zhuǎn)換為文本序列,這可能導(dǎo)致上下文過長,產(chǎn)生高計(jì)算成本,并可能超出LLMs的處理極限。此外,即使使用圖語言,LLMs目前也難以完全理解圖結(jié)構(gòu)[41]。因此,使用圖神經(jīng)網(wǎng)絡(luò)(GNNs)將圖表示為嵌入向量提供了一種有前景的替代方案。核心挑戰(zhàn)在于將圖嵌入與文本表示整合到一個(gè)統(tǒng)一的語義空間中。當(dāng)前研究主要集中在利用提示調(diào)優(yōu)方法,如前所述。值得注意的是,將圖表示輸入到語言模型(LMs)中主要適用于開源LMs,而非像GPT-4[116]這樣的閉源模型。盡管圖嵌入方法避免了處理長文本輸入,但它們面臨其他挑戰(zhàn),如難以保留特定實(shí)體名稱等精確信息和泛化能力差。
2.5.3 生成增強(qiáng)
在生成階段,除了將檢索到的圖數(shù)據(jù)轉(zhuǎn)換為生成器可接受的格式,并與查詢一起輸入以生成最終響應(yīng)外,許多研究人員探索了各種生成增強(qiáng)技術(shù)以提高輸出響應(yīng)的質(zhì)量。這些方法可以根據(jù)其應(yīng)用階段分為三類:生成前增強(qiáng)、生成中增強(qiáng)和生成后增強(qiáng)。
2.5.3.1 生成前增強(qiáng)
生成前增強(qiáng)技術(shù)側(cè)重于在將數(shù)據(jù)或表示輸入生成器之前提高其質(zhì)量。實(shí)際上,生成前增強(qiáng)與檢索之間沒有明確的界限。在本調(diào)查中,論文將檢索階段視為從原始圖中檢索知識,并進(jìn)行知識合并和修剪的過程。后續(xù)操作被視為生成前增強(qiáng)。
常見的預(yù)生成增強(qiáng)方法主要涉及對檢索到的圖數(shù)據(jù)進(jìn)行語義豐富,以實(shí)現(xiàn)圖數(shù)據(jù)與文本查詢之間更緊密的整合。
?Wu等人[168]利用大型語言模型(LLMs)重寫檢索到的圖數(shù)據(jù),增強(qiáng)轉(zhuǎn)換后的自然語言輸出的自然度和語義豐富性。這種方法不僅確保圖數(shù)據(jù)被轉(zhuǎn)換為更流暢和自然的語言,還豐富了其語義內(nèi)容。相反,DALK 80利用檢索到的圖數(shù)據(jù)重寫查詢。
?Cheng等人[16]首先利用LLMs生成推理計(jì)劃,并根據(jù)該計(jì)劃回答查詢。
?Taunk等人[146]和Yasunaga等人[175]旨在通過使GNNs能夠?qū)W習(xí)與查詢相關(guān)的圖表示來增強(qiáng)GNNs。他們通過從QA對(或QA對本身)中提取所有名詞,并將它們作為節(jié)點(diǎn)插入檢索到的子圖中來實(shí)現(xiàn)這一點(diǎn)。
?Mavromatis和Karypis[107]提出了一種方法,在生成之前,將查詢的表示分解為多個(gè)稱為“指令”的向量,每個(gè)向量代表查詢的不同特征。這些指令在應(yīng)用GNNs從檢索到的子圖中學(xué)習(xí)時(shí),作為消息傳遞的條件。
?此外,還有一些方法結(jié)合了圖數(shù)據(jù)之外的額外信息。例如,PullNet[139]結(jié)合了與實(shí)體相關(guān)的文檔,而MVP-Tuning[55]則檢索了其他相關(guān)問題。
2.5.3.2 生成過程中的增強(qiáng)技術(shù)
生成過程中的增強(qiáng)技術(shù)涉及在生成過程中應(yīng)用的方法。這些方法通常根據(jù)中間結(jié)果或上下文線索調(diào)整生成策略。TIARA [136] 引入了受限解碼以控制輸出空間并減少生成錯(cuò)誤。在生成邏輯形式時(shí),如果受限解碼器檢測到當(dāng)前正在生成模式項(xiàng),它會將下一個(gè)生成的令牌限制為存在于包含KB類和關(guān)系的tries中的選項(xiàng)。與Beam Search相比,這種方法確保生成的模式項(xiàng)必定存在于知識圖中,從而減少生成錯(cuò)誤。還有其他方法調(diào)整LLM的提示以實(shí)現(xiàn)多步驟推理。例如,MindMap [163] 不僅生成答案,還生成推理過程。
2.5.3.3生成后的增強(qiáng)技術(shù)
生成后的增強(qiáng)技術(shù)發(fā)生在初始響應(yīng)生成之后。生成后的增強(qiáng)方法主要涉及整合多個(gè)生成的響應(yīng)以獲得最終響應(yīng)。一些方法側(cè)重于整合來自同一生成器在不同條件或輸入下的輸出。例如,
?Edge et al. [25] 為每個(gè)圖社區(qū)生成摘要,然后基于摘要生成查詢的響應(yīng),并使用LLM對這些響應(yīng)進(jìn)行評分。最終,響應(yīng)按分?jǐn)?shù)降序排列,并依次納入提示中,直到達(dá)到令牌限制。隨后,LLM生成最終響應(yīng)。
?Wang et al. [152] 和 Kim et al. [71] 首先將查詢分解為幾個(gè)子問題,然后為每個(gè)子問題生成答案,最后合并所有子問題的答案以獲得最終答案。或者,其他方法結(jié)合或選擇不同模型生成的響應(yīng)。
?Lin et al. [88] 和 Jiang et al. [59] 結(jié)合GNNs和LLMs生成的輸出以達(dá)到協(xié)同效應(yīng)。UniOQA [86] 探索了兩種生成答案的方法:一種涉及生成Cypher查詢語言(CQL)的查詢以執(zhí)行并獲取結(jié)果,
?另一種方法直接基于檢索到的三元組生成答案。最終答案通過動(dòng)態(tài)選擇機(jī)制確定。在EmbedKGQA [133] 中,除了學(xué)習(xí)的評分函數(shù)外,研究人員還額外設(shè)計(jì)了一個(gè)基于圖結(jié)構(gòu)的規(guī)則基礎(chǔ)評分。這兩個(gè)評分結(jié)合以找到答案實(shí)體。
?Li et al. [85] 結(jié)合基于檢索到的圖數(shù)據(jù)的答案與根據(jù)LLM自身知識生成的響應(yīng)。
2.6訓(xùn)練
論文總結(jié)了檢索器、生成器及其聯(lián)合訓(xùn)練的個(gè)體訓(xùn)練。論文根據(jù)是否需要明確的訓(xùn)練,將先前的工作分為無訓(xùn)練(Training-Free)和基于訓(xùn)練(Training-Based)的方法。無訓(xùn)練方法通常在使用如GPT-4 [116]等閉源大型語言模型(LLMs)作為檢索器或生成器時(shí)采用。這些方法主要依賴于精心設(shè)計(jì)的提示來控制LLMs的檢索和生成能力。盡管LLMs在文本理解和推理方面具有強(qiáng)大的能力,但無訓(xùn)練方法的挑戰(zhàn)在于由于缺乏對下游任務(wù)的特定優(yōu)化,可能導(dǎo)致結(jié)果的次優(yōu)性。
相反,基于訓(xùn)練的方法涉及使用監(jiān)督信號對模型進(jìn)行訓(xùn)練或微調(diào)。這些方法通過使模型適應(yīng)特定的任務(wù)目標(biāo)來增強(qiáng)模型性能,從而可能提高檢索或生成內(nèi)容的質(zhì)量和相關(guān)性。檢索器和生成器的聯(lián)合訓(xùn)練旨在增強(qiáng)它們的協(xié)同作用,從而提升下游任務(wù)的性能。這種協(xié)作方法利用了兩個(gè)組件的互補(bǔ)優(yōu)勢,以在信息檢索和內(nèi)容生成應(yīng)用中實(shí)現(xiàn)更穩(wěn)健和有效的結(jié)果。
2.6.1 檢索器的訓(xùn)練策略
2.6.1.1 無訓(xùn)練
目前使用的無訓(xùn)練檢索器主要有兩種類型。
第一種類型包括非參數(shù)檢索器。這些檢索器依賴于預(yù)定義的規(guī)則或傳統(tǒng)的圖搜索算法,而不是特定的模型 [146, 175]。
第二種類型利用預(yù)訓(xùn)練的語言模型(LMs)作為檢索器。具體來說,一組工作利用預(yù)訓(xùn)練的嵌入模型對查詢進(jìn)行編碼,并直接基于查詢與圖元素之間的相似性進(jìn)行檢索 [81]。
另一組工作采用生成語言模型進(jìn)行無訓(xùn)練檢索。候選圖元素如實(shí)體、三元組、路徑或子圖作為LLMs的提示輸入的一部分。LLMs然后利用語義關(guān)聯(lián)根據(jù)提供的提示選擇適當(dāng)?shù)膱D元素 [25, 66, 71, 108, 142, 152, 159]。這些方法利用LMs強(qiáng)大的語義理解能力來檢索相關(guān)的圖元素,而無需進(jìn)行明確的訓(xùn)練。
2.6.1.2 基于訓(xùn)練的方法
訓(xùn)練檢索器通常采用自回歸方法,其中先前的關(guān)系路徑被連接到查詢的末尾。模型隨后根據(jù)這個(gè)連接的輸入預(yù)測下一個(gè)關(guān)系[42, 168]。
然而,大多數(shù)數(shù)據(jù)集中缺乏檢索內(nèi)容的真值標(biāo)注是一個(gè)重大挑戰(zhàn)。為了解決這一問題,許多方法試圖基于遠(yuǎn)程監(jiān)督構(gòu)建推理路徑以指導(dǎo)檢索器訓(xùn)練。例如,
?Zhang等人[181]、Feng等人[31]和Luo等人[102]提取查詢中的實(shí)體與答案中的實(shí)體之間的所有路徑(或最短路徑),將其用作檢索器的訓(xùn)練數(shù)據(jù)。
?此外,Zhang等人[181]還在無監(jiān)督設(shè)置中采用關(guān)系抽取數(shù)據(jù)集進(jìn)行遠(yuǎn)程監(jiān)督。
?還有一類方法利用隱式的中間監(jiān)督信號來訓(xùn)練檢索器。例如,KnowGPT[183]從頭部實(shí)體開始搜索最優(yōu)路徑,將發(fā)現(xiàn)尾部實(shí)體作為獎(jiǎng)勵(lì),并使用策略梯度進(jìn)行訓(xùn)練。
?NSM[46]采用雙向搜索策略,其中兩個(gè)檢索器分別從頭部實(shí)體和尾部實(shí)體開始搜索。監(jiān)督目標(biāo)確保兩個(gè)檢索器搜索的路徑盡可能接近收斂。
一些方法認(rèn)為,遠(yuǎn)程監(jiān)督信號或隱式中間監(jiān)督信號可能包含大量噪聲,這使得訓(xùn)練有效的檢索器變得困難。因此,他們考慮采用自監(jiān)督方法來預(yù)訓(xùn)練檢索器。SKP [23] 預(yù)訓(xùn)練了 DPR(Dense Passage Retrieval)模型 [69]。首先,它對子圖進(jìn)行隨機(jī)采樣并將其轉(zhuǎn)換為段落。隨后,它隨機(jī)屏蔽段落,使用掩碼語言模型(MLM)訓(xùn)練模型,并通過將屏蔽段落和原始段落作為正樣本對進(jìn)行對比學(xué)習(xí)。
2.6.2生成器的訓(xùn)練
2.6.2.1 無需訓(xùn)練
無需訓(xùn)練的生成器主要適用于閉源大型語言模型(LLMs)或需要避免高訓(xùn)練成本的場景。在這些方法中,檢索到的圖數(shù)據(jù)與查詢一起輸入到LLMs中。然后,LLMs根據(jù)提示中的任務(wù)描述生成響應(yīng),主要依賴于其對查詢和圖數(shù)據(jù)的理解能力。
2.6.2.2 基于訓(xùn)練
訓(xùn)練生成器可以直接從下游任務(wù)接收監(jiān)督信號。對于生成型LLMs,可以使用監(jiān)督微調(diào)(SFT)進(jìn)行微調(diào),其中輸入任務(wù)描述、查詢和圖數(shù)據(jù),并將輸出與下游任務(wù)的 ground truth 進(jìn)行比較 [47, 50, 102]。另一方面,對于作為生成器的圖神經(jīng)網(wǎng)絡(luò)(GNNs)或判別模型,采用針對下游任務(wù)定制的損失函數(shù)來有效訓(xùn)練模型 [59, 81, 146, 175, 184]。
2.6.3 聯(lián)合訓(xùn)練
同時(shí)聯(lián)合訓(xùn)練檢索器和生成器可以利用它們的互補(bǔ)優(yōu)勢,提高下游任務(wù)的性能。一些方法將檢索器和生成器統(tǒng)一到一個(gè)模型中,通常是LLMs,并同時(shí)使用檢索和生成目標(biāo)進(jìn)行訓(xùn)練 [102]。這種方法利用了統(tǒng)一架構(gòu)的協(xié)同能力,使模型能夠在單一框架內(nèi)無縫檢索相關(guān)信息并生成連貫的響應(yīng)。
其他方法涉及最初分別訓(xùn)練檢索器和生成器,隨后采用聯(lián)合訓(xùn)練技術(shù)對這兩個(gè)組件進(jìn)行微調(diào)。例如,子圖檢索器[181]采用交替訓(xùn)練范式,其中檢索器的參數(shù)固定,使用圖數(shù)據(jù)訓(xùn)練生成器。接著,生成器的參數(shù)固定,并利用生成器的反饋來指導(dǎo)檢索器的訓(xùn)練。這種迭代過程有助于兩個(gè)組件協(xié)調(diào)地改進(jìn)其性能。
2.7 應(yīng)用與評估
這里論文將總結(jié)與GraphRAG相關(guān)的下游任務(wù)、應(yīng)用領(lǐng)域、基準(zhǔn)和度量標(biāo)準(zhǔn)以及工業(yè)應(yīng)用。表1收集了現(xiàn)有的GraphRAG技術(shù),按下游任務(wù)、基準(zhǔn)、方法和評估指標(biāo)進(jìn)行分類。該表作為一個(gè)全面的概覽,突出了GraphRAG技術(shù)在不同領(lǐng)域的各個(gè)方面和應(yīng)用。
表1. GraphRAC的任務(wù)、基準(zhǔn)、方法和指標(biāo)。
圖片
2.7.1 下游任務(wù)
GraphRAG應(yīng)用于各種下游任務(wù)(尤其是NLP任務(wù)),包括問答、信息抽取等。
2.7.1.1 問答任務(wù)
問答任務(wù)具體包括知識庫問答(KBQA)和常識問答(CSQA)。
(1) KBQA。KBQA作為圖增強(qiáng)生成(GraphRAG)的基礎(chǔ)下游任務(wù)。在KBQA中,問題通常涉及特定的知識圖譜,答案往往涉及圖譜中的實(shí)體、關(guān)系或?qū)嶓w集之間的操作。該任務(wù)考驗(yàn)系統(tǒng)在結(jié)構(gòu)化知識庫中檢索和推理的能力,這對于促進(jìn)復(fù)雜查詢響應(yīng)至關(guān)重要。
(2) CSQA。與KBQA不同,CSQA主要以多項(xiàng)選擇題的形式出現(xiàn)。常識推理通常呈現(xiàn)一個(gè)常識性問題以及若干個(gè)答案選項(xiàng),每個(gè)選項(xiàng)可能代表一個(gè)實(shí)體的名稱或一個(gè)陳述。目標(biāo)是讓機(jī)器利用外部常識知識圖譜,如ConceptNet,找到與問題和選項(xiàng)相關(guān)的知識,并進(jìn)行適當(dāng)?shù)耐评?,得出正確答案。
2.7.1.2 信息檢索
信息檢索任務(wù)包括兩類:實(shí)體鏈接(EL)和關(guān)系抽取(RE)。
(1) 實(shí)體鏈接。實(shí)體鏈接(EL)是自然語言處理領(lǐng)域中的一個(gè)關(guān)鍵任務(wù),涉及識別文本段落中提到的實(shí)體,并將它們鏈接到知識圖譜中對應(yīng)的實(shí)體。通過利用Graph RAG等系統(tǒng),可以從知識圖譜中檢索相關(guān)信息,從而促進(jìn)對文本中提及實(shí)體的準(zhǔn)確推斷[167]。
(2) 關(guān)系抽取。關(guān)系抽?。≧E)旨在識別和分類文本中實(shí)體間的語義關(guān)系。GraphRAG通過使用基于圖的結(jié)構(gòu)來編碼和利用實(shí)體間的相互依賴關(guān)系,從而顯著增強(qiáng)此任務(wù),促進(jìn)從多樣文本源中更準(zhǔn)確且上下文敏感地抽取關(guān)系數(shù)據(jù)[85, 142, 143]。
2.7.1.3 其他應(yīng)用
除了上述下游任務(wù)外,GraphRAG還可應(yīng)用于自然語言處理領(lǐng)域的多種其他任務(wù),如事實(shí)驗(yàn)證、鏈接預(yù)測、對話系統(tǒng)和推薦系統(tǒng)。
(1) 事實(shí)驗(yàn)證。事實(shí)驗(yàn)證任務(wù)通常涉及利用知識圖譜評估一個(gè)事實(shí)陳述的真實(shí)性。模型需通過利用結(jié)構(gòu)化知識庫來確定給定事實(shí)斷言的有效性。GraphRAG技術(shù)可用于提取實(shí)體間的證據(jù)關(guān)聯(lián),以提高系統(tǒng)的效率和準(zhǔn)確性[85, 125, 142, 143]。
(2) 鏈接預(yù)測。鏈接預(yù)測涉及預(yù)測圖中缺失的關(guān)系或潛在的實(shí)體間連接。GraphRAG應(yīng)用于這一任務(wù)[18, 118],通過其從圖中檢索和分析結(jié)構(gòu)化信息的能力,提高預(yù)測準(zhǔn)確性,揭示圖數(shù)據(jù)中的潛在關(guān)系和模式。
(3) 對話系統(tǒng)。對話系統(tǒng)旨在使用自然語言與人類進(jìn)行對話,處理諸如回答問題、提供信息或促進(jìn)用戶交互等任務(wù)。通過在基于圖的框架中構(gòu)建對話歷史和上下文關(guān)系,GraphRAG系統(tǒng)[3]能提升模型生成連貫且上下文相關(guān)響應(yīng)的能力。
(4) 推薦系統(tǒng)。在電子商務(wù)平臺背景下,用戶與產(chǎn)品間的購買關(guān)系自然形成網(wǎng)絡(luò)圖。這些平臺中推薦系統(tǒng)的主要目標(biāo)在于預(yù)測用戶的未來購買意向,有效預(yù)估該圖中的潛在連接[156]。
2.7.2應(yīng)用領(lǐng)域
GraphRAG 因其卓越的能力,將結(jié)構(gòu)化知識圖譜與自然語言處理相結(jié)合,在電子商務(wù)、生物醫(yī)學(xué)、學(xué)術(shù)、文獻(xiàn)、法律等多個(gè)應(yīng)用場景中得到廣泛應(yīng)用,以下將進(jìn)行介紹。
2.7.2.1 電子商務(wù)
電子商務(wù)領(lǐng)域的主要目標(biāo)是通過個(gè)性化推薦和智能客服服務(wù)來提升顧客購物體驗(yàn)和增加銷售額。在此領(lǐng)域中,用戶與商品之間的歷史交互自然形成一個(gè)圖,隱含了用戶的行為模式和偏好信息。然而,隨著電子商務(wù)平臺數(shù)量的增加和用戶交互數(shù)據(jù)量的增長,利用GraphRAG技術(shù)提取關(guān)鍵子圖變得至關(guān)重要。Wang等人[156]通過集成多種類型或參數(shù)不同的檢索器來提取相關(guān)子圖,然后對其進(jìn)行編碼以預(yù)測用戶的時(shí)間行為。為了提升客服問答系統(tǒng)的模型性能,Xu等人[169]構(gòu)建了一個(gè)包含問題內(nèi)和問題間關(guān)系的過往問題圖。對于每個(gè)給定的查詢,系統(tǒng)會檢索相似的過往問題子圖以提高響應(yīng)質(zhì)量。
2.7.2.2 生物醫(yī)學(xué)
近年來,GraphRAG技術(shù)在生物醫(yī)學(xué)問答系統(tǒng)中的應(yīng)用日益增多,實(shí)現(xiàn)了先進(jìn)的醫(yī)療決策性能。在此領(lǐng)域中,每種疾病都與特定癥狀相關(guān)聯(lián),每種藥物都含有針對特定疾病的治療活性成分。一些研究者[20, 80]針對特定任務(wù)場景構(gòu)建知識圖譜,而其他研究者[64, 163, 171]則利用CMeKG和CPubMed-KG等開源知識圖譜作為檢索源?,F(xiàn)有方法通常先使用非參數(shù)檢索器進(jìn)行初步搜索,然后設(shè)計(jì)方法通過重排序[20, 64, 80, 163, 171]來過濾檢索到的內(nèi)容。此外,還有一些方法提出利用檢索到的信息重寫模型輸入,以提高生成效果[80]。
2.7.2.3 學(xué)術(shù)研究
在學(xué)術(shù)研究領(lǐng)域,每篇論文由一位或多位研究人員撰寫,并與一個(gè)研究領(lǐng)域相關(guān)聯(lián)。作者隸屬于機(jī)構(gòu),并且作者之間存在合作或共享機(jī)構(gòu)隸屬關(guān)系等關(guān)系。這些元素可以結(jié)構(gòu)化為圖格式。利用GraphRAG在此圖上可以促進(jìn)學(xué)術(shù)探索,包括預(yù)測作者的潛在合作者、識別特定領(lǐng)域的趨勢等。
2.7.2.4 文學(xué)
與學(xué)術(shù)研究類似,可以在文學(xué)領(lǐng)域構(gòu)建知識圖譜,節(jié)點(diǎn)代表書籍、作者、出版商和系列,邊標(biāo)簽為“由...撰寫”、“在...出版”和“書籍系列”。GraphRAG可以用于增強(qiáng)智能圖書館等現(xiàn)實(shí)應(yīng)用。
2.7.2.5 法律
在法律情境中,案件和司法意見之間存在廣泛的引用聯(lián)系,法官在做出新決定時(shí)經(jīng)常引用先前的意見。這自然形成了一個(gè)結(jié)構(gòu)化圖,其中節(jié)點(diǎn)代表意見、意見集群、案卷和法院,邊包含“意見引用”、“意見集群”、“集群案卷”和“案卷法院”等關(guān)系。GraphRAG在法律場景中的應(yīng)用可以幫助律師和法律研究人員進(jìn)行案件分析和法律咨詢等任務(wù)。
2.7.2.6 其他
除了上述應(yīng)用外,GraphRAG還應(yīng)用于其他現(xiàn)實(shí)場景,如情報(bào)報(bào)告生成[128]和專利短語相似性檢測[122]。Ranade和Joshi[128]首先構(gòu)建事件情節(jié)圖(EPG)并檢索事件的關(guān)鍵方面以輔助情報(bào)報(bào)告生成。Peng和Yang[122]創(chuàng)建專利短語圖并檢索給定專利短語的自我網(wǎng)絡(luò)以輔助短語相似性判斷。
2.7.3 基準(zhǔn)和度量
2.7.3.1 基準(zhǔn)
用于評估GraphRAG系統(tǒng)性能的基準(zhǔn)可分為兩類。第一類是下游任務(wù)的相應(yīng)數(shù)據(jù)集。論文根據(jù)第9.1節(jié)的分類總結(jié)了基準(zhǔn)和測試它們的論文,詳細(xì)信息見表1。第二類是專門為GraphRAG系統(tǒng)設(shè)計(jì)的基準(zhǔn)。這些基準(zhǔn)通常涵蓋多個(gè)任務(wù)領(lǐng)域,以提供全面的測試結(jié)果。例如,STARK[166]在半結(jié)構(gòu)化知識庫上對LLM檢索進(jìn)行基準(zhǔn)測試,涵蓋產(chǎn)品搜索、學(xué)術(shù)論文搜索和精準(zhǔn)醫(yī)學(xué)查詢?nèi)齻€(gè)領(lǐng)域,以評估當(dāng)前GraphRAG系統(tǒng)的能力。He等人[47]提出了一種面向現(xiàn)實(shí)文本圖的靈活問答基準(zhǔn),名為GraphQA,適用于多個(gè)應(yīng)用,包括場景圖理解、常識推理和知識圖推理。Graph Reasoning Benchmark(GRBENCH)[66]旨在促進(jìn)LLM與圖增強(qiáng)的研究,包含1,740個(gè)問題,可通過10個(gè)領(lǐng)域圖的知識回答。CRAG[172]提供了一個(gè)結(jié)構(gòu)化查詢數(shù)據(jù)集,并附帶模擬API以訪問底層模擬KG的信息,以實(shí)現(xiàn)公平比較。
2.7.3.2 評估指標(biāo)
GraphRAG的評估指標(biāo)大致可分為兩大類:下游任務(wù)評估(生成質(zhì)量)和檢索質(zhì)量。
(1) 下游任務(wù)評估(生成質(zhì)量)。在大多數(shù)研究中,下游任務(wù)評估指標(biāo)是評估GraphRAG性能的主要方法。例如,在KBQA中,通常使用精確匹配(EM)和F1分?jǐn)?shù)來衡量回答實(shí)體的準(zhǔn)確性。此外,許多研究人員采用BERT4Score和GPT4Score來緩解LLMs生成與真實(shí)答案同義但非精確匹配的實(shí)體的情況。在CSQA中,準(zhǔn)確性是最常用的評估指標(biāo)。對于問答系統(tǒng)等生成任務(wù),常用BLEU、ROUGE-L、METEOR等指標(biāo)來評估模型生成的文本質(zhì)量。
(2) 檢索質(zhì)量評估。雖然基于下游任務(wù)性能評估GraphRAG是可行的,但直接衡量檢索內(nèi)容的準(zhǔn)確性存在挑戰(zhàn)。因此,許多研究采用特定的指標(biāo)來衡量檢索內(nèi)容的精確度。例如,當(dāng)存在真實(shí)實(shí)體時(shí),檢索系統(tǒng)需要在檢索信息量和答案覆蓋范圍之間取得平衡。因此,一些研究使用答案覆蓋范圍與檢索子圖大小的比率來評估檢索系統(tǒng)的性能。此外,一些研究探索了查詢相關(guān)性、多樣性和忠實(shí)度分?jǐn)?shù)等指標(biāo),分別評估檢索內(nèi)容與查詢的相似度、檢索內(nèi)容的多樣性以及檢索信息的忠實(shí)度。
2.7.4 GraphRAG在工業(yè)界的應(yīng)用
本節(jié)主要關(guān)注工業(yè)界的GraphRAG系統(tǒng)。這些系統(tǒng)的特點(diǎn)在于它們依賴于工業(yè)圖數(shù)據(jù)庫系統(tǒng)或?qū)W⒂诖笠?guī)模圖數(shù)據(jù),具體細(xì)節(jié)如下。
?GraphRAG(微軟開發(fā)):該系統(tǒng)利用LLMs構(gòu)建基于實(shí)體的知識圖譜,并預(yù)先生成相關(guān)實(shí)體群組的社區(qū)摘要,從而能夠在文檔集合中捕捉局部和全局關(guān)系,進(jìn)而增強(qiáng)查詢聚焦的摘要(QFS)任務(wù)[25]。該項(xiàng)目還可利用開源RAG工具包如Llamalndex、LangChain等進(jìn)行快速實(shí)施。
?GraphRAG(NebulaGraph開發(fā)):該項(xiàng)目是首個(gè)工業(yè)級GraphRAG系統(tǒng),由NebulaGraph公司開發(fā)。該項(xiàng)目將LLMs集成到NebulaGraph數(shù)據(jù)庫中,旨在提供更智能和精確的搜索結(jié)果。
?GraphRAG(螞蟻集團(tuán)開發(fā)):該框架基于多個(gè)AI工程框架如DB-GPT、知識圖譜引擎OpenSPG和圖數(shù)據(jù)庫TuGraph構(gòu)建。具體而言,系統(tǒng)首先使用LLMs從文檔中提取三元組,然后存儲在圖數(shù)據(jù)庫中。在檢索階段,系統(tǒng)從查詢中識別關(guān)鍵詞,定位圖數(shù)據(jù)庫中的相應(yīng)節(jié)點(diǎn),并使用BFS或DFS遍歷子圖。在生成階段,檢索到的子圖數(shù)據(jù)被格式化為文本,并與上下文和查詢一起提交給LLMs處理。
?NaLLM(Neo4j開發(fā)):NaLLM(Neo4j與大型語言模型)框架將Neo4j圖數(shù)據(jù)庫技術(shù)與LLMs集成。其目標(biāo)在于探索和展示Neo4j與LLMs之間的協(xié)同作用,重點(diǎn)關(guān)注三個(gè)主要應(yīng)用場景:知識圖譜的自然語言接口、從非結(jié)構(gòu)化數(shù)據(jù)創(chuàng)建知識圖譜,以及利用靜態(tài)數(shù)據(jù)和LLM數(shù)據(jù)生成報(bào)告。
?LLM Graph Builder (by Neo4j): 這是由Neo4j開發(fā)的一個(gè)項(xiàng)目,用于自動(dòng)構(gòu)建知識圖譜,適用于GraphRAG的圖數(shù)據(jù)庫構(gòu)建和索引階段。該項(xiàng)目主要利用LLMs從非結(jié)構(gòu)化數(shù)據(jù)中提取節(jié)點(diǎn)、關(guān)系及其屬性,并利用LangChain框架創(chuàng)建結(jié)構(gòu)化知識圖譜。
本文轉(zhuǎn)載自 ??AI帝國??,作者: 無影寺
