博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 可擴(kuò)展、可解釋?zhuān)驴蚣軓念A(yù)訓(xùn)練語(yǔ)言模型中高效提取知識(shí)圖譜

可擴(kuò)展、可解釋?zhuān)驴蚣軓念A(yù)訓(xùn)練語(yǔ)言模型中高效提取知識(shí)圖譜

發(fā)布人:機(jī)器之心 時(shí)間:2022-12-21 來(lái)源:工程師 發(fā)布文章
來(lái)自加州大學(xué)圣迭戈分校(UCSD)、卡內(nèi)基梅隆大學(xué)(CMU)等機(jī)構(gòu)的研究者提出了一種自動(dòng)知識(shí)抽取框架,可以從 BERT 或 RoBerta 等預(yù)訓(xùn)練語(yǔ)言模型中高效且可擴(kuò)展地提取知識(shí)圖譜。


圖片


知識(shí)圖譜 (KG) 是表示知識(shí)的一種形式,通常由頭尾實(shí)體及其關(guān)系的三元組構(gòu)成。它被廣泛應(yīng)用在各個(gè)領(lǐng)域,包括搜索引擎、推薦系統(tǒng)、聊天機(jī)器人和醫(yī)療保健。傳統(tǒng)的知識(shí)圖譜是通過(guò)昂貴的眾包(例如 WordNet, ConceptNet, ATOMIC)構(gòu)建的。盡管最近的研究探索了使用文本挖掘技術(shù)來(lái)自動(dòng)構(gòu)建知識(shí)圖譜,但由于需要龐大的語(yǔ)料庫(kù)和復(fù)雜的處理流水線,這仍然是一項(xiàng)具有挑戰(zhàn)性的任務(wù)。此外,文本挖掘的一個(gè)不可避免的缺點(diǎn)是抽取的關(guān)系僅限于所選語(yǔ)料庫(kù)所涵蓋的關(guān)系。例如,許多常識(shí)性的知識(shí)并不會(huì)在人類(lèi)語(yǔ)言中被顯式地表達(dá),因此從語(yǔ)料庫(kù)中提取它們并不是一件容易的事。自動(dòng)構(gòu)建包含有“任何關(guān)系”的知識(shí)圖譜仍然是一個(gè)未經(jīng)探索的領(lǐng)域。


隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,越來(lái)越多的神經(jīng)網(wǎng)絡(luò)模型在不同領(lǐng)域的任務(wù)上取得優(yōu)異的表現(xiàn),例如使用 GPT-3 和 ChatGPT 進(jìn)行語(yǔ)言建模,以及使用 bioBERT 進(jìn)行醫(yī)學(xué)預(yù)測(cè)。在訓(xùn)練過(guò)程中,這些模型可以將從數(shù)據(jù)中學(xué)到的知識(shí)隱式地存儲(chǔ)在它們的參數(shù)中。例如,在大規(guī)模醫(yī)療記錄上訓(xùn)練的醫(yī)學(xué)模型可能已經(jīng)獲得了豐富的醫(yī)學(xué)知識(shí),使其能夠準(zhǔn)確預(yù)測(cè)疾病。同樣,流行病預(yù)測(cè)模型可能已經(jīng)從訓(xùn)練數(shù)據(jù)中隱含地學(xué)到了某些傳播模式。


最近的研究試圖利用語(yǔ)言模型作為知識(shí)庫(kù) (Language model as knowledge base)。例如,使用手動(dòng)或自動(dòng)生成的提示(例如,“奧巴馬出生于 __”)來(lái)查詢語(yǔ)言模型獲得答案(例如,“夏威夷”)。但是,語(yǔ)言模型的知識(shí)僅僅隱式編碼于參數(shù),使得這樣的知識(shí)庫(kù)缺乏了知識(shí)圖譜的優(yōu)良屬性,例如對(duì)知識(shí)進(jìn)行復(fù)雜查詢或是更新。這就引出了一個(gè)問(wèn)題:我們能否自動(dòng)從語(yǔ)言模型中獲取知識(shí)圖譜,從而結(jié)合兩者的優(yōu)點(diǎn),即語(yǔ)言模型的靈活性和可擴(kuò)展性,以及知識(shí)圖譜的易于查詢、可編輯性和可解釋性?


為實(shí)現(xiàn)這一目標(biāo),我們提出了一種自動(dòng)知識(shí)抽取框架,能夠從 BERT 或 RoBerta 等預(yù)訓(xùn)練語(yǔ)言模型中高效且可擴(kuò)展地提取知識(shí)圖譜,從而構(gòu)建一系列新的知識(shí)圖譜(例如 BertNet、RoBertaNet),相比于傳統(tǒng)的知識(shí)圖譜,能夠支持更廣泛和可擴(kuò)展的關(guān)系和實(shí)體。


圖片


  • 論文地址:https://arxiv.org/abs/2206.14268

  • 項(xiàng)目地址:https://github.com/tanyuqian/knowledge-harvest-from-lms

  • demo地址:https://lmnet.io/


圖片

圖1:項(xiàng)目demo的截圖,用戶可以自定義關(guān)系進(jìn)行查詢


從語(yǔ)言模型中獲取知識(shí)圖譜的框架


我們首先定義希望解決的問(wèn)題:給定用戶對(duì)于一個(gè)關(guān)系的描述,我們希望從語(yǔ)言模型中獲取該關(guān)系的實(shí)體對(duì)。在我們的框架中,關(guān)系被描述為一個(gè)帶有空槽的提示(prompt),并且通過(guò)一些示例實(shí)體 (seed entity tuple) 對(duì)進(jìn)一步消除歧義。有了這些輸入,我們的框架可以輸出實(shí)體對(duì)列表以及它們對(duì)應(yīng)的置信度(可參考圖1中demo的效果)。


兼容性分?jǐn)?shù)


在我們深入介紹抽取知識(shí)所需的兩個(gè)主要階段之前,我們先介紹提示和實(shí)體對(duì)之間的兼容性分?jǐn)?shù)。


圖片


以 BERT 為例,評(píng)分函數(shù)中的第一項(xiàng)表示將實(shí)體對(duì) (h, t) 填充到提示 p 中的空槽的預(yù)測(cè)概率。通常,這個(gè)聯(lián)合條件概率是以自回歸方式計(jì)算的。此外,我們還想確保每一步的概率不會(huì)太低,這就是對(duì)分?jǐn)?shù)第二項(xiàng)的直觀理解。一個(gè)具體的例子如圖 2 所示,其中 p=”A is the place for B”,h=”library”,t=”study”。我們還介紹了如何處理 h=“study room” 的多單詞 (multi-token) 實(shí)體。


圖片

圖2:兼容性分?jǐn)?shù)的計(jì)算示例


有了這個(gè)兼容性分?jǐn)?shù),我們接下來(lái)介紹從語(yǔ)言模型中獲取知識(shí)圖譜的流程(圖 3),它可以分為兩個(gè)主要階段:提示構(gòu)建 和 實(shí)體對(duì)搜索。


第一階段:提示構(gòu)建


語(yǔ)言模型的一個(gè)已知的問(wèn)題是它們對(duì)于提示非常敏感。有時(shí),即使措辭上的細(xì)微差別也會(huì)導(dǎo)致預(yù)測(cè)結(jié)果發(fā)生巨大變化。為此,我們希望生成初始輸入提示的多個(gè)同義改寫(xiě),并使用它們來(lái)約束語(yǔ)言模型的輸出。


在具體實(shí)現(xiàn)中,我們迭代地對(duì)實(shí)體元組和提示進(jìn)行采樣,拼裝成一個(gè)語(yǔ)句并對(duì)其進(jìn)行同義改寫(xiě)(具體來(lái)說(shuō),我們使用了GPT-3的API)。該過(guò)程如圖2的左側(cè)所示。生成的提示可能存在語(yǔ)義漂移,因此我們使用一個(gè)提示與所有示例實(shí)體對(duì)之間的平均兼容性分?jǐn)?shù)進(jìn)行加權(quán),并且在所有提示中使用 softmax進(jìn)一步歸一化權(quán)重,這樣我們就可以得到一個(gè)帶有權(quán)重的提示集合,作為對(duì)一個(gè)關(guān)系更可靠的描述。


第二階段:實(shí)體對(duì)搜索


我們?cè)诮酉聛?lái)這一階段的目標(biāo)是搜索實(shí)體對(duì)。搜出的實(shí)體對(duì)應(yīng)該與加權(quán)提示集擁有較高的兼容性。


如果直接窮舉搜索實(shí)體對(duì),搜索空間將會(huì)過(guò)于龐大。作為一種近似的方法,我們?cè)谒阉鲗?shí)體對(duì)時(shí)只考慮最小單步概率(兼容性函數(shù)的左側(cè)一項(xiàng),簡(jiǎn)寫(xiě)為MLL)而不是完整的函數(shù)。這個(gè)近似的評(píng)分函數(shù)讓我們可以在搜索時(shí)進(jìn)行高效的剪枝。


作為一個(gè)例子:當(dāng)我們想搜索100個(gè)實(shí)體對(duì)的時(shí)候,我們需要維護(hù)一個(gè)容量為100的最小堆,保存目前為止搜到的MLL最小的100個(gè)實(shí)體對(duì)。堆頂?shù)脑乜梢宰鳛榻酉聛?lái)搜索的一個(gè)閾值,因?yàn)檫@是目前搜索到的第100大的MLL。在接下來(lái)的搜索中,一旦我們發(fā)現(xiàn)在任何一步的概率低于這個(gè)閾值,我們都能立刻放棄接下來(lái)的搜索,因?yàn)榻酉聛?lái)搜到的實(shí)體的MLL都會(huì)小于這個(gè)值。如果直到完整搜索出一個(gè)實(shí)體對(duì)都沒(méi)有被剪枝,我們就彈出堆頂?shù)脑夭⑶野研滤训降膶?shí)體對(duì)的MLL推入堆。


一旦我們收集了足夠數(shù)量的實(shí)體對(duì),我們會(huì)用完整的一致性評(píng)分函數(shù)重新排序,并將其視為置信度。根據(jù)置信度,我們嘗試使用不同的截?cái)喾椒▉?lái)獲得最終的知識(shí)圖譜:(1) 50%: 取搜出實(shí)體對(duì)置信度排名前一半的。(2)base-k: 對(duì)于不同的關(guān)系,有效的實(shí)體對(duì)數(shù)量應(yīng)該是不同的。例如,對(duì)于“capital of”這個(gè)關(guān)系,正確的實(shí)體對(duì)不應(yīng)該超過(guò)200個(gè),因?yàn)槿澜鐕?guó)家的數(shù)量只有這些。我們?cè)O(shè)計(jì)了一種針對(duì)關(guān)系的截?cái)喾椒ǎ喝∨琶趉位的實(shí)體對(duì)的置信度,乘以百分之10,并且只保留置信度比這個(gè)數(shù)值更大的實(shí)體對(duì)。我們將這樣獲得的知識(shí)圖譜加上base-k的下標(biāo)。


抽取出的知識(shí)圖譜


不同于傳統(tǒng)的知識(shí)圖譜,一旦接受到新的查詢,BertNet就可以被擴(kuò)展。本質(zhì)上,BertNet的大小沒(méi)有極限。為了評(píng)價(jià)我們的框架,我們將這個(gè)框架用于ConceptNet的關(guān)系集合,以及一個(gè)作者們創(chuàng)作的新穎關(guān)系集合(例如:capable but not good at),構(gòu)建出相應(yīng)的知識(shí)圖譜。


圖片

表1:不同知識(shí)圖譜的統(tǒng)計(jì)結(jié)果


僅僅使用語(yǔ)言模型作為知識(shí)的來(lái)源,并且不使用任何訓(xùn)練數(shù)據(jù)的情況下,我們的框架可以抽取出準(zhǔn)確并且多樣的知識(shí)(表中其他知識(shí)圖譜構(gòu)建方法和我們的設(shè)置不同,因此數(shù)值無(wú)法被直接比較)。通過(guò)選取不同的截?cái)喾椒?,我們還展示了RobertaNet的大小和準(zhǔn)確率的權(quán)衡。


總結(jié)


在這項(xiàng)工作中,我們提出了一個(gè)從語(yǔ)言模型自動(dòng)抽取知識(shí)圖譜的框架。它可以處理任意用戶輸入的關(guān)系,并且以高效和可擴(kuò)展的方式進(jìn)行知識(shí)抽取。我們?cè)趦山M關(guān)系上構(gòu)建了知識(shí)圖譜,證明了語(yǔ)言模型不加以外界資源就已經(jīng)是一個(gè)非常有效的知識(shí)來(lái)源。我們的框架還可以作為對(duì)于語(yǔ)言模型的符號(hào)解釋?zhuān)瑸榉治稣Z(yǔ)言模型的知識(shí)儲(chǔ)備提供了工具。



*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉