MAGA:面向垂類場景的知識圖譜增強問答系統(tǒng)
一、研究背景
隨著近年來預訓練模型研究的飛速發(fā)展,其在問答、搜索、智能創(chuàng)作等場景下展現(xiàn)出了越來越強的通用性。如何讓模型學會用好外部知識,是下一階段預訓練語言模型發(fā)展的重要難題之一。近年來,知識圖譜結合預訓練的工作取得了新的進展?,F(xiàn)有工作較多使用靜態(tài)的知識圖譜,在輸入或監(jiān)督層面增強語言模型。而業(yè)界的知識圖譜往往持續(xù)演化,具有更大的規(guī)模、更豐富的內容、細分的垂直領域、且包含豐富的新實體與新關系。微信有著豐富的多模態(tài)文章與視頻數(shù)據(jù)場景,并構建了持續(xù)更新的大規(guī)模知識圖譜。如何訓練語言模型來有效地與知識圖譜進行聯(lián)動,將圖譜作為資源庫,從而利用其中的新知識與垂類知識(包含結構化知識、無結構化文本、多模態(tài)知識等),是一個重要且富有挑戰(zhàn)的難題。該項目旨在進一步探索知識指導的語言模型技術,形成高質量學術論文及可落地的模型與系統(tǒng)。
二、研究問題
核心研究問題為如何聯(lián)合優(yōu)化語言模型與知識圖譜表示,提升模型對于新語料、新實體的表示能力,提升困難樣本上的泛化效果,即語言模型與知識圖譜的聯(lián)合訓練(Joint Learning of Language Models and Knowledge Graphs)。該問題又可拆分為以下子問題:
(1)統(tǒng)一范式的生成式預訓練語言模型
要利用好外部知識,首先要基于一套具有遷移學習能力的統(tǒng)一范式的預訓練語言模型,即只需要通過較少的提示機制(prompt)等方法就可以整合若干序列到序列生成任務的模型。自2022年12月以來,以GPT為代表的自回歸模型獨領風騷,但對于利用外部知識、圖譜花知識、結構化或半結構化知識、以至于多模態(tài)知識,GPT是否仍然是最優(yōu)的選擇,是值得深入深入研究的。
生成式預訓練語言模型(GPT1.0)打開了NLP領域以同一模型適配若干任務的大門,通過調節(jié)輸入形式即可完成針對下游任務的訓練,為后來的統(tǒng)一范式的GPT3.0和T5模型奠定了基礎。GPT1.0的范式符合人們一般認為的語言學習的規(guī)律:先學習大量語料獲得相應的認識基礎,再對具體任務進行特殊的構造和優(yōu)化。
在GPT模型提出不久就加入精調產生了GPT2。GPT2模型較前代的預訓練語料庫為超過40G的近8000萬的網(wǎng)頁文本數(shù)據(jù),GPT2的預訓練語料庫相較于GPT而言增大了將近10倍。在模型方面,GPT-2 仍保持著簡單的架構,只使用了多個 Masked Self-Attention 和 Feed Forward Neural Network 兩個模塊。
GPT和GPT2與另一種生成式預訓練模型BERT的主要區(qū)別是方向。BERT 是基于雙向 Transformer 結構構建,而 GPT和GPT2 是基于單向 Transformer,這里的雙向與單向,是指在進行注意力計算時,BERT會同時考慮被遮蔽詞左右的詞對其的影響,而 GPT和GPT-2 只會考慮在待預測詞位置左側的詞對待預測詞的影響。
OpenAI所提出的GPT總的來說采用的是自回歸生成的學習任務在推動模型的表示學習,但是Google所提出的T5(Text-to-Text Transfer Transformer)模型采用了一種與前述模型相異的策略:將不同形式的任務統(tǒng)一為條件生成式任務,這樣以來預訓練模型的學習任務與下游具體任務的訓練方式就統(tǒng)一起來了,即可以使用統(tǒng)一的編碼-解碼方式來進行預訓練和其他自然語言處理任務,不需要上述針對具體任務具體構造。這種模型稱為“大一統(tǒng)”模型,可以有效降低不同任務之間的遷移學習與多任務學習的難度。
(2)知識增強的方案的優(yōu)化
單純基于問答語料構建的預訓練語言模型存在兩個重要缺陷:事實性錯誤和邏輯關系不可尋跡。


圖1 chatGPT的事實性錯誤與邏輯關系不可尋跡
在不同的問答、搜索、智能創(chuàng)作等場景下,具有不同規(guī)模、不同類型內容、不同細分垂直領域的圖、文、視頻等多模態(tài)信息。如何訓練語言模型來有效地與知識圖譜進行聯(lián)動,對于預訓練語言模型來說,本質上就是如何構造不同的預訓練任務。將知識圖譜嵌入(Knowledge Graph Embedding, KGE)、知識圖譜補全(Knowledge Graph Completing, KGC)等任務轉化為預訓練任務是一個重要的研究內容。
理論上,利用知識實現(xiàn)對預訓練語言模型的增強有兩種思路:一類是直接傳入圖結構(Factoid Knowledge Graph),或者保留已有的圖結構加入問答文本,之后利用路徑推理(path based symbolic methods)等方法利用知識,該方案較早成熟,問答效果下限高、上限低,可解釋性較好;另一類是不保留圖結構,而是將知識圖譜嵌入一個低維稠密空間(KGE),利用該空間分布式表示KG中的實體、關系,甚至是事件等,該方案提出是在word2vec等方案出現(xiàn)之后,但發(fā)展迅速,對嵌入訓練預料要求高,問答效果下限較低、上限很高,穩(wěn)健性較強。
利用KGE的方案可以再分成三種:一種是利用知識圖譜嵌入(KGE)作為掩碼,另一種是利用知識圖譜嵌入作為特征,第三種是兩者結合。
兩者結合方面有代表性的模型包括百度的ERNIE系列模型(也即文心系列)及其問答模型PLATO(Bao, 2019)系列模型(包括其前身AKGCM)。PLATO模型先后發(fā)表在EMNLP(前身KAGCM, 2019)、ACL(1.0,2020),并且都在Github上以paddlepaddle框架的形式開放調用。相關領域的研究者或可以在遵循paddle框架的基礎上繼續(xù)訓練。
利用KGE作為特征的方案有很多變種,最重要的變種應該是引入多任務方法,將KGE訓練和QA共同作為PLM的訓練任務??紤]到后續(xù)方法極大擴展了KGE-QA的適用性,將單獨放在下一節(jié)多源異構融合中。
(3)基于多智能體的強化學習問答系統(tǒng)
chatGPT使用PPO算法來增強問答系統(tǒng)的人類反饋,對于知識增強的預訓練模型該方案是否仍然是最優(yōu)的,多智能體框架是否能成為更有潛力的人類反饋強化學習(Reinforcement Learning from Human Feedback,RLHF),即以強化學習方式依據(jù)人類反饋優(yōu)化語言模型。

圖2 基于PPO的RLHF方法
過去幾年里各種 LLM 根據(jù)人類輸入提示 (prompt) 生成多樣化文本的能力令人印象深刻。然而,對生成結果的評估是主觀和依賴上下文的,例如,我們希望模型生成一個有創(chuàng)意的故事、一段真實的信息性文本,或者是可執(zhí)行的代碼片段,這些結果難以用現(xiàn)有的基于規(guī)則的文本生成指標 (如 BLUE 和 ROUGE) 來衡量。除了評估指標,現(xiàn)有的模型通常以預測下一個單詞的方式和簡單的損失函數(shù) (如交叉熵) 來建模,沒有顯式地引入人的偏好和主觀意見。
這就是 RLHF 的思想就是利用生成文本的人工反饋作為性能衡量標準,或者更進一步用該反饋作為損失來優(yōu)化模型:使用強化學習的方式直接優(yōu)化帶有人類反饋的語言模型。RLHF 使得在一般文本數(shù)據(jù)語料庫上訓練的語言模型能和復雜的人類價值觀對齊。
附錄:用戶端測試版(SaaS)
用戶端測試版(MAGA1.0)
本文作者系何軼輝(21級應統(tǒng))
本文編輯系趙晨宇(22級信管)