论文浅尝 | 基于知识库的自然语言理解 01#
本文轉(zhuǎn)載自公眾號:知識工場。
? ? ? ? ??
羅康琦,上海交通大學計算機系2019屆博士,研究方向為自然語義理解和知識圖譜。2012年獲得華中科技大學軟件工程學士學位,現(xiàn)就職于京東數(shù)據(jù)科學實驗室(Data Science Lab)。他曾在AAAI,IJCAI,EMNLP等國際頂級會議上發(fā)表多篇論文。
自然語言是人類進行信息交流和知識保存的重要工具,同時也是人機交互過程中最主要的形式。因此,讓機器實現(xiàn)對自然語言的理解,是現(xiàn)階段人工智能的重要發(fā)展方向,同時也是學術(shù)界的熱門研究課題。自然界中存在的不同事物,以及事物之間的聯(lián)系已是海量級別,隨著互聯(lián)網(wǎng)中以維基百科、IMDB等數(shù)據(jù)庫為首的結(jié)構(gòu)化信息的大量積累,用于組織和維護開放領(lǐng)域中海量知識的大規(guī)模結(jié)構(gòu)化知識庫應運而生。它們以標準化的符號存儲了千萬以上的實體、以及十億以上實體之間具有的關(guān)系,成為了語義表達 的有效載體,同時也引出了一系列基于知識庫的自然語言理解研究。因此,本文針對描述客觀事實的自然語言文本,利用知識庫實現(xiàn)多個維度的語義理解。?
根據(jù)語義所體現(xiàn)的不同層次,本文從實體、關(guān)系和句子這三個層面研究自然語言理解問題。實體是語義中不可再分的元素,多個實體由關(guān)系互相連接構(gòu)成基本事實,而句子往往包含著多個關(guān)系,具有更加復雜的整體語義。具體而言:實體層面的理解體現(xiàn)為直接匹配,將文本中代表實體的短語鏈接至知識庫中的特定實體;關(guān)系層面的理解體現(xiàn)為結(jié)構(gòu)匹配,將自然語言關(guān)系轉(zhuǎn)換為由知識庫關(guān)系(謂詞)所構(gòu)建的特定語義結(jié)構(gòu);句子層面的理解則對單一關(guān)系的結(jié)構(gòu)匹配進行深入擴展,對于問句而言還體現(xiàn)為推理匹配,即根據(jù)語義結(jié)構(gòu),從知識庫中尋找問句的正確答案。對于這些粒度的自然語言理解問題,需要使用不同的方法進行語義建模。?
對于實體理解問題,其核心為計算實體短語的上下文信息與候選知識庫實體間的匹配程度。經(jīng)典的實體鏈接任務具有以下特點:候選實體數(shù)量龐大,實體短語普遍存在的一詞多義性,以及候選實體之間存在相互依賴關(guān)系。本文中,我們關(guān)注對表格文本進行跨語言的實體鏈接任務,除了上述特點以外,表格文本所具有的半結(jié)構(gòu)性,以及文本和知識庫由不同的語言所描述,這給此任務帶來了新的挑戰(zhàn)。為此,我們提出了基于神經(jīng)網(wǎng)絡(luò)和跨語言詞向量的鏈接模型,其優(yōu)勢在于:降低翻譯過程帶來的信息損失,學習表格行列方向的上下文和一致性特征,并通過聯(lián)合訓練框架提升整體鏈接質(zhì)量。在跨語言和單語言兩個場景上的實驗表明,我們的模型有效捕捉表格中實體之間的特殊聯(lián)系,同時在跨語言場景中具有穩(wěn)定而良好的效果。?
對于關(guān)系理解問題,其核心為用知識庫中的結(jié)構(gòu)描述自然語言中,一個二元關(guān)系的語義。該問題主要具有以下兩個特點:首先自然語言關(guān)系同樣存在多義性,其次關(guān)系和知識庫中的謂詞存在語義間隔,難以實現(xiàn)簡單的一一對應。基于這兩個特點,我們對自然語言關(guān)系進行了兩個粒度的語義建模。粗粒度的建模聚焦于關(guān)系的多義性,我們通過對知識庫構(gòu)建更加豐富的類型層次結(jié)構(gòu),挖掘一個二元關(guān)系的主語和賓語所具有的不同類型搭配,實驗結(jié)果表明我們的模型效果優(yōu)于傳統(tǒng)的選擇偏好模型。細粒度的建模旨在利用知識庫實現(xiàn)對關(guān)系語義的精確表達,我們致力于使用人類能理解的圖結(jié)構(gòu)描述關(guān)系語義,提出了基于規(guī)則推導的模式圖推理模型,以挖掘關(guān)系可能的復雜結(jié)構(gòu)表示,并將其運用于知識庫補全任務。實驗結(jié)果顯示,我們的模式圖推理模型不僅具有高度可解釋性,而且效果優(yōu)于其它規(guī)則推導模型和新興的知識庫向量模型。?
對于問句理解問題,我們著眼于基于知識庫的自動問答任務,即在知識庫中尋找代表答案的實體集合。由于問句包含了未知答案與其它實體的一個甚至多個關(guān)系,其語義變得更加復雜的同時,帶來了如下挑戰(zhàn):如何描述問句的復雜語義,以及如何有效度量問句和語義結(jié)構(gòu)之間的相似度。基于深度學習的語義匹配模型得到了廣泛的研究,但這些模型所適用的語義結(jié)構(gòu)存在限制,對復雜問題的回答存在瓶頸。為此,我們提出了針對復雜問題的的深度學習語義匹配模型。該模型沿用關(guān)系理解中的圖結(jié)構(gòu)表示,首先生成問句可能對應的候選查詢圖,然后利用深度神經(jīng)網(wǎng)絡(luò)學習這些查詢結(jié)構(gòu)的整體語義表示,以此捕捉問句中不同語義成分的有機結(jié)合。實驗結(jié)果表明,基于復雜查詢圖的深度學習模型在多個復雜問題和簡單問題數(shù)據(jù)集上都具有良好的性能。
綜上所述,本文從實體、關(guān)系、問句三個粒度出發(fā),研究自然語言和知識庫之間的語義理解與匹配問題。在實體理解中,我們提出了基于神經(jīng)網(wǎng)絡(luò)、跨語言詞向量以及聯(lián)合訓練的鏈接模型,并用于解決跨語言場景中對表格文本進行的實體鏈接問題。對關(guān)系和問句的語義理解,我們始終貫徹語義建模的可解釋性,使用主賓語類型搭配描述關(guān)系具有的多義性,以及使用基于知識庫的圖結(jié)構(gòu)描述關(guān)系或問句的精確語義。對于自動問答任務,我們提出的深度學習模型實現(xiàn)了對復雜圖結(jié)構(gòu)的整體建模,得以充分體現(xiàn)其特征學習能力,更有效地度量問句與復雜結(jié)構(gòu)的語義匹配程度。最后,希望本文的一系列工作能夠?qū)υ擃I(lǐng)域今后的學術(shù)研究有所幫助。?
本文主要的研究對象是自然語言中的單詞、短語以及句子。為了使機器可以像人類一樣,理解一個句子背后的含義,而不是僅僅停留在識別字面上的不同詞匯,我們需要讓機器挖掘出句子中的兩類信息,即句子里的實體(人物、地點、組織、事件等),以及實體之間的關(guān)系。考慮到自然語言描述方式的多樣性,我們需要使用標準化的數(shù)據(jù)庫作為語義理解的載體,其包含自然界中所有已知的實體,以及它們之間存在的關(guān)系,這樣的結(jié)構(gòu)化數(shù)據(jù)庫被稱為知識庫。本文研究的問題,就是將自然語言中的實體、關(guān)系以及句子的語義,映射到知識庫的過程。
1.1 研究背景?
人類的進化總是伴隨著知識的不斷積累。傳統(tǒng)的知識存儲媒介為紙質(zhì)書籍,隨著互聯(lián)網(wǎng)的發(fā)展以及分布式存儲系統(tǒng)的成熟,越來越多人類知識以電子文檔的形式進行存儲。截至2018年6月,Google搜索引擎已索引大約470億個網(wǎng)頁,考慮到大量未被索引的網(wǎng)頁以及未被電子歸檔的書籍資料,人類所擁有的知識遠不止統(tǒng)計數(shù)據(jù)所顯示的規(guī)模。并且隨著新事件的發(fā)生,新的知識也還在不斷涌入。身處信息化時代,人類和計算 機的交互變得頻繁,且交互方式呈現(xiàn)多樣化。而在這其中,自然語言一直是最重要的交互方式,主要體現(xiàn)為文本和語音的形式,與人類之間的正常交流最為接近。人工智能成為當今科研的熱門方向,由于計算機已經(jīng)擁有海量的非結(jié)構(gòu)化文本數(shù)據(jù),因此人類期望智能化的機器能夠感知并掌握人類的知識,從而更好地與人類進行自然語言交互。科幻電影中經(jīng)常安排了這樣的機器人角色:回答人類的提問,分析人類的情感,進行持續(xù)的聊天對話等等。這些訴求支撐了自然語言處理領(lǐng)域的蓬勃發(fā)展。
自然語言理解是人工智能的一個重要分支。為了衡量機器在自然語言上的智能化水平,早在 1950 年,英國科學家阿蘭·圖靈就提出了著名的思想實驗 “圖靈測試” ,即讓機器作為被測試者,僅通過文本與人類測試者對話,并說服人類自己是人而不是機器。 若機器通過了圖靈測試,則意味著其智能化已達到接近人類的水平。圖靈測試屬于開放領(lǐng)域的通用對話場景,目前人工智能水平還遠遠不能達到這樣的高度,通過含糊其辭的策略進行對話可以做到欺騙人類測試者,但這并非真正理解對話含義。?
之所以機器難以理解人類的語言,是因為自然語言本身具有很高的復雜性,主要體現(xiàn)為兩個方面。一方面,自然語言中的不同詞匯和語義之間不具有一對一關(guān)系。人類語言并非遵循某種確定的規(guī)則產(chǎn)生,而是隨著時間在不停演變,例如 “蘋果” 一詞原本僅指代一種水果,而蘋果公司的出現(xiàn),使得自然語言文本中的“蘋果”有了明顯的歧義。可見,詞匯和語義的對應來自約定俗成,并不需要滿足嚴謹?shù)膮^(qū)分度。這使得同義詞和一 詞多義成為了自然語言中的普遍現(xiàn)象。另一方面,詞匯的排列順序也在影響著語義。自然語言中存在著層次關(guān)系,多個詞匯組成短語,多個短語組成句子等等。組合而成的語義并不等于各個部分的簡單疊加,例如“深度學習”與“學習深度”兩個短語具有較大的語義差別。?
人工智能離完美的語義理解還有很長的距離,現(xiàn)階段也很難設(shè)計一套語言理解系統(tǒng),使其適用于各種不同的自然語言場景。在不同類型的文本中,描述客觀事實的自然語言文本數(shù)量龐大,以維基百科為代表的語料庫凝結(jié)了人類在各種領(lǐng)域所擁有的知識。與此同時,相比于帶有主觀信息的句子,客觀事實所具有的語義更加明確,不受個人感情色彩的影響,因此能夠更加準確地評判機器的理解能力好壞。鑒于以上兩點原因,如何讓機器更好地理解客觀事實緊密相關(guān)的自然語言信息,成為了我們的研究重心。
對于機器而言,怎樣才算理解自然語言中的客觀事實?我們以例句“蘋果于1997年收購了 NeXT 公司,喬布斯回歸并擔任臨時 CEO。” 進行闡述,這段文字講述了與蘋果公司相關(guān)的一些客觀事實。機器理解的前提,在于能從非結(jié)構(gòu)化的文本中抽取出語義信息。計算機對它的信息抽取主要包含以下兩個層次。?
淺層次的抽取,體現(xiàn)在識別句子描述的是關(guān)于哪些事物的客觀事實,不僅需要找出代表它們的短語,而且要正確對應到客觀存在的事物。例如識別出短語 “蘋果” 指的是蘋果公司,而不是水果。通常需要識別的事物為命名實體,即具體的人名、地名、組織名等等,有時也包括一些抽象概念,比如 “森林” 、“CEO” 、“物理學家” 等等。我們將這些客觀存在的具體或抽象事物統(tǒng)稱為實體。?
更深層的抽取在于,識別不同實體之間具有怎樣的關(guān)系。例如蘋果和 NeXT 之間存在著收購關(guān)系,蘋果和喬布斯之間存在任命關(guān)系等。在一個句子中,描述兩個實體之間關(guān)系通常會采用主謂賓的形式,也存在著其它形式(主系表,介賓結(jié)構(gòu)等)。為了方便論述,我們將聯(lián)系兩個實體的二元關(guān)系表示為(主語,謂語,賓語)三元組的形式,其中關(guān)系在三元組中充當謂語成分,主語和賓語則是關(guān)系的兩個參數(shù)實體。
判斷一個人的智力高低,不僅在于他見過多少實體或了解多少關(guān)系,而且在于能否將已知的事實在大腦中進行整合為知識,從而能夠舉一反三,在遇到問題時,尋找出和問題匹配的事實,對面對復雜問題的情況,還能結(jié)合多個事實進行推理回答。問句 “ NeXT 公司被誰收購?”可以直接與例句中的關(guān)系匹配,而要回答“ NeXT 公司被收購時,美國總統(tǒng)是誰?” ,則需要一定的推理能力。對于機器而言,這樣的自動問答任務既是人機交互中的重要場景,同時也是衡量句子語義理解是否智能化的有力參照。
綜上所述,針對以客觀事實為主的自然語言理解,我們從實體、關(guān)系、句子的語義理解這三個角度出發(fā),展開一系列研究。它們的共同點是,需要一種手段來整合并維護 人類的客觀知識,包括實體、概念、類型,以及聯(lián)系它們的關(guān)系等。計算機雖然存儲了海量文本,但雜亂的非結(jié)構(gòu)化文本顯然無法勝任。?
信息抽取技術(shù)直接針對非結(jié)構(gòu)化文本,從中提煉出有價值的客觀事實,組成三元組形式(??, relation ,?),本文中稱之為關(guān)系三元組,或關(guān)系實例。其中??分別代表關(guān)系 relation 的主語和賓語。例如可以從句子“ Mozart was born in Salzburg , but moved to Vienna in 1781 ”中抽取出兩個三元組( Mozart , was born in , Salzburg )以及( Mozart , moved to, Vienna )。早期的信息抽取主要針對特定領(lǐng)域的文本數(shù)據(jù),而近年來提出的開放領(lǐng)域信息抽取( Open Information Extraction,OpenIE )系統(tǒng)[1-4]則從不限定領(lǐng)域的海量文本中提取不同的二元關(guān)系。然而,關(guān)系三元組中的每一個成分為字符串,同義詞和一詞多義現(xiàn)象依然存在。為了消除歧義,計算機需要通過更加規(guī)范的方式,表示不同的實體、關(guān)系和具體的三元組,而不是只停留在字符串層面。?
對于實體的表示,維基百科是一個優(yōu)秀的載體,英文維基百科具有一千萬以上的實體(頁面),同時實體命名遵循特定規(guī)則,利用括號信息區(qū)分名字相同的實體。同時維基百科還維護了分類信息( Category ),具有相似特點的實體會被歸為同一分類。普林斯頓大學設(shè)計的 WordNet [5] 數(shù)據(jù)庫更加關(guān)注概念上的區(qū)分,其中同義詞集( Synset )是用來表示概念的基本單位,具有多義的單詞(或詞組)指向多個同義詞集,而每個同義詞 集由一系列近義詞構(gòu)成,并配有簡短文字解釋概念詞義,并且同義詞集之間包含著豐富的上下位關(guān)系。在關(guān)系方面,以 PropBank [6] 為代表的數(shù)據(jù)集以動詞分析為主,對它們的詞義進行了歸類。與 WordNet 類似,PropBank 使用同義動詞集作為詞義的基本單位, 并且對動詞的參數(shù)在語境中所扮演的角色進行標記,以此表示這些同義動詞的用法,因此PropBank 常用于語義角色標注任務中。?
以上的數(shù)據(jù)集,除維基百科以外,其余都還停留在單獨的實體、概念、關(guān)系層面,沒有維護實體的屬性值,以及實體之間的具體關(guān)系。維基百科頁面中存在大量具有特定模板的信息表格( Infobox ),以半結(jié)構(gòu)化的形式描述了實體的屬性,以及和其它實體的關(guān)系。由于維基百科面向人類讀者,半結(jié)構(gòu)化信息較難直接被機器理解。為此,一系列研究工作旨在將維基百科中的半結(jié)構(gòu)化知識進行組織,形成的結(jié)構(gòu)化數(shù)據(jù)庫包含了與實體相關(guān)的大量事實,我們稱之為知識庫(Knowledge Base),或知識圖譜(Knowledge Graph)。
具有代表性的知識庫包括 DBPedia[7],YAGO[8] 和 Freebase[9],它們皆誕生于 2007 年。DBPedia的構(gòu)建過程基于對維基中的信息表格、頁面分類、外部鏈接等半結(jié)構(gòu)化信息進行自動抽取,可以看作是最純粹的結(jié)構(gòu)化維基百科;YAGO 的主要信息同樣來自對 Infobox 內(nèi)容的自動抽取,同時將頁面分類信息與 WordNet 嚴謹?shù)母拍顚哟侮P(guān)系進行融合,構(gòu)建出代表實體類型的層次關(guān)系;由 MetaWeb 公司開發(fā)的 Freebase 集成了維基百 科、IMDb 、MusicBrainz 等多個數(shù)據(jù)庫的知識,并提供接口,允許用戶對 Freebase 的結(jié)構(gòu)化內(nèi)容進行編輯或添加新的知識,因此相比其余知識庫,Freebase 具有更大的規(guī)模。這些結(jié)構(gòu)化知識庫的共同點在于使用資源描述框架(Resource Description Framework),每一條知識都由SPO 三元組表示,即( subject , predicate , object )形式,其中 subject 和 object 為知識庫中的節(jié)點,代表著不同的實體、類型或?qū)傩灾?#xff0c;predicate 為連接不同節(jié)點的邊,代表實體間的關(guān)系,或?qū)嶓w的屬性,統(tǒng)稱為謂詞。在知識庫中,不同的節(jié)點和邊具有獨立的編號,因此不具有歧義。為了與 OpenIE 的關(guān)系三元組區(qū)分,我們將知識庫里的 SPO 結(jié)構(gòu)稱為事實三元組。這些知識庫內(nèi)的所有事實三元組構(gòu)成了龐大的圖結(jié)構(gòu),即“知識圖譜’’名稱的由來。
由于上述知識庫結(jié)構(gòu)相似,研究方法具有普適性,因此我們的工作主要基于資源最豐富的 Freebase,包含至少四千萬個不同實體,三千種以上的常用類型,六千種以上的常用謂詞,以及十億以上的事實三元組。按功能劃分,Freebase 中的事實三元組可歸為三類:描述實體和類型間層次結(jié)構(gòu)的 (實體, IsA , 類型) 和少量 (類型, subTypeOf , 類型) 三元組;描述實體間的關(guān)系的 (實體, 關(guān)系, 實體) 三元組;描述實體自身屬性的 (實體, 屬性, 屬性值) 三元組,其中屬性值為整數(shù)、浮點數(shù)、時間或字符串。Freebase 的一個縮略圖如圖1–1所示,不同的實體、類型、謂詞都有獨立的編號,例如謂詞編號 type.object.type 代表 IsA 關(guān)系,type.object.name 代表名稱屬性。同時它們都具有唯一的名稱屬性值,部分實體還具有多個別名屬性(common.topic.alias)值。例如實體 m.02_286 的名稱為“ New York City ”,具有別名“ The Big Apple ”、“ Empire City ”等;謂詞 location.location.contained_by 名稱為“Contained By”,描述了地點實體間的包含關(guān)系。Freebase 支持使用 SPARQL 語句進行結(jié)構(gòu)化查詢,以類似 SQL 的語法從圖結(jié)構(gòu)知識庫中篩選出滿足查詢條件的實體。?
圖1–1 Freebase縮略圖。
?
接下來,我們將關(guān)注在實體、關(guān)系、句子這三個遞進層面上,以知識庫作為語義載體的一些自然語言理解問題。?
首先,實體層面的語義理解體現(xiàn)為實體鏈接任務,即從自然語言文本中尋找出代表實體的短語,并匹配到知識庫中的特定實體。如同維基百科編輯者在頁面中會添加一些超鏈接文本,并指向其它實體頁面,使得讀者可以快速了解與當前頁面相關(guān)的實體信息,自動化的實體鏈接可以應用于開放領(lǐng)域的自然語言文本,從而實現(xiàn)消歧義的目標。文本輸入可以是非結(jié)構(gòu)化的文本,也可以是半結(jié)構(gòu)化形式,例如互聯(lián)網(wǎng)中存在的表格。 圖1–2展示了維基百科中關(guān)于賽車的一個頁面,其中純文本和表格中的內(nèi)容均被添加了超鏈接,指向了特定的車手、車隊等實體頁面。
圖1–2 維基百科中的實體與表格鏈接。?
其次,對于關(guān)系層面的語義理解,一個傳統(tǒng)任務為關(guān)系分類任務:給定包含兩個實體的句子,將它們之間的關(guān)系歸類至預定義的關(guān)系類別中。然而關(guān)系分類任務較難擴展到開放領(lǐng)域,一方面,關(guān)系類別增多的同時,任務數(shù)據(jù)集的標注代價顯著提升,另一方面,不同于實體匹配,知識庫謂詞和自然語言關(guān)系可能存在一定偏差,難以直接分類。在這樣的前提下,關(guān)系理解的實質(zhì)在于,如何利用知識庫的已有謂詞信息,學習目標關(guān)系語義。這引出了知識庫補全( Knowledge Base Completion)任務:由于知識庫中的事實可能存在缺失,對于其中的目標謂詞,能否推理出它和其它謂詞之間的聯(lián)系,從而自動添加新的事實。例如知識庫中,某人的國籍缺失,那么可以根據(jù)其出生地所在的國家進行推測。由于知識庫中的事實三元組和自然語言的關(guān)系三元組具有類似形式,因此目標謂詞可以從知識庫擴展到自然語言中。?
最后,對于句子的語義理解,為了能充分利用知識庫的信息,我們關(guān)注描述客觀事實的問句,通過自動問答任務衡量其語義理解能力。自動問答具有廣泛的應用場景,搜索引擎便是其中之一。傳統(tǒng)的搜索引擎工作方式依靠信息抽取相關(guān)算法,比較用戶查詢與網(wǎng)頁的相似度,主要利用詞級別的共現(xiàn)模型,如 TF-IDF [10],或詞級別的語義匹配模型,如 LSI [11],pLSA [12] 等。但對于用戶輸入的復雜問題,詞級別的匹配難以直接定位到用戶想要的答案或網(wǎng)頁。更加智能化的搜索引擎,則嘗試對問題進行推理,并根據(jù)已有的知識庫,將答案定位至已知的實體中。Google 建立了以 Freebase 為基礎(chǔ)的知識庫(Google Knowledge Graph),當用戶搜索一些名詞時,如圖1–3中,用戶搜索“george w bush” ,結(jié)果頁面右側(cè)會顯示實體的信息框,包括其屬性,以及與其關(guān)聯(lián)的其它實體 等。而如圖1–4所示,當用戶輸入較為復雜的問題 “ who was president of US when beijing olympics was held ”,搜索引擎能在結(jié)果頁面上方顯示出自動回答的結(jié)果。對比下方的傳統(tǒng)頁面搜索結(jié)果可見,精確返回答案能大大提升查詢過程的用戶體驗。?
圖1–3 搜索結(jié)果頁面的右側(cè)顯示了當前實體的信息框。?
圖1–4 搜索引擎精確返回復雜問題的答案。
實體、關(guān)系、問句的語義理解研究之間,存在著緊密的內(nèi)在關(guān)系。作為自然語言理解的最底層,實體理解是其余兩個任務的基礎(chǔ):它為關(guān)系理解提供了消歧義的三元組,也為問句理解劃定了大致的語義范圍。而問句中通常包括一至多個關(guān)系,因此問句理解可以看做關(guān)系理解的擴展,即在問句中尋找疑問詞和多個已鏈接實體間存在的不同語義。
1.2 研究現(xiàn)狀?
上一節(jié)介紹了本文關(guān)心的語義理解問題,本節(jié)中,我們延續(xù)實體、關(guān)系、問句語義理解這三部分,回顧已有的一些相關(guān)工作。?
實體鏈接的研究開始較早,Mihalcea 等人[13] 于2007年的研究是以維基百科為載體進行鏈接的鼻祖工作。對自然語言文本進行實體鏈接,主要分為兩個步驟:挖掘所有代表實體的短語,以及將短語映射至知識庫中的特定實體。短語挖掘可以通過字符串模糊匹配的方式進行收集,以保證較高的召回率。之后的映射步驟則是實體鏈接模型的重點,為了實現(xiàn)消歧義,需要利用短語所在文本的上下文特征,以及多個短語所映射的實體之間的關(guān)聯(lián)程度,對于表格形式的文本輸入,行列間實體所具有的特性也不可忽略。根據(jù)以上觀察,以特征工程為核心的機器學習模型被運用于此,涵蓋的特征主要包括基于維基內(nèi)部超鏈接統(tǒng)計的先驗概率,基于 TF-IDF 模型[14]的短語和實體的上下文相似度,基于 PMI [15]、WLN [16]等以維基共現(xiàn)頻率衡量的不同實體間的相關(guān)度,等等。考慮到特征設(shè)計耗費人力,且與特定任務高度相關(guān),更新的工作對基于深度學習的實體鏈接模型進行了研究,模型依賴神經(jīng)網(wǎng)絡(luò)建立實體和短語上下文的特征表達,并計算向量表達之間的相似度衡量短語和實體的匹配程度。以文獻[17]為代表,對于輸入文本中的短語和維基百科中的實體,模型可以關(guān)注不同粒度的上下文,利用卷積神經(jīng)網(wǎng)絡(luò)或循環(huán)神經(jīng)網(wǎng)絡(luò)對文本進行建模。同時模型可以學習維基百科或知識庫中,實體分類、類型等信息的向量表達,以此豐富實體的語義特征,例如文獻[18-20]。此外,若文本和知識庫的語言不同,則為跨語言場景的實體鏈接。通過翻譯工具可以轉(zhuǎn)化為單語言的實體鏈接,但受制于翻譯步驟的準確率,因此主要的模型使用了跨語言的詞向量技術(shù)[21],將不同語言下的單詞映射至同一連續(xù)語義空間。?
關(guān)系語義學習的研究,主要針對三元組級別,給定目標關(guān)系或謂詞,根據(jù)它所已知的三元組信息,對其語義進行建模。按照關(guān)系語義的表示方法進行劃分,主要研究可以分為規(guī)則推導和知識庫向量學習兩類。基于規(guī)則推導的模型中,二元關(guān)系或謂詞?等同于布爾函數(shù)?,對于給定目標,模型旨在推導出由其它謂詞構(gòu)成的一階邏輯表達式,單個表達式的語義具有確定性,同時人類可直接理解其語義表示,具有很高的可解釋性。早期研究以 AMIE 模型[22]為代表,挖掘具有高置信度的規(guī)則,后續(xù)的改進研 究著眼于挖掘多種可能的規(guī)則,并賦予不同權(quán)重或概率,豐富語義表達能力,例如基于 MLN 模型的文獻[23, 24],以及生成負樣本,對大量路徑形式的規(guī)則進行特征學習的 PRA 模型[25] 和 SFE 模型[26]。另一個分支為知識庫向量模型,則依據(jù)已有的大量三元組信息,學習每一個實體和謂詞的連續(xù)向量(或矩陣)表示,并通過實體和謂詞表示之間的代數(shù)運算,判斷任意一個三元組事實的置信度。具體置信度定義方式不同,ER-MLP 模型[27]基于簡單的多層神經(jīng)網(wǎng)絡(luò); RESCAL 模型[28] 基于實體向量和謂詞矩陣表示的雙線性運算;TransE 模型[29] 基于主謂賓向量之間的距離度量,并衍生出一系列改進模型[30-32]。這些方法能夠更充分地利用海量三元組信息進行建模,但是對謂詞的語義缺乏直觀解釋。
對于問句理解與推理的研究,根據(jù)知識來源和答案形式的不同,可以分為兩類任務: 基于結(jié)構(gòu)化知識,答案通常為實體、數(shù)值等簡單形式的知識庫問答(KBQA);以及基于非結(jié)構(gòu)化文檔,答案表示為自然語言文本片段的檢索式問答(IRQA)。后者不是我們的研究重點,現(xiàn)有的研究工作主要使用閱讀理解模型[33,34],從已有文檔中抽取出最適合的文本片段作為答案。與關(guān)系學習類似,根據(jù)對問句語義的表示形式,解決知識庫問答任務的方法也可分為兩類。第一類方法在相關(guān)文獻 [27,35-37] 中稱為 “基于信息抽取的方法”,它們遵循端到端問答的思路:對每個問句生成一定量候選答案后,機器學習模型用來解決二分類問題,即判斷每個<問句,候選答案>對是否正確。模型使用的特征來自于候選實體在知識庫中的信息(包括名稱,具有的類型,直接相連的謂詞,相鄰實體等)與問句中不同單詞的交互,早期模型使用特征工程,最新的研究則聚焦于利用神經(jīng)網(wǎng)絡(luò)進行特征表示學習。這類模型的優(yōu)點在于實現(xiàn)簡單、訓練數(shù)據(jù)容易獲取,但缺點在于可解釋性較差,大量抽象特征的存在,使得人類難以理解某個候選答案被分類為正確或錯誤的根本原因。第二類方法稱為語義解析( Semantic Parsing ),答案實體的選取依賴于對問句語義的結(jié)構(gòu)化建模,將其表示為知識庫中的實體、類型、謂詞組成的一階邏輯表達式。只需要將其轉(zhuǎn)換為知識庫上的結(jié)構(gòu)化查詢語言,例如 SPARQL ,即可查詢出所有滿足語義的答案,因此具有很明確的可解釋性。這類方法通常先根據(jù)問句信息,生成少量候選查詢結(jié)構(gòu),再利用機器學習算法訓練問句和查詢結(jié)構(gòu)間的語義匹配模型,因此整體效果取決于這兩個步驟的質(zhì)量。查詢結(jié)構(gòu)生成方面,可依靠 CCG [38,39]、 DCS [40,41] 等語法進行自底向上構(gòu)建,或者依賴深度優(yōu)先搜索由簡到繁生成查詢結(jié)構(gòu)[42,43],還可以基于固定模板進行生成[44,45],以犧牲靈活性為代價,換取更有針對性的語義表達。語義匹配計算方面,傳統(tǒng)機器學習方法從候選結(jié)構(gòu)的生成步驟中提取特征,并與問句進行特征組合,以實現(xiàn)模型訓練;與此同時,深度學習方法通過學習知識庫中不同實體、謂詞等向量表示,遵循 “編碼—比較” 框架,將問句和查詢結(jié)構(gòu)的語義特征映射至同一空間,并計算向量間的相似度。基于深度學習的問答模型在近幾年研究異常火熱,相關(guān)文獻 [46-50] 等在簡單語義的問答場景中不斷取得突破。但對于更加復雜的問題,這些模型并不能直接學習一個復雜查詢結(jié)構(gòu)的整體語義表達,難以充分體現(xiàn)深度學習強大的特征表示能力。
1.3 主要工作和貢獻?
本節(jié)中,我們具體介紹本文的主要工作,包括實體、關(guān)系、問句理解三方面的研究內(nèi)容,技術(shù)難點,以及我們的貢獻。
1.3.1 實體理解問題?
對于實體的理解,我們聚焦于跨語言場景下的表格實體鏈接任務,即以非英文編寫的表格作為輸入,將每個單元格對應的實體鏈接至英文知識庫。我們以該任務作為研究對象,主要有兩個動機:首先,英文知識庫規(guī)模最為龐大而全面,有助于讓不同語言的人類共同理解知識;其次,表格行列間通常存在著特定的關(guān)系,因此相比純文本中的實體鏈接,表格鏈接能更有效地幫助知識庫進行知識擴充。本文是學術(shù)界首次對該任務進行具體研究,具有以下兩個主要特點:1)短語和目標實體處于不同語言中,必須在字面相似之外,尋找候選實體收集和匹配度量的方式;2)每個單元格和目標實體間的匹配可以體現(xiàn)在多個粒度,例如單元格自身,以及其所在的行列上下文,同行列的實體之間還存在明顯的關(guān)聯(lián)性。
為了解決跨語言表格鏈接問題,我們提出了基于神經(jīng)網(wǎng)絡(luò)和跨語言詞向量的鏈接模型。該模型首先通過已有翻譯工具進行候選實體的收集,但匹配過程并不依賴唯一的翻譯結(jié)果;其次,模型利用多語言詞向量的訓練,將不同語言中的實體和短語映射至相同維度空間,實現(xiàn)最基本的匹配度量;再次,模型利用深度神經(jīng)網(wǎng)絡(luò)學習表格與目標實體間不同粒度的匹配特征,并提出了基于方差計算的一致性特征,以捕捉同列實體所具有的同質(zhì)性;最后,模型基于聯(lián)合訓練思路,以優(yōu)化整張表格的匹配程度作為目標,進一步提升整體鏈接質(zhì)量。在跨語言和單語言兩個場景上的實驗表明,我們的模型有效捕捉表格中實體之間的特殊聯(lián)系,同時在跨語言場景中具有穩(wěn)定而良好的效果。
1.3.2 關(guān)系理解問題?
對于關(guān)系的理解,我們旨在利用知識庫構(gòu)建人類可理解的結(jié)構(gòu)化表達,以描述二元關(guān)系語義,并用于下游任務中,例如關(guān)系分類和知識庫補全。對關(guān)系的建模問題,有以下兩個特點:1)與實體類似,自然語言中關(guān)系存在著多義性,即對應多種描述方式;2) 自然語言關(guān)系和知識庫謂詞存在語義間隔,由于知識庫的構(gòu)建避免了信息冗余,一個關(guān)系未必能直接映射到知識庫中的單個謂詞。
為了學習關(guān)系的語義,我們根據(jù)開放式信息抽取系統(tǒng)在海量文本中抓取的結(jié)果為輸入,獲取單個關(guān)系的多個主謂賓三元組,從而以數(shù)據(jù)驅(qū)動的方式進行語義建模,并由粗細兩個粒度進行分析。在粗粒度方向,我們關(guān)注于關(guān)系的多義性,并通過其主賓語的類型搭配來區(qū)分其不同的語義。為此,我們對知識庫中不同類型間的包含關(guān)系進行挖掘, 構(gòu)建出更加豐富的類型層次結(jié)構(gòu),并根據(jù)主賓語類型對的覆蓋率和精細度進行篩選,生成最能夠代表關(guān)系語義的類型搭配。實驗結(jié)果表明我們的模型效果優(yōu)于傳統(tǒng)的選擇偏好模型。在細粒度的方向,我們關(guān)注關(guān)系語義的精確表達,使用人類能理解的圖結(jié)構(gòu)作為語義的表達形式。我們提出了基于規(guī)則推導的模式圖推理模型,該模型從已有的關(guān)系三元組出發(fā),用知識庫中的謂詞序列連接主賓語,并在此基礎(chǔ)上搜索額外的限制,生成一系列具有 “路徑 + 分支” 形式的復雜模式圖。隨后,模型再次利用已有實例,學習候選模式圖上的概率分布,在描述關(guān)系多義性的同時,也完成了具體和寬泛模式圖之間的平 衡。我們將生成的模式圖概率分布運用于知識庫補全任務中,實驗結(jié)果顯示,我們的模式圖推理模型不僅具有高度可解釋性,而且效果優(yōu)于其它規(guī)則推導模型和新興的知識庫向量模型。
1.3.3 問句理解問題?
對于問句的理解,我們著眼于基于知識庫的自動問答任務,即對描述客觀事實的問句,從知識庫中尋找出其對應的一個或多個答案實體。對于只包含簡單語義的問題,自動問答的過程等價于將問題轉(zhuǎn)換為知識庫上的一個事實三元組。然而,人類提出的問題并不總以簡單形式呈現(xiàn),而是會在其中加入更多限制。例如問句中存在多個與答案相關(guān)的實體、類型,或是包含時間、順序信息等,對應著多條和目標答案相關(guān)的三元組,因此面向簡單問句的模型便不再奏效。在復雜語義場景中,知識庫問答具有以下挑戰(zhàn):1) 如何從問句中發(fā)現(xiàn)存在的多個關(guān)系,并組合成為一個候選語義結(jié)構(gòu);2)如何計算自然語言問句和復雜語義結(jié)構(gòu)之間的匹配程度。?
我們提出了針對復雜問句的的深度學習語義匹配模型。該模型的思路是細粒度關(guān)系理解模型的延續(xù),使用知識庫中的實體、謂詞、類型等信息作為基本元素組成圖結(jié)構(gòu), 稱其為查詢圖,用于表示問句語義。它在具有良好可解釋性的同時,可以通過結(jié)構(gòu)化查詢語句(如 SPARQL )在知識庫中找出所有滿足語義的答案實體。模型首先利用多階段候選生成方式,由簡到繁生成不同的候選查詢圖,我們已有工作進行優(yōu)化,更快速和準確地表示類型和時間限制。之后,語義匹配模型的核心是利用深度神經(jīng)網(wǎng)絡(luò)學習問句和查詢圖整體的匹配程度,我們的創(chuàng)新點在于對復雜的查詢圖進行整體編碼,生成其唯一的向量表示,從而捕捉問句中不同語義成分的組合特征。同時,我們利用依存語法分析作為對問句字面信息的補充,使模型能更有效地將問句和不同的語義成分對齊。實驗結(jié)果表明,基于復雜查詢圖的深度學習模型在多個復雜問題和簡單問題數(shù)據(jù)集上都具有良好的性能。
本章中,我們將圍繞具體任務,介紹實體、關(guān)系、問句語義理解的基礎(chǔ)知識和研究綜述。實體理解部分,我們從傳統(tǒng)的實體鏈接任務出發(fā),介紹在文本和表格中的特征工程和深度學習模型,以及用于跨語言實體鏈接任務中的跨語言詞向量模型;關(guān)系理解部分,我們關(guān)注知識庫補全任務,并介紹兩類主要的模型,分別是規(guī)則推導模型和知識庫向量模型;問句理解部分,我們將注意力放在面向客觀事實類問題的知識庫自動問答任務,同樣介紹兩類模型,即基于語義解析和基于信息抽取的模型,前者與我們的研究更加密切,本節(jié)也會重點闡述語義解析模型的多個組成部分。
2.1 實體理解:實體鏈接任務
實體鏈接任務是一類從自然語言文本中識別出代表實體的字符串,并將其映射到知識庫中特定實體的任務。人工進行的實體鏈接體現(xiàn)在維基百科的頁面編輯過程中,頁面作者會手動為部分代表實體的短語添加超鏈接,指向?qū)獙嶓w的維基頁面。這種帶有維基內(nèi)部超鏈接的短語被稱為錨文本( Anchor Text ),本文中也稱為實體短語。基于機器學習的實體鏈接可以應用于不同場合的文本輸入,背后所使用的目標知識庫也不局限于維基百科,其它常用的知識庫包括 DBPedia ,Yago 以及 Freebase 。考慮到這些知識庫均基于維基百科信息構(gòu)建而成,實體鏈接任務又被稱為“維基化”( Wiki?cation ) [13]。 以英文維基百科為例,一個典型的實體鏈接任務見下例:?
實體鏈接任務首先需要提取出句中存在的實體短語,即下劃線對應的部分。該步驟與命名實體識別任務類似,不同之處在于我們關(guān)注的實體短語除了命名實體(具體的 人名、地名、組織名、書名、電影名等)之外,還包含了維基百科中存在的概念實體, 用于指代一組相似實體。下一個步驟對每個實體短語從維基百科中抽取出候選實體集, 并定義短語和候選實體之間的匹配分數(shù),從而將短語鏈接至最相關(guān)的候選實體,例如句中的 5 個實體短語分別對應維基百科中的實體 Michael Jordan,basketball , National Basketball Association ,Chicago Bulls 以及Washington Wizards。
除了無結(jié)構(gòu)的純文本以外,互聯(lián)網(wǎng)語料中的表格也蘊含了大量與實體相關(guān)的知識。 對表格進行實體鏈接的研究起源于 Limaye 等人[51] 的工作,如圖2–1所示,除了每個單元格所對應的實體之外,得益于半結(jié)構(gòu)化的組織形式,同一表列內(nèi)的實體通常具有相同的類型,而且兩列實體之間描述了同一種關(guān)系的不同實例,這些是非結(jié)構(gòu)化文本所不具備的優(yōu)勢。因為表格帶來了豐富關(guān)系知識,表格上的實體鏈接在近年來受到了更多的關(guān)注。
圖2–1 Limaye等人提出的表格鏈接任務。
作為自然語言理解中的基本任務,實體鏈接是一系列下游任務的前置步驟。首先,開放式信息抽取抽取的主謂賓三元組均為文本表示,通常具有歧義,一些研究工作旨在對三元組中的實體短語進行鏈接,代表文獻包括[4,52],在實現(xiàn)三元組消歧的同時,結(jié)合知識庫推理出主語和賓語所代表的類型,有助于挖掘不同謂詞關(guān)系之間的語義聯(lián)系。 其次,實體鏈接與知識庫補全任務密切相關(guān),該任務的目的是向已有知識庫中補充新的事實三元組。這些新添加的三元組主要來源于兩方面:隨時間發(fā)展所產(chǎn)生的全新事實, 或基于已有知識的歸納推理。基于前者的補全依賴于信息抽取系統(tǒng)的不斷挖掘,因此對主賓語的鏈接的準確率決定了知識庫補全的效果。知識庫補全的相關(guān)內(nèi)容將在2.2節(jié)中論述。最后,對于自動問答任務,尤其是我們關(guān)注的基于知識庫的事實類自動問答任務, 其描述的是與問句中實體相關(guān)的事實,因此不管以何種方式對答案進行建模,都依賴于對已有實體的準確定位,以限定問句對應語義的搜索范圍。因此,實體鏈接的結(jié)果好壞,對這些任務的效果均有著很大程度的影響。?
實體鏈接的重點在于從多個候選中找出正確的那個實體,其本質(zhì)為消除實體級別存在的一詞多義性,例如短語 “ Michael Jordan ” 具有多個可能的候選,在維基百科中可能代表籃球明星、足球運動員、著名的機器學習教授,甚至更多不那么有名的人。在缺乏上下文信息的情況下,很難進行準確的鏈接。因此,一個良好的實體鏈接模型,相關(guān)性分數(shù)需要考慮多個因素,包括實體本身的先驗知識,實體與短語的匹配程度,以及實體與短語所在上下文的契合度。?
基于特征工程的方式,其信息來源主要為維基百科上的統(tǒng)計數(shù)據(jù)。隨著深度學習的發(fā)展,實體鏈接的研究將重心放在用表示學習替代或改良傳統(tǒng)的特征工程方法。得益于也文本的向量表示技術(shù),以及神經(jīng)網(wǎng)絡(luò)的特征學習能力,深度學習方法通過計算文本、 實體的向量作為其語義表達,并利用高維空間的相似度衡量短語和候選實體之間的相關(guān)性,在效果上也取得了不錯的提升。接下來的幾個小節(jié)主要介紹基于特征工程和深度學習的實體鏈接模型,并單獨介紹用于跨語言鏈接場景中的跨語言詞向量技術(shù)。
2.1.1 基于特征工程的實體鏈接?
基于特征工程的實體鏈接方法,較為經(jīng)典的工作包括文獻 [15, 16, 53-55]。這類方法的共性在于用預定義好的函數(shù)或概率值,描述候選實體與實體短語及其上下文之間的特征,通過學習特征的帶權(quán)相加計算最終的匹配度。?
在這類方法中,一個候選實體所具有的特征可以分為三類:先驗特征,上下文語義特征,以及與句中其它實體的關(guān)聯(lián)特征。先驗特征與短語所處的文本無關(guān),僅基于短語與候選實體在維基百科中的統(tǒng)計信息,主要體現(xiàn)為短語所在錨文本鏈接至該實體的概率,以及實體出現(xiàn)在不同維基頁面中的概率。上下文語義特征關(guān)注文本及目標實體的語義近似程度,利用詞袋模型( Bag-of-Words )將短語的上下文以及目標實體的維基頁面分別轉(zhuǎn)化為向量形式,通過 TF-IDF 得到不同詞語的重要性,并用向量間的相似度代表語義匹配程度。實體間的關(guān)聯(lián)特征體現(xiàn)在不同短語所對應的實體之間,它們維基百科頁面的相關(guān)性有助于實體鏈接的判斷。在維基百科中,若兩個實體同時指向的頁面較多, 或同時指向這兩個實體頁面的其它實體較多,則它們具有較高的相關(guān)度。常用的計算方式主要為點對點互信息( PMI )[15] 或基于谷歌距離的維基鏈接度量( WLM )[16]。其它的可選方式包括 Jaccard 相似度,以及具有非對稱形式的條件概率。?
對于實體鏈接模型的訓練方式,若不同的實體短語之間互相獨立,那么訓練過程是一個簡單的監(jiān)督學習問題,即判斷每一個<短語,實體>對的正確性。考慮到每個短語僅對應唯一的正樣本,其余所有候選實體均為負樣本,為了保持正負樣本的平衡,一般采用 Ranking SVM [56] 或最大間隔( Max Margin )模型進行訓練。這樣的做法稱為局部優(yōu)化,顯然忽略了候選實體之間的關(guān)聯(lián)。為了能捕捉這一特征,Ratinov 等人[15] 首先利用 局部優(yōu)化方案,對每個實體短語進行鏈接,得到具有一定質(zhì)量的次優(yōu)解,然后根據(jù)次優(yōu)解計算候選實體與其它實體的關(guān)聯(lián)特征,用于完整的模型訓練。Shen 等人[16] 對兩個實體之間的相關(guān)度計算進行了類似的簡化,將單個實體與其余短語的所有候選分別進行相關(guān)度計算,并選取最大值作為特征。Bhagavatula 等人[57] 通過迭代的方式不斷對每個短語預測的實體進行更改,實體間的相關(guān)度特征也隨著不斷變化,更加靠近真實情況。以 上這些方法通過簡化特征或迭代預測的方式,使得訓練過程得以保持對每一個 < 短語, 實體>進行打分的形式。?
與之相對的全局優(yōu)化方法則將整個文本以及所有不同短語的候選實體整合在一個目標函數(shù)中,因此可以對更加復雜的相關(guān)性進行建模。Ho?art 等人[53] 在模型中構(gòu)建了一個包含所有實體短語以及候選實體的無向圖,不同的特征值體現(xiàn)為圖中具有不同權(quán)重的邊,該模型通過貪心算法尋找圖中具有最大權(quán)重的稠密子圖,使得每一個短語在子圖中與唯一的一個實體相連。Luo 等人[55] 利用條件隨機場( CRF )對實體鏈接與命名實體識別任務( NER )同時建模,使實體鏈接過程能夠利用 NER 的一系列特征。Yang 等人[54] 提出的 S-MART 模型考慮到了多個實體短語不能重疊的限制,屬于全局優(yōu)化的范疇,利用前向后向算法對所有短語進行鏈接,保證在多個短語重疊的情況下,最多一個短語指向具體的實體,其余均指向空實體。同時,該模型通過迭代決策樹( MART,即 GBDT )對匹配度進行建模, MART 在工業(yè)界被廣泛使用,具有非常良好的效果。
2.1.2 基于深度學習的實體鏈接?
傳統(tǒng)的特征工程方法需要人工干預,尋找更有效的特征還需要花費更多的時間。最新的深度學習研究更加關(guān)注利用神經(jīng)網(wǎng)絡(luò)的表示學習能力,自動挖掘文本和實體的隱藏特征,形成各自的抽象表示,在避免特征工程耗費人力的同時,還能學習人類難以直接描述的高層特征。在自然語言處理領(lǐng)域中,詞向量技術(shù)[58-60] 為深度學習模型的基礎(chǔ)。 以 Skip-Gram 和 CBOW [60]為代表的詞向量模型,通過半監(jiān)督方式從純文本語料中構(gòu)建訓練數(shù)據(jù),根據(jù)上下文單詞預測、詞序列正確性預測等任務,學習每個單詞的向量表達, 對應連續(xù)語義空間中的不同坐標點。相似單詞在語料庫中具有接近的上下文,因此在連續(xù)空間中位置更加接近。由于句子和段落都是不同單詞的特定組合,因此它們的抽象表示主要通過神經(jīng)網(wǎng)絡(luò)對詞向量進行計算而得,常見的方法包括卷積神經(jīng)網(wǎng)絡(luò)[61],循環(huán)神經(jīng)網(wǎng)絡(luò)[62] 以及具有注意力機制[63] 的模型變種。?
基于深度學習的實體鏈接模型包括文獻[17-19,64],它們首先通過特定的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),計算出實體短語所在的上下文表示,以及候選實體的表示。之后通過定義向量之間的相似度函數(shù)作為匹配分數(shù)。而這些模型之間的區(qū)別,主要在于表示實體或短語的信息來源和編碼粒度。?
Francis-Landau 等人[17]使用了以卷積神經(jīng)網(wǎng)絡(luò)為主體的神經(jīng)網(wǎng)絡(luò)進行實體鏈接。如圖2–2所示,文檔中的一個實體短語對應著三種上下文:短語自身、短語所在句子、短語所在段落。相似地,一個候選實體也對應兩種上下文:實體的名稱,以及對應維基頁面中的所有段落。將它們輸入至不同參數(shù)的卷積神經(jīng)網(wǎng)絡(luò),便可得到短語和實體在多個不同粒度的上下文向量表示。通過兩兩計算相似度的方式,即可得到6個不同粒度組合的語義相似度。最后結(jié)合已有的人工特征,通過邏輯回歸層得到最終匹配度。
圖2–2 基于多粒度卷積神經(jīng)網(wǎng)絡(luò)的實體鏈接模型。
Sun 等人[18] 的模型對不同的上下文信息采用了不一樣的網(wǎng)絡(luò)結(jié)構(gòu)。如圖2–3所示, 對短語建模的信息包括短語自身,以及去除自身后的句子兩部分,而實體方面,除了利用本身名稱之外,還使用了它在維基百科中的分類信息,用這類人工提煉的知識補充實體的表示。對句子的表示學習依然使用卷積神經(jīng)網(wǎng)絡(luò),其余三種信息由于長度較短,均直接使用了詞向量平均的方式得到向量表達。進一步,該模型利用較為復雜的神經(jīng)張量層將各部分向量結(jié)合,分別得到實體和短語的整體表達。類似的方法還有文獻[19],對實體的維基分類信息進行表示學習,通過雙向循環(huán)神經(jīng)網(wǎng)絡(luò)對短語所在句子進行編碼。 同時模型定義了不同信息之間的多種損失函數(shù),對訓練數(shù)據(jù)的利用更加充分。
圖2–3 基于神經(jīng)張量層的鏈接模型。
此外,知識庫向量學習技術(shù)[29] 也被用于實體鏈接任務中。知識庫向量學習與詞向量學習類似,以大量事實三元組作為訓練數(shù)據(jù),學習每個實體的向量表示,使得相近語義的實體具有相近的向量。Fang 等人[64] 提出的鏈接模型基于知識庫向量與詞向量的融合:通過實體與短語互相替代的方式,定義了基于三元組以及共現(xiàn)詞對的目標函數(shù),促使實體與其短語的向量盡可能一致,因此所有向量表示被映射到同一個高維語義空間中。融合的優(yōu)勢在于實體和單詞之間直接可比,通過距離度量函數(shù)計算候選實體與短語上下文中不同詞的距離,并以此作為鏈接模型的特征。
2.1.3 跨語言詞向量?
上一節(jié)的論述中提到了詞向量模型,用于學習詞匯的連續(xù)語義表示,但僅局限于單一語言。對于涉及多個語言的任務,難點在于如何實現(xiàn)語義的跨語言過渡。為了解決此問題,跨語言詞向量模型(Cross-Lingual Embedding Model )旨在消除單詞語義表示對語言的依賴,將不同語言的向量表示映射至同一連續(xù)空間,并依舊保持相似語義單詞更加接近的特性,以此實現(xiàn)語義遷移。例如圖2–4展示了一個英語和德語之間的共享語義 空間,可以清晰地識別出兩種語言間的許多組翻譯詞對。?
圖2–4 英語和德語間的跨語言詞向量例子。
跨語言詞向量的訓練,需要依賴平行語料庫用于給模型提供語義對齊信號,不同的訓練方式區(qū)別在于平行語料的類型不同,例如單詞級別[60,65,66]、句子級別[67,68]、文檔級別[69] 的對齊。利用單詞級別對齊進行跨語言詞向量訓練的工作最為普遍,訓練數(shù)據(jù)主要來自于雙語或多語詞典中抽取出的高質(zhì)量翻譯詞對。以此為例,對于源語言??和目標語言?,模型的損失函數(shù)??由三部分組成:?
?(2–1)?
其中,??代表各自語言上進行單語言詞向量訓練的損失,可直接使用 CBOW 等已有模型進行計算,而??為正則項,對應單詞對齊的損失。
對于??的定義,相關(guān)文獻進行了不同的嘗試。Mikolov 等人[60] 發(fā)現(xiàn),在不同語言中,多個單詞的向量表達之間,幾何關(guān)系較為相似,例如英語和西班牙語中,表示數(shù)字的單詞之間的相對位置幾乎一致,表示動物的單詞也有類似特性。基于以上觀察,該工作提出的模型使用了線性變換的方案,訓練轉(zhuǎn)移矩陣?(或稱投影矩陣),使得源語言詞向量??經(jīng)過 ?投影后,和對齊的目標語言詞向量??的歐氏距離平方(即均方誤差)盡可能小:?
(2-2)
基于線性映射的跨語言詞向量模型具有一些變種,例如文獻 [70, 71] 限制轉(zhuǎn)移矩陣 為單位正交陣,以保證映射后的詞向量維持單位長度,Artetxe 等人[72] 指出,對于模型效果而言,轉(zhuǎn)移矩陣正交化比向量正則化更加重要。Lazaridou 等人[66] 對 的定義 使用了最大間隔( Max Margin )損失來代替均方誤差損失,即不追求??與 絕對 距離盡可能小,而是讓 比其它任何不相關(guān)單詞都更加接近 ,從而避免跨語言詞 向量出現(xiàn)過多中樞詞的現(xiàn)象。Faruqui 等人[73] 利用典型相關(guān)分析( Canonical Correlation Analysis , CCA ) [74]進行詞向量訓練。CCA 同為線性投影方式,不同之處在于,CCA 對兩 個語言分別學習一個線性變換矩陣,目標是盡可能降低映射后每個翻譯詞對的互協(xié)方差分值。
此外,跨語言詞向量的訓練還可對于通過句子或文檔級別的平行語料進行跨語言詞向量的訓練,由于不是本文的研究重點,故不展開論述。跨語言詞向量能夠應用在多種任務中,例如文檔分類[65]、詞性標注[71]、命名實體識別[75]、機器翻譯[76] 等,其帶來的知識遷移具有很高的實用性。對于訓練集和測試集為不同語言的任務,跨語言詞向量能實現(xiàn)知識在不同語言上的遷移;對于類似機器翻譯、跨語言實體鏈接等輸入和輸出為不同語言的任務,預訓練好的跨語言詞向量能夠作為特定任務模型的訓練起點,消除語義的間隔,從而提升整體效果。
2.2 關(guān)系理解:知識庫補全任務?
現(xiàn)有的知識庫具包含了龐大數(shù)量的實體和事實,但其中的內(nèi)容仍然不夠完全,尤其是存在大量的長尾實體,并沒有多少事實與之相關(guān)。因此,知識庫補全任務( Knowledge Base Completion, KBC )的目的,是向已有知識庫中添加缺失的事實三元組。這些新增的三元組中,無論是謂詞還是它的兩個參數(shù)實體和,都已存在于知識庫中。換言之,新增的事實并不會給知識庫帶來額外的節(jié)點,或是從沒見過的邊,而是讓知識庫的圖結(jié)構(gòu)更加稠密。?
新增事實三元組(尤其是參數(shù)實體)的獲取方式通常有兩種。第一種來源為經(jīng)過了實體鏈接過后的外部文本,純文本或表格文本均可稱為來源。對于純文本,當在句中定位兩個參數(shù)實體后,句子剩下的部分成為了描述實體間關(guān)系的上下文。此時即可依據(jù)上下文信息來預測對應的知識庫謂詞,即等價于關(guān)系分類問題,相關(guān)研究包括詞級別卷積神經(jīng)網(wǎng)絡(luò)[61] 以及依存語法路徑上循環(huán)神經(jīng)網(wǎng)絡(luò)[62]。對于表格文本,知識庫補全關(guān)注于表格的兩列之間,利用表列所包含的實體,判斷兩列之間的關(guān)系是否與知識庫中特定謂詞對應,實現(xiàn)可能的大批量事實補全。例如圖2–1,Title 和Author 列之間的關(guān)系被映射到 YAGO 中的謂詞。?
第二種來源不涉及到任何知識庫外的信息,新增三元組來自于知識庫的內(nèi)部挖掘, 通過尋找不同謂詞之間的關(guān)聯(lián),推理出可能缺失的事實。例如1.1節(jié)提到的例子,“某人的國籍缺失,可以根據(jù)其出生地所在的國家進行推測” ,人類可以通過這樣的方式進行知識的手動補充,正是因為掌握了國籍、出生地、地點被包含這三個謂詞之間的關(guān)聯(lián)。 這條路線不受知識庫外信息的干擾,因此是我們關(guān)注的研究點。?
學術(shù)界已有工作在此場景上研究知識庫補全的解決方案,并提出了相關(guān)的 KBC 數(shù)據(jù)集,例如 FB15k [29]和 WN18 [77],分別是 Freebase 和WordNet 的子集。對于知識庫補全模型的測評,主要通過主賓語預測( Link Prediction )以及三元組分類( Triple Classi?cation )這兩個子任務來進行。前者為三元組或預測缺失的主語或賓語,后者則判斷給定的是否為正確事實。兩者雖然形式不同,但都需要計算三元組的置信分:。?
解決知識庫補全的方法主要分為兩類。第一類基于規(guī)則推導,用邏輯表達式描述實體間存在特定謂詞時,所需要滿足的特定規(guī)則;第二類基于知識庫向量,學習所有實體、謂詞的連續(xù)特征表示,并挖掘三元組各部分特征表示之間存在的深層代數(shù)關(guān)系。下面將分別介紹這兩種方法。
2.2.1 基于規(guī)則推導的模型?
基于規(guī)則推導的模型旨在使用人類可以直接理解的規(guī)則形式,來描述不同謂詞之間的聯(lián)系,即如果和之間滿足特定的條件,則推理出三元組成立。為方便論述,我們將三元組以布爾表達式表示,若對應三元組存在于知識庫中,則表達式為真,否則表達式為假。文獻[25]以一個簡單的推導規(guī)則為例:若已知某運動員為球隊效力,以及球隊所處聯(lián)盟,則可以推導出運動員所參與的體育聯(lián)盟。該規(guī)則可以通過一階邏輯表達式進行形式化描述:?
(2-3)
其中 E 表示知識庫實體集合。規(guī)則的左側(cè)部分,使用的兩個謂詞實現(xiàn)了主語到賓語 c 的連接,且不包含多余的布爾表達式,因此這條規(guī)則表現(xiàn)為由謂詞序列構(gòu)成的路徑。對于“依靠出生地推測國籍”的規(guī)則,我們可以形式化為以下邏輯表達式:?
(2-4)
其中謂詞序列??為連接主賓語的路徑,而謂詞使得賓語 c 還需要滿足額外的限制條件,因此這條規(guī)則具有比路徑更加復雜的結(jié)構(gòu)。?
利用單個推導規(guī)則進行知識庫補全存在兩個局限:首先,規(guī)則本身不一定完全正確,限制條件過于寬泛的規(guī)則可能打來錯誤的事實;其次,單個規(guī)則的覆蓋率較低,能夠補全的知識有限。針對這兩個局限,已有的規(guī)則推導工作都致力于從知識庫中挖掘目標謂詞的多條規(guī)則,并學習不同規(guī)則的重要性,以實現(xiàn)更健壯的知識庫補全。?
Lao 等人提出的 PRA 模型[78] 實現(xiàn)了規(guī)則的挖掘和學習。對于目標謂詞 ,模型首先利用謂詞已有的三元組作為訓練數(shù)據(jù),在知識庫中尋找所有能連通和的謂詞序列,形成了多種路徑形式規(guī)則。模型利用邏輯回歸實現(xiàn)規(guī)則權(quán)重的訓練,以及對新三元組是否為真的預測。每一條挖掘的規(guī)則類比為一個特征,對應的特征值為路徑隨機游走概率,即從主語出發(fā),沿規(guī)則的謂詞序列隨意跳轉(zhuǎn),最后到達的概率。由于知識庫中的謂詞可能代表一對多關(guān)系,因此隨機游走概率值會小于1,甚至為 0(無法通過當前規(guī)則連通)。基于此,PRA 模型能夠快速抽取大量路徑規(guī)則,并利用已知三元組在規(guī)則上隨機游走概率實現(xiàn)權(quán)重訓練。
一些研究工作對 PRA 模型進行了擴展。文獻 [25] 對挖掘的路徑規(guī)則進行了限制,要求規(guī)則至少要適用于訓練數(shù)據(jù)中一定比例的主語,并對計算隨機游走概率的采樣方式進行了優(yōu)化,這兩個擴展都是基于模型性能優(yōu)化為考量。Gardner 等人提出了SFE模型[26],它在 PRA 模型基礎(chǔ)上進行了兩項改進:首先,模型將作為特征值的隨機游走概率替換為0/1特征,即只關(guān)心是否連通,在大幅度提升運行速度的同時,對結(jié)果沒有顯著影響;其次,模型引入不同于路徑規(guī)則的其它特征,例如提取路徑中的謂詞bigram,或由主語出發(fā)卻不指向賓語的單邊特征等,擴充特征集合以提升知識庫補全效果。Wang 等人提出了 CPRA 模型[79],主要針對具有相似謂詞的規(guī)則推導優(yōu)化。該模型通過層次聚類識別出具有相似語義的知識庫謂詞集合,然后對每個集合內(nèi)的謂詞采用多任務學習框架,共享挖掘的規(guī)則特征和部分耦合參數(shù),使模型能夠捕捉相似謂詞之間的共性,實現(xiàn)隱式的訓練數(shù)據(jù)共享。
2.2.2 基于知識庫向量的模型?
與詞向量模型類似,知識庫向量的模型旨在學習一個知識庫中的實體、謂詞等元素在連續(xù)空間的特征表達,以完成一系列下游任務。具體在知識庫補全任務中,三元組置信分的計算并不依賴自動挖掘的推導規(guī)則,而是來自主謂賓三者的連續(xù)特征表達在不同維度上的交互。詞向量模型依靠大規(guī)模的純文本語料,構(gòu)建上下文單詞預測任務來完成訓練[60],相比之下,知識庫向量模型的訓練過程更為直觀:利用知識庫已有三元組作為訓練數(shù)據(jù)正樣本,并自動生成不存在的三元組作為負樣本,計算三元組置信分進行訓練,而這也恰好與知識庫補全任務的目標一致。?
知識庫向量模型的優(yōu)點在于所有謂詞共同訓練,更有效地利用訓練數(shù)據(jù),并且能在連續(xù)空間中體現(xiàn)不同謂詞的相似性,但相應地,其缺點在于可解釋性較弱。不同的知識庫向量模型對實體和謂詞的特征表示具有不同的形式,特征交互的方式也不盡相同,下 面主要介紹幾個具有代表性的模型。?
由 Nickel 等人提出的 RESCAL 模型[28] 是一個基礎(chǔ)的知識庫向量模型,模型對三元組置信分(簡寫為 S)的定義,基于主賓語實體特征表示的在不同維度間的兩兩交互:?
(2-5)
其中和為對應實體向量,維度為。為謂詞的權(quán)重矩陣,其中體現(xiàn)了實體向量的第和維特征對于第個謂詞的交互重要性。由于 RESCAL 使用矩陣連乘形式捕捉實體向量之間的交互,因此也被稱為雙線性模型。如圖2–5a所示, RESCAL 模型可表示為雙層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),首先通過張量積( Tensor Product )構(gòu)建實體對 (?, ?) 的組合特征,再利用與特定謂詞相關(guān)的參數(shù)作為權(quán)重,得到三元組最終的置信分。 RESCAL 模型學習的實體特征表示能夠捕捉不同實體間的語義相似性,換言之,若兩個實體可以通過相似的謂詞連接至相似的其它實體,那么它們的特征表達也更加相近。
圖2–5 多種知識庫向量模型示意圖。
RESCAL 模型存在的一個問題在于參數(shù)量過大,每一個謂詞對應參數(shù)量為, 對于擁有大量謂詞的知識庫而言,會帶來可擴展性的問題。一些后續(xù)研究對此進行了改進。Socher 等人以及 Dong 等人分別提出了 E-MLP [81] 和 ER-MLP 模型[27]。圖2–5b為 ER-MLP 的示意圖,均由兩層前向網(wǎng)絡(luò)構(gòu)成,第一層用于學習三元組的組合特征表示, 第二層則通過組合特征輸出置信分。 E-MLP 結(jié)構(gòu)較為類似,故此處不專門畫圖。兩個模型的置信分計算如下:
(2-6)
其中,為非線性激活函數(shù)。對比 RESCAL 模型,E-MLP 的最大不同在于可以通過調(diào)整矩陣來學習實體間不同維度特征的交互,從而優(yōu)化實體對 (, ) 的組合特征表示,并大幅度減少參數(shù)數(shù)量。E-MLP 模型中,不同的謂詞依然對應不同的參數(shù),而 ER-MLP 模型將謂詞也映射為向量表示,與兩實體共同作為第一層的輸入,因此模型的參數(shù) C 與均與特定謂詞無關(guān)。兩個模型依然能夠讓語義相似的實體映射至連續(xù)空間的相近位置。?
Nickel 等人提出了 HOLE 模型[82],該模型利用循環(huán)相關(guān)運算( Circular Correlation )巧妙地代替了 RESCAL 中的張量積操作:
(2-7)
可以從公式中看出,循環(huán)相關(guān)運算等同于將張量積的結(jié)果進行了分組,模型通過對實體特征表示的學習,讓具有相似語義的特征交互歸為同一組,共享同一個權(quán)重。因此 HOLE 的優(yōu)勢在于將 RESCAL 中的二維矩陣參數(shù)降低至一維,同時盡可能保留了特征交互的表示能力,并且在實驗中效果優(yōu)于 RESCAL 和 ER-MLP 模型。
此外,Socher 等人還提出了較復雜的神經(jīng)張量網(wǎng)絡(luò)( Neural Tensor Networks,NTN ) 模型[81],可以看做是 RESCAL 和 E-MLP 的組合體,對實體對(,)構(gòu)建的組合特征表達同時包括雙線性和前向網(wǎng)絡(luò)特征,但模型參數(shù)量也因此更加龐大,在小數(shù)據(jù)集上更容易出現(xiàn)過擬合。?
另一類知識庫向量模型是以 TransE 為典型的被稱作隱距離模型。相比 RESCAL 等模型依照神經(jīng)網(wǎng)絡(luò)構(gòu)建的置信分函數(shù),隱距離模型對置信分的計算則與距離度量直接相關(guān)。這與 2.1.3 節(jié)介紹的跨語言詞向量訓練有著相似之處,源語言詞向量經(jīng)過轉(zhuǎn)換后,與翻譯后的詞向量盡可能相近。而對于知識庫向量模型,由于三元組中還有謂詞的存在, 因此模型訓練的實質(zhì),是學習主賓語實體向量在特定謂詞下的變換方式,對變換之后的向量表示進行距離度量,距離越近,則置信分越高。為了和相關(guān)工作統(tǒng)一,此處用( ,, )表示一個事實三元組。
Bordes 等人提出的 SE 模型[83] 較為基本,度量實體和經(jīng)矩陣變換后的距離:
(2-8)
其中??為距離度量函數(shù),例如 L1 距離或歐氏距離。謂詞?對應兩個參數(shù)矩陣,分別映射主語和賓語實體的向量表示至同一空間。為了降低參數(shù)個數(shù),Bordes 等人提出了 TransE 模型[29],這也是后續(xù)很多改進模型的起點。受到詞向量之間代數(shù)運算的啟發(fā),例如[84],不同詞之間的關(guān)系體現(xiàn)在了它們詞向量的位置偏移中,因此如圖2–5c所示,TransE 模型共享了實體與謂詞的特征表示,利用在主語實體在 同一空間中的平移變換,代替更加復雜的矩陣變換:?
(2-9)
TransE 模型設(shè)計簡單、容易實現(xiàn),并且具有訓練速度快、可擴展性高等優(yōu)點,但是對于知識庫中存在的一對多或多對一的謂詞不友好,例如固定主謂,TransE 無法有效區(qū)分出多個匹配的賓語實體。為此,TransH 模型[30] 嘗試通過超平面投影來解決此問題, 公式定義如下:
(2-10)
如圖2–5d所示,TransH 首先把和的向量表示均投影到連續(xù)空間中,謂詞對應的超平面上(為單位法向量),并學習謂詞向量表示,在超平面上沿用 TransE 的度量。 因此,TransH 具有更高的靈活度來應對一對多或多對一謂詞,同時依然保有 TransE 可 擴展性高的特點。TransR模型[31]同樣嘗試解決一對多謂詞的問題,類似于 SE 和 TransE 的組合體,利用投影矩陣將實體表示轉(zhuǎn)移至新的空間后,再進行基于平移的距離度 量。因此 TransR 模型中,實體和謂詞的特征表達并不共享同一個語義空間,這與 TransE 和 TransH 模型均不同:?
(2-11)
此外,還有其它 TransE 模型的改進工作,包括體現(xiàn)距離度量在不同特征維度間差異的TransA [85],生成謂詞多個表示以解決一對多問題的TransG [32] 等,這里不再展開討論。
2.3 問句理解:知識庫自動問答任務?
自動問答任務是一類以自然語言問句為輸入,并自動給出對應答案的任務。基于知識庫的自動問答( Knowledge Base Question Answering, KBQA )是其中的一個熱門研究方向,也是本文重點關(guān)注的問題。在此問答任務中,輸入問句為來自開放領(lǐng)域的事實類問句( Factoid Question ),即問句本身描述的是與某些特定實體相關(guān)的客觀事實,對應的答案通常表示為知識庫中的實體、時間、數(shù)值等簡單形式,因此類似“how”、“why”等以完整句子作為答案,或事實涉及到主觀判斷的問題,不在任務的考慮范圍之內(nèi)。以一個簡單的英文問句為例,問句“what state borders texas?” 描述了與德克薩斯州相關(guān)的事實, 其答案有多個,包括New Mexico,Oklahoma,Arkansas,以及 Louisiana 四個實體。
對于知識庫問答任務,使用的外部信息顯然為結(jié)構(gòu)化知識庫。正確答案的獲取依賴于問答模型對問句整體語義的理解:一方面準確定位問句中出現(xiàn)的相關(guān)實體,并鏈接至知識庫;另一方面根據(jù)問句信息,推理出未知答案與相關(guān)實體在知識庫中具有的關(guān)系。前者涉及到實體鏈接技術(shù),后者體現(xiàn)了問句與知識庫的語義匹配,也是問答模型的核心。為了衡量問答模型對不同類型問題的效果,學術(shù)界已提出了大量知識庫問答數(shù)據(jù)集,例如對問句進行結(jié)構(gòu)化語義標注的 QALD [86] 和 Free917 [38],以及具有更大規(guī)模問答數(shù)據(jù)量的 WebQuestions [40] 和 SimpleQuestions [47] 等。?
與知識庫補全任務類似,根據(jù)問句語義的表示形式進行劃分,知識庫問答模型大致可以分為兩類,即基于語義解析( Semantic Parsing )和基于信息抽取( Information Retrieval )的模型,下面將分別介紹研究。
2.3.1 基于語義解析的問答模型?
解釋語義解析技術(shù)之前,我們先討論人類對問題的思考方式。對于人類來說,問句 “what state borders texas” 包含了兩個與正確答案相關(guān)的線索:1) 答案是一個(美國的)州;2)答案與德克薩斯州相鄰接。由于答案未知,因此每一個線索都對應著一個具有變量參數(shù)的事實三元組。語義解析技術(shù)的目的,就是用存在于知識庫上的實體和謂詞,對這些線索進行結(jié)構(gòu)化表示。根據(jù)這兩條線索,原問題的答案集合可表示為一階邏輯表達式:?
(2-12)
?
其中代表未知答案實體,表達式中的為真,當且僅當三元組存在于知識庫中。對于機器而言,得到邏輯表達式之后,將其翻譯為知識庫上的查詢語句,即可直接得到所有滿足語義的答案,這些答案彼此具有完全一致的特征。
由此可見,基于語義解析的自動問答模型,實質(zhì)是尋找正確的語義結(jié)構(gòu)化表示,即判斷<問題,結(jié)構(gòu)化語義>的匹配程度,而不僅僅尋找一個答案實體。相關(guān)工作[39,40, 42,43]的研究重點在于,如何由句子生成知識庫上的結(jié)構(gòu)化語義表示,以及如何對問題和語義結(jié)構(gòu)的匹配程度進行建模。
2.3.1.1 結(jié)構(gòu)化語義生成方法?
仍以 “what state borders texas” 為例,不同研究工作中的結(jié)構(gòu)化語義形式并不相同, 但本質(zhì)都為公式2–12所描述的邏輯表達式。圖2–6列出了一些典型工作生成的解析結(jié)構(gòu)。?
圖2–6 例句“whatstateborderstexas”的多種解析結(jié)構(gòu)。
早期的語義解析模型[38,87,88] 使用概率化組合文法( Probabilistic Combinatory CategorialGrammar,PCCG )生成語義解析樹。該方法與語法解析中的概率化上下文無關(guān)文 法( Probabilistic Context-FreeGrammar,PCFG )相似,根據(jù)訓練數(shù)據(jù)學習文法中不同生 成式規(guī)則的概率值,并自底向上推理出每個句子最可能生成的成分解析樹( Constituency Parsing Tree )。圖2–6a為例句的成分解析樹,描述了整句的語法結(jié)構(gòu),并標出了不同短語在句中的成分。通過 PCCG 生成的語義解析樹如圖2–6b所示,PCCG 的生成式規(guī)則中不僅具有代表語法的成分信息,同時還包含代表語義的 λ 表達式,因此不同成分按照語 法規(guī)則組合的過程中,各自 λ 表達式也在進行拼接,從而得到對應整句話語義的邏輯表示。PCCG 語法具有很強的語義表示能力,但由于生成式規(guī)則中涉及到不同的 λ 表達式,同時訓練數(shù)據(jù)匱乏,使得模型的訓練具有難度。
Liang 在 2013 年提出的 λ-DCS [89] 旨在以更加簡單的概念和流程,將問句轉(zhuǎn)換為 Freebase 上的語義解析樹。如圖2–6c所示,生成過程依然是自底向上模式,葉節(jié)點(單詞或詞組)對應 Freebase 中的實體、類型或謂詞,但不再具有顯式且復雜的 λ 表達式。 λ-DCS定義了節(jié)點組合過程的有限種語義合并方式,包括連接、交集、并集甚至更加高階的最值、計數(shù)等操作,使得與 PCCG 相比,生成的語義解析樹在結(jié)構(gòu)更加簡單的同時,犧牲了一定表達能力,但對于事實類問題的理解來說依然足夠。?
Yih 等人[42] 提出了一種多階段的語義結(jié)構(gòu)生成方法,如圖2–6d所示,語義解析樹被表示為有向圖形式,稱為查詢圖,圖中的每一條邊以及連接的兩個節(jié)點,都對應公式2–12中的三元組。與之前兩種方法的自底向上生成不同,多階段語義結(jié)構(gòu)生成基于由簡到繁,逐步生成查詢圖的思路。最簡單的查詢圖為答案節(jié)點通過謂詞(或多個謂詞構(gòu)成的序列)連接至問句中的某一實體,形成僅有一條有向路徑構(gòu)成的查詢圖。問句中抽取的其它實體、類型、時間等信息,則通過多個不同的階段,逐步連接至已有的路徑 上,構(gòu)成更加復雜的查詢圖。該方法不受限與問句中詞的先后順序,查詢圖的生成更加靈活,在多個問答數(shù)據(jù)集上均有良好的效果。?
Cui 等人[44] 提出了一種基于模板的方式,對問句生成謂詞序列形式的語義結(jié)構(gòu)。模板是對問句抽象表示,它將問句中的實體替換成類型,指代了一組具有相同語法和語義描述的問句,“what states border $location” 是一個具體的模板例子。模板的提取依靠外部的大規(guī)模問答數(shù)據(jù),作者對 Yahoo! Answers 中大約 41M 問答對進行實體與答案識別后,生成了約27M不同的模板,并通過 EM 算法學習其指向謂詞序列的條件概率。對于 每一個問句的語義結(jié)構(gòu)生成,則通過生成模型,由模板進行過渡得到不同謂詞序列的概率。這樣的方法,優(yōu)點在于利用大量外部數(shù)據(jù)獲取準確率高的模板以及和語義的匹配,但模型的召回率可能成為短板,當問句語法不規(guī)范時,簡單的模板匹配容易失效。此外, 一些文獻 [90,91] 使用了基于依存語法樹轉(zhuǎn)換的方式,利用結(jié)構(gòu)相似性實現(xiàn)語義解析結(jié)構(gòu)的生成,這里不再一一介紹。
2.3.1.2 語義匹配模型構(gòu)建
由于自然語言的多義性,語義解析結(jié)構(gòu)的生成結(jié)果通常都不唯一,因此需要對<問句,語義解析結(jié)構(gòu)>的匹配度進行建模,選擇最高匹配度的解析結(jié)構(gòu)進行知識庫上的答案查詢。傳統(tǒng)的語義解析模型主要基于特征工程,Berant 等人[40] 的研究工作為一個典型例子。語義解析樹由 λ-DCS 生成,抽取出的特征包含三類:問句中的短語與對應知識庫謂詞的對齊特征,不同謂詞參與合并的特征,以及解析樹的總體結(jié)構(gòu)特征。前兩類特征來自于解析樹的自底向上生成過程,用于捕捉每一個操作,后一類特征則統(tǒng)計解析樹中不同類型操作的數(shù)量,以及最終返回的答案數(shù)量。?
為了彌補特征工程耗費人力的缺陷,同時獲取更高層面的語義匹配信號,Berant等人在后續(xù)的工作[41]中引入了轉(zhuǎn)述特征(Paraphrasing Feature),通過簡單的規(guī)則將解析樹翻譯成自然語言問句,并衡量原問句和生成問句之間是否具有轉(zhuǎn)述關(guān)系,將其作為額外一組特征。轉(zhuǎn)述關(guān)系涉及到自然語言文本匹配問題,作者使用基于詞對應的關(guān)聯(lián)模型和詞向量的維度空間模型兩種方式進行建模,使得問答系統(tǒng)可以得到解析樹的整體語 義,是傳統(tǒng)特征工程的有力補充。?
最新的自動問答模型廣泛使用了深度學習技術(shù)。相關(guān)研究的共同點在于遵循一種 “編碼—比較”框架,其重點在于,通過神經(jīng)網(wǎng)絡(luò)的特征學習能力,對問句和解析結(jié)構(gòu)分別進行編碼,得到各自向量表示,最后計算向量之間的相似度,代表問句與解析結(jié)構(gòu)的匹配程度。以簡單問題數(shù)據(jù)集SimpQuestions 為代表的問答模型幾乎完全屬于這一范疇, 由于在 SimpleQuestions 中,問句的語義解析結(jié)構(gòu)均為單一謂詞序列,因此這些模型本質(zhì)上都是對文本序列和謂詞序列之間的匹配進行建模。Yu 等人[49] 提出的 HR-BiLSTM 模型利用循環(huán)神經(jīng)網(wǎng)絡(luò)進行建模,如圖2–7所示,謂詞序列輸入分為兩個粒度:以唯一編號表示的編號序列,以及將謂詞名稱相連的單詞序列,分別通過雙向 LSTM 層進行編碼,問句文本的編碼也利用了雙向 LSTM 層,并使用多層間的殘差連接方式進行編碼,旨在讓模型能同時捕捉單詞粒度和問句整體粒度的語義信號。SimpleQuestions上的其它類似模型還包括文獻[48,50,92,93]。
圖2–7 HR-BiLSTM模型
對于 WebQuestions 等數(shù)據(jù)集上的復雜問題,如同圖2–6d的查詢圖,雖包含多條路徑,但也可以選擇其中最重要的路徑作為主體與問句計算匹配程度。微軟的兩個自動問答的研究工作[42,43]利用了基于卷積神經(jīng)網(wǎng)絡(luò)的 CDSSM 匹配模型[94],對問句和謂詞路徑的特征學習更多關(guān)注局部的詞序信息,見圖2–8。其中,前一個研究工作由 Yih 等人[42] 提出,深度學習模型僅關(guān)注問句和最重要謂詞路徑的匹配度,對于查詢圖的其它分支路徑,依然使用特征工程的方式尋找問句和謂詞的字面匹配。Bao 等人[43] 的改進在于同樣利用 CDSSM 模型,對分支路徑與問句中的特定上下文進行匹配,替代了繁瑣的特征工程。然而這些模型并沒有能夠?qū)W習到查詢圖整體在連續(xù)語義空間的特征表達, 不同路徑的語義互相獨立,因此面對復雜問題仍存在缺陷,這也是我們的研究重點。
圖2–8 CDSSM 模型。
2.3.1.3 訓練方式
訓練方式的不同,主要取決于訓練集中是否包含已標注的語義解析結(jié)構(gòu)。已有的問答數(shù)據(jù)集中,Free-917 人工標注了每個問題的邏輯表達式,QALD 系列數(shù)據(jù)集則標注了 SPARQL 查詢語句。對于這些正確結(jié)構(gòu)已給定的數(shù)據(jù)集,可以直接利用監(jiān)督學習算法進行匹配度訓練。
顯然語義結(jié)構(gòu)的標注需要知識庫領(lǐng)域的專家,因此標注過程會消耗大量人力,更大規(guī)模的數(shù)據(jù)集例如 WebQuestions 和 ComplexQuestions 僅包含每個問題的正確答案,而沒有語義結(jié)構(gòu)信息。對于這些數(shù)據(jù)集,首先需要通過遠距離監(jiān)督方式構(gòu)造可直接使用的訓練數(shù)據(jù),即對所有訓練問題,自動生成語義結(jié)構(gòu)的正負樣本。已有的方法主要利用分數(shù)衡量語義結(jié)構(gòu)的好壞,兼顧其生成的查詢結(jié)果的準確率與召回率,即, 其中代表準確率,代表召回率。再通過設(shè)定閾值將不同的語義結(jié)構(gòu)劃分為正負樣本,例如 Berant 等人[40] 僅將分值為 1(即答案完全匹配)的語義結(jié)構(gòu)作為正樣本, 而 Yih 等人[42]則將閾值設(shè)為0.5,容忍一定程度的答案不完全匹配。遠距離監(jiān)督方式避免了人工標注大量語義結(jié)構(gòu),但考慮到語義偏差的存在,即答案正確的語義結(jié)構(gòu)未必正確,自動生成的訓練數(shù)據(jù)也會引入一定量的錯誤。
2.3.2 基于信息抽取的問答模型?
基于信息抽取的自動問答模型旨在直接從知識庫中尋找正確答案,而不嘗試對問題進行具體化的語義建模。模型主要包含三個步驟:1)對問句進行實體鏈接,得到其中包含的相關(guān)實體;2) 在知識庫中抽取出這些相關(guān)實體周圍的其它實體,構(gòu)成候選答案集合;3) 計算問句與每一個候選答案的匹配度,以此預測出其中的正確答案實體。顯然模型的關(guān)鍵點在于第三步,即以怎樣的特征描述候選答案與問句之間的關(guān)聯(lián)。在知識庫中,一個實體所具有的信息主要包含它的名稱、類型、直接相連的謂詞以及周圍的其它實體。這些信息組成了知識庫中以該實體為中心的局部圖,不同的信息抽取模型都以這樣的局部圖作為候選答案實體的輸入。而這些模型的區(qū)別,在于特征的選取或?qū)W習方式。?
Yao 等人[35] 提出的模型利用特征工程方式,將問句特征與候選答案特征進行配對組合,得到大規(guī)模的關(guān)聯(lián)特征。問句側(cè)的特征來源于依存語法樹,從中抽取出不同的依存路徑,以及具有強烈語義的詞匯(如動詞,wh-疑問詞)。答案側(cè)的特征為答案的類型, 以及與問句已知實體相連的謂詞路徑。通過訓練,具有高相關(guān)性的配對特征(例如疑問詞“where”與答案類型 location 配對)將具有更高的權(quán)重。
深度學習同樣適用于基于信息抽取的問答模型。Bordes 等人[95] 提出了 QASE 模型, 同樣基于 “編碼—比較” 框架,如圖2–9所示,問句和候選答案的局部圖分別進行編碼,問句的編碼信息為每個詞的出現(xiàn)次數(shù),候選答案則通過二進制編碼表示答案實體自身、 所屬類型、相鄰的謂詞等信息。模型學習映射矩陣,將各自編碼轉(zhuǎn)換為連續(xù)空間上的語義向量,的每一行對應一個元素(詞、實體、類型、謂詞)的向量表示,因此該模型實現(xiàn)了詞向量和知識庫向量的聯(lián)合建模。
圖2–9 QASE模型。?
還有一些深度學習模型采用問句分別與答案相關(guān)的不同維度信息計算相似度,再將各個維度的相似度進行聚合,得到問句與候選答案的整體匹配度。Dong 等人[96] 提出了 MCCNN 模型,如圖2–10所示,模型使用多個不同的卷積神經(jīng)網(wǎng)絡(luò)層對問句進行編碼, 從而得到問句針對不同信息的向量表達。將它們分別與答案的類型、謂詞、上下文向量表達計算相似度之后,最終的匹配度為這些相似度分值的總和,使得模型在尋找最佳答案時能兼顧來自不同方面的匹配特征。
圖2–10 MCCNN模型。?
Hao 等人[37] 的模型在 MCCNN 基礎(chǔ)上進行了改良,除了將問句編碼多個卷積層改為唯一一個雙向 LSTM 層以外,主要的貢獻在于模型中使用了問句和答案之間的雙向注意力機制。一方面,針對答案在不同方面的表達,答案對問句的注意力能夠動態(tài)調(diào)整問句中不同詞的重要性,另一方面,問句對答案的注意力使得多個相似度分值互相之間也具有權(quán)重,模型訓練效果要優(yōu)于無差別的求和操作。?
和語義解析模型比較,信息抽取模型實現(xiàn)了問答系統(tǒng)的端到端訓練,直接以 < 問題,答案>作為訓練數(shù)據(jù),防止遠距離監(jiān)督引入錯誤。但同時也具有解釋性較低的缺陷, 無法直接輸出模型所理解的問句語義結(jié)構(gòu),有時答案預測雖正確,但特征中可能存在語義偏差。對于復雜語義的自動問答研究,我們更在意語義結(jié)構(gòu)的正確性,它能直接體現(xiàn) 一個問答模型是否具有良好的語義理解能力。
2.4 本章小結(jié)
本章對實體、關(guān)系、問句理解這三個層面的研究進行了背景介紹和文獻綜述。實體理解方面,深度學習模型和跨語言詞向量是我們較為關(guān)心的內(nèi)容,將會在第三章的跨語言表格鏈接任務中使用。關(guān)系和問句理解方面,本章各介紹了兩種路線不同的方法,分別是關(guān)系理解的規(guī)則推導、知識庫向量表示,以及問句理解的語義解析、信息抽取。這 四種方法之間存在著一些共性:規(guī)則推導和語義解析的共同點在于,語義理解需要顯式的語義結(jié)構(gòu)(一階邏輯表達式,或與之等價的知識庫子圖)作為媒介;而另外兩者的共同點在于對實體、類型、謂詞等知識庫元素進行表示學習,以端到端的形式訓練,模型更加面向具體任務。在第四章和第五章的研究中,我們更加在意機器是否能理解具有復雜語義的關(guān)系或問句,而不僅僅停留在特定任務的輸出是否正確,因此規(guī)則推導和語義解析是本文關(guān)注的重點。
參考文獻
了解更多信息請點擊知識工場網(wǎng)站主頁:http://kw.fudan.edu.cn/
合作意向、反饋建議請聯(lián)系:
info.knowledgeworks@gmail.com
OpenKG
開放知識圖譜(簡稱 OpenKG)旨在促進中文知識圖譜數(shù)據(jù)的開放與互聯(lián),促進知識圖譜和語義技術(shù)的普及和廣泛應用。
點擊閱讀原文,進入 OpenKG 博客。
總結(jié)
以上是生活随笔為你收集整理的论文浅尝 | 基于知识库的自然语言理解 01#的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文浅尝 | GEOM-GCN: Geo
- 下一篇: 论文浅尝 - ICLR2020 | 通过