阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

機器之心發表於2020-03-25
這篇博士論文將自然語言處理文字挖掘的多個核心任務與圖結構的強大表示能力結合起來,從而充分利用深度學習的表示能力和文字中的結構資訊來解決諸多問題:(1)組織資訊(Information Organization):提出了基於樹/圖結構的短文字/長文字對的分解演算法以提高語意匹配任務(semantic matching)。基於文字匹配,進一步提出事件粒度的新聞聚類和組織系統 Story Forest;(2)推薦資訊(Information Recommendation):提出了 ConcepT 概念挖掘系統以及 GIANT 系統,用於構建建模使用者興趣點以及長短文字主題的圖譜(Ontology)。構建的興趣圖譜 Attention Ontology 有助於對使用者與文字的理解,並顯著提高推薦系統的效果;(3)理解資訊(Information Comprehension):提出了 ACS-Aware Question Generation 系統,用於從無標註的文字中生成高質量的問答對,大大降低問答系統的資料集構建成本,並有助於提高閱讀理解系統的效果。

論文連結:https://sites.ualberta.ca/~bang3/files/PhD-Thesis.pdf

引言

自然語言處理(NLP)旨在讀取和理解未結構化的自然語言文字來完成不同的任務。「如何表示文字」以及「如何進行計算」是其中的兩個核心問題。早期的 NLP 研究中,利用 bag-of-words 模型表示文字,通過統計不同單詞的頻次來形成文字的向量表示,同時結合統計方法進行文字處理,這丟失了文字的詞序資訊以及單詞之間的聯絡,本質上是用 one hot encoding 來表示每個單詞;在深度學習中,研究者根據單詞的共現來學習詞向量,每個單詞由一個 dense vector 表示,語意相似或聯絡緊密的詞在向量空間中距離更小,再結合 RNN 模型(LSTM,GRU 等)進行文字編碼完成各種任務;其後又有研究工作將文字類比影像,編碼形成矩陣表示,結合 CNN 類模型進行計算;近年來,預訓練語言模型,利用自監督學習訓練各類大型語言模型,從而給單詞或文字賦予上下文敏感的(context-sensitive),多層的語義向量表示,其採用的模型是多層的 Transformer。

自然語言的形式及其語意具有層次性(hierarchical),組合性(compositional)和靈活性(flexible)。已有的研究並未充分利用各類文字中存在的語義結構。圖(graph)是一種通用且強大的表示形式,可以表達各種不同物件以及它們之間的聯絡,無論是在自然語言處理,還是在社交網路,現實世界等各種場景都無處不在。本論文在深度學習強大的表示學習能力的基礎上,設計並結合了不同的文字的圖結構化表示,並利用圖結構計算模型,例如圖神經網路(Graph Neural Networks), 去解決不同的自然語言處理文字挖掘問題。論文包含三大部分:第一部分介紹了文字的聚類和匹配,提出各類匹配問題的結構化演算法,並進一步提出 Story Forest 系統用於新聞事件的聚類組織和結構化表示。該系統落地到騰訊 QQ 瀏覽器熱點事件挖掘。第二部分關注文字挖掘,提出了 Attention Ontology 興趣圖譜,挖掘和描述使用者不同粒度的興趣點,建立不同興趣點之間的聯絡,並可用於刻畫文章主題。這部分工作顯著提高了 QQ 瀏覽器,手機 QQ,微信等應用中的資訊流推薦系統的效果。第三部分關注文字生成,提出了 ACS-QG 系統,自動從無標註文字中生成高質量的問答對,可用於問答系統的訓練,有助於大大減少資料集建立成本,以及提高機器閱讀理解的能力。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 1. 文字表示形式以及計算模型的演化

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 2. 論文的組成框架

第一部分:文字的匹配與聚類

第三章 Story Forest 事件聚類組織系統

在資訊爆炸的年代,查詢找到有價值的資訊,對使用者而言並不是非常簡單的任務。目前的搜尋引擎或者資訊流服務,會給使用者提供一個文章列表。這些新聞文章會包含大量冗餘資訊,缺乏結構化的組織。本文提出 Story Forest 系統,對新聞文章做事件(event)粒度的聚類,使得報導同一個現實中的事件的不同文章聚類成一個節點,相關聯的事件形成結構化的故事樹(story tree), 來表徵關聯事件之間的時間順序和發展關係。

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 3.「2016 年美國總統大選」的故事樹,樹中的每一個節點代表一個事件

已有的文字聚類方法不能很好地對文章進行事件粒度的聚類效果。本文提出 EventX 聚類演算法,它是一種雙層聚類演算法:在第一層聚類中,利用所有文章中的關鍵詞,形成關鍵詞網路(Keyword Graph)並對其進行圖分割,分割後的每一個關鍵詞子圖,代表一個大的話題,再利用相似度將每篇文章分配到一個最相似的關鍵詞子圖之下;在第二層聚類中,每一個關鍵詞子圖下的文章形成一個文章圖(doc graph), 相連的邊代表兩篇文章講述同一個事件,再對文章圖進行社群檢測(community detection),從而做了第二次聚類。每一個文章子圖裡的文章代表一個事件。通過雙層聚類,即可以對文章對之間做細粒度的語義比較,又可以控制時間複雜度。在得到事件聚類之後,不同的事件節點通過故事結構組織演算法,線上插入到已有的故事樹中形成故事結構。如果一個事件不屬於任何已有的故事樹,則形成一個新的故事。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 4. Story Forest 系統以及 EventX 聚類演算法

第四章 基於圖分解和圖卷積的長文字匹配

文字匹配是判斷兩個文字之間的關係或者相關度,是 NLP 中的核心問題,有很多的任務其核心都可視為一個文字匹配任務。根據匹配的源文字和目標文字的長短,我們可以將文字匹配任務分成四大類:長文字匹配任務,例如 Story Forest 系統中,一個核心的任務是判斷兩個文章是否在講同一個事件;短-長文字匹配,例如輸入 query 搜尋匹配的文章;短文字匹配,例如問答對匹配,句子對相似度衡量等;長-短文字匹配,例如文字主題分類等等。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 5. 根據源文字和目標文字的長短,將不同文字匹配任務分成四類

本章專注於長文字匹配任務,這是很重要的研究問題,然而在此之前,很少的研究工作專注於此。已有的演算法基於 Siamese Neural Network 或者 CNN 來編碼句子對或者句子之間的互動,無法很好的處理長文字匹配的任務。因為長文字的長度,導致計算複雜度較高;語言的靈活性,導致文字對之間對應的內容難以對齊;同時編碼器也難以準確地編碼長文字的語義。

本文提出 Concept Interaction Graph 用於分解一篇或者一對文章。其主要思想是「化整為零,分而治之」。CIG 中的每個節點包含幾個高度關聯的關鍵字,以及和這些關鍵字高度相關的句子集。當進行文字對匹配時,每個節點包含來自兩篇文章的兩個句子集。這樣,多個節點代表了兩篇文章中的不同的子話題,並囊括了文章中的一部分句子並進行了對齊。節點之間的邊代表不同子話題之間的聯絡緊密度。

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 6. 根據文章構建 Concept Interaction Graph 的 toy example

基於 Concept Interaction Graph,論文進一步提出通過圖神經網路(Graph Neural Networks)對文字對進行區域性和全域性匹配。具體而言,對每個節點上的文字對,利用編碼器進行區域性匹配,從而將長文字匹配轉化為節點上的短文字匹配;再通過圖神經網路來將文章結構資訊嵌入到匹配結果中,綜合所有的區域性匹配結果,來得到全域性匹配的結果。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 7. 基於 Concept Interaction Graph 和圖卷積神經網路的長文字匹配

第五章 基於層次化分解和對齊的短文字匹配

對於短文字匹配,論文提出了層次化句子分解(Hierarchical Sentence Factorization)來將句子分解為多層的表達,每一層都包含完整的所有單詞,並且語句重排列為「predicate-argument」的順序。隨著層數的增加,一個句子逐漸被分解為更加細粒度的語義單元。因此,利用這種多層次,重排序的句子表示,我們可以對齊兩個句子,並結合不同的語義粒度去比較他們的語義距離。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 8. 基於層次化句子分解(Hierarchical Sentence Factorization)的句子匹配

這種句子分解技術利用了 Abstract Meaning Representation 來對句子做 semantic parsing。然後,它通過一系列的操作,使得每一層都包含句子中的所有單詞。對於每一個語義單元,都是謂詞(predicate)在前,引數(argument)在後。這種表示充分展現了自然語言的層次性,組合性,並利用歸一化的詞序來克服自然語言表達的靈活順序。

基於句子的層次分解,論文進一步提出無監督的 Ordered Word Mover's Distance, 結合了最優傳輸理論的思想去建模句子之間的語義距離。其效果經試驗驗證顯著優於 Word Mover's Distance。同時,論文也提出了將句子的多語義粒度表達,應用於不同的文字匹配模型中,例如 Siamese Neural Networks 中。實驗證明,多粒度的匹配效果,顯著優於只利用原句進行匹配的效果。

第二部分:文字挖掘

第六章 ConcepT 概念挖掘系統

概念蘊涵了世界的知識,促進了人類的認知過程。從文件中提取概念並構建它們之間的聯絡對於文字理解以及下游任務有著重要的作用。認識「概念」(concept)是人類認識世界的重要基石。例如,當看到本田思域(Honda Civic)或者現代伊蘭特(Hyundai Elantra)時,人們可以聯想到「油耗低的車」或者「經濟型車」這類的概念,並且能進而聯想到福特福克斯(Ford Focus)或者尼桑 Versa(Nissan Versa)等車型。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 9. 人類能對事物進行概念化併產生聯想

過去的研究工作,包括 DBPedia, YAGO, Probase 等等知識圖譜或者概念庫,從維基百科或者網頁文章中提取各種不同的概念。但是這樣提取的概念和使用者的認知視角並不一致。例如,與其認識到豐田 4Runner 是一款豐田 SUV 或者說是一種汽車,我們更感興趣是否能把它概念化為「底盤高的汽車」或者「越野型汽車」。類似地,如果一篇文章在討論《簡愛》,《呼嘯山莊》,《了不起的蓋斯比》等電影,如果我們能認識到它在討論「小說改編的電影」這個概念,那麼會幫助極大。然而,目前的知識圖譜等工作目的是建立一個關於這個世界的結構化知識表示,概念提取自語法嚴謹的文章。因此,它們不能從使用者的視角去對文字(例如 query 和 document)進行概念化,從而理解使用者的意圖。另一方面,目前的工作也主要在於提取長期穩定的概念,難以提取短時間出現的熱門概念以(例如「賀歲大片」,「2019 七月新番」)及它們之間的聯絡。

我們提出了 ConcepT 概念挖掘系統,用以提取符合使用者興趣和認知粒度的概念。與以往工作不同的是,ConcepT 系統從大量的使用者 query 搜尋點選日誌中提取概念,並進一步將主題,概念,和實體聯絡在一起,構成一個分層級的認知系統。目前,ConcepT 被部署在騰訊 QQ 瀏覽器中,用以挖掘不同的概念,增強對使用者 query 意圖的理解和對長文章的主題刻畫,並支援搜尋推薦等業務。目前它已經提取了超過 20 萬高質量的基於使用者視角的概念,並以每天挖掘超過 11000 個新概念的速度在不斷成長。ConcepT 系統的核心演算法架構同樣適用於英語等其他語言。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 10. ConceptT 概念挖掘流程:從使用者搜尋點選日誌中挖掘概念

ConcepT 系統還可以用於給文章打上概念標籤。主要包含兩種策略:基於匹配的標記演算法和基於概率推斷的標記演算法。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 11. ConcepT 文章標記流程:將文章打上關聯的概念標籤
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 12. ConcepT 系統從使用者搜尋 query 中提取的概念展示
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 13. 線上 A/B test 結果。ConcepT 系統對 QQ 瀏覽器資訊流業務各項指標有明顯提升。其中最重要的指標曝光效率(IE)相對提升了 6.01%。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 14. ConcepT 系統對文章打上概念標籤。目前每天可處理 96700 篇文章,其中約 35% 可以打上概念標籤。我們建立了一個包含 11547 篇文章的概念標記資料用以評測標記的準確率。人工評測發現,目前系統的標記準確度達 96%。

第七章 使用者興趣點建模 Attention Ontology

上一章中,我們介紹了概念挖掘系統。為了更加全面的刻畫使用者興趣點,我們進一步挖掘包括概念(concept)和事件(event),話題(topic)等等在內的多種短語,並和預定義的主題(category)以及實體庫中的實體(entity)等形成上下位等關係。我們將這個包含多種節點,多種邊關係,用於使用者興趣點或關注點建模的圖譜命名為 Attention Ontology。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 15. Attention Ontology,包含五種節點,代表不同語義粒度的使用者興趣點;三種關係,代表節點之間的上下位,包含,以及關聯。

Attention Ontology 可以解決「推薦不準」和「推薦單調」的問題。例如:當一個使用者看了關於「英國首相特蕾莎梅辭職講話」的文章後,目前基於關鍵詞的推薦系統可能會識別關鍵詞「特蕾莎梅」,從而推薦給使用者很多關於特蕾莎梅的文章。然而這大概率並不是使用者的興趣點。這是「推薦不準」的問題,原因在於系統中缺乏或無法識別合適粒度的興趣點。另一方面,系統也可能繼續推薦更多關於「英國首相特蕾莎梅發表演講」的文章,這些文章與使用者已經瀏覽過的文章產生了冗餘,無法帶給使用者更多有價值的資訊,因此使用者也不感興趣。這是「推薦單調」的問題,而這個問題的本質在於缺乏不同興趣點之間的聯絡。

Attention Ontology 中包含不同粒度的使用者興趣點,並且不同的節點之間有邊來表示它們之間的聯絡。例如根據 Attention Ontology,我們可以認識到「特蕾莎梅辭職講話」是和「英國脫歐」這一中等粒度的興趣點相關的。如果使用者瀏覽了「英國脫歐」這一興趣點下的不同事件的文章,我們便可以識別出使用者不是關注「特蕾莎梅」這個人或者「特蕾莎梅辭職演講」這一個特定事件,而是關心「英國脫歐」這一話題。而另一方面,知道了使用者關注這一話題之後,利用不同興趣點之間的聯絡,我們可以給使用者推薦相關的文章,從而解決推薦不準和推薦單調的問題。

為了挖掘不同性質的短語,如概念和事件短語,論文提出了 Query-Title Interaction Graph(QTIG)用於建模 query 文章 title 之間的聯絡。這種表示結構將不同 query 和 title 之間的對齊資訊,詞的 tag,詞之間的距離,語法依賴等等資訊嵌入在節點特徵和邊的特徵中。利用這種表示,論文進一步提出 GCTSP-Net 模型,將短語挖掘問題建模為「節點分類+節點排序」的問題。該模型對 QTIG 進行節點二分類,抽取出屬於目標短語的詞;再將節點排序建模為一個旅行商問題,尋找一個最優路徑將所有的分類為正的節點進行排序。按照得到的路徑,將分類為正的節點串聯起來,便得到了輸出短語。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 16. Query-Title Interaction Graph. 圖中綠色節點為屬於輸出短語的詞。每一個節點代表 query 或 title 中的一個獨特的詞,邊代表兩個詞相鄰或者存在語法依賴。

論文設計並實現了構建 Attention Ontology 並將其應用在不同應用中的 GIANT 系統。GIANT 系統包含幾大模組:首先,根據使用者的搜尋 query 和點選日誌形成的二分圖,來進行聚類得到不同的 query-doc clusters。每個 query-doc cluster 包含一個或多個相似的 query,以及他們的 top 點選的文章。對每一個 query-doc cluster, 我們將其轉化為 Query-Title Interaction Graph 表示,並利用 GCTSP-Net 抽取潛在的短語。接下來,我們再利用不同的演算法去抽取不同短語之間的關係,形成 Attention Ontology。最後,利用 Attention Ontology 去實現多種應用,包括文章的 tagging,query 的概念化,文字的聚類組織等。同時,Attention Ontology 中的節點可用於在使用者畫像中描述使用者的興趣點。這樣可以提高使用者和其感興趣的文章之間的匹配,從而提高推薦系統的效果。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 17. GIANT 系統架構

第三部分:文字生成

第八-九章 問答對自動生成

問題生成是一種非常重要的文字生成問題,它可以應用在問答系統的訓練資料生成,對話系統,教育等等應用中。

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 18. 問題生成的不同應用及重要性

已有的問題生成系統一般給定一句話和一個答案,要求系統生成某個特定的問題。這種系統屬於 answer-aware question generation 系統。然而,它們生成的問題質量並不夠好。一個核心問題在於,給定輸入的句子和一個答案,我們能問出多個不同的並且合理的問題,是「一對多匹配(one-to-many mapping)」,而訓練集中每個輸入只有一個標準答案,是「一對一匹配(one-to-one mapping)」。

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 19. 根據同樣的輸入可以問不同的問題

本文提出 answer-clue-style aware question generation(ACS-QG)任務,將人提問的過程建模成四步:第一,根據輸入選擇一部分作為答案(answer);第二,選擇一部分和答案相關的資訊作為線索(clue)在問題中複述或轉述;第三,根據答案選擇問題的種類(style),例如 who, where, why 等等,共 9 種;第四,根據輸入的句子和以上三種資訊(答案 answer,線索 clue, 問題種類 style),生成問題。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 20. 根據輸入生成問題的過程

問題生成的過程可以從語法樹的角度去觀察:選擇答案片段就像是從語法樹中覆蓋了一部分資訊,而選擇線索片段(clue)的過程就是在覆蓋的資訊附近,選擇一部分節點作為提示輸出到問題中。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 21. 利用語法樹建模問題生成過程

本文提出的 ACS-QG 系統,可以從無標註的句子中,生成高質量的問答對資料。它由以下模組組成:資料集建立模組,可以從目前已有的問答資料集(例如 SQuAD)中,建立 ACS-QG 任務的訓練資料集;輸入選擇模組,可以從無標註的句子中,合理的選擇和建立(answer, clue, style)三元組作為問題生成的輸入;問題生成模組,可以利用輸入三元組生成問題,這個模組的訓練資料來自於第一個資料集建立模組;質量控制模組,用於過濾低質量的問答對。
 

阿爾伯塔大學博士畢業論文:基於圖結構的自然語言處理

圖 22. ACS-QG 問題生成系統

實驗證明,ACS-QG 系統能生成大量高質量的問答對,並且效果顯著優於一系列已有的問題生成演算法。

第十章 結論和未來工作

本論文利用圖結構建模了一系列 NLP 問題中的文字資料,並結合深度學習模型,提高了多種任務的效果。論文中的各種研究,對資訊的聚類組織,推薦,以及理解有著重要的意義。

未來的研究方向包括:長文字理解,多工協同學習,以及通用的基於圖結構的表示,學習與推理。

本論文中的研究已經發表在 SIGMOD,KDD,ACL,WWW,TKDD,CIKM 等各類 top conference 中,論文列表可在作者個人主頁找到:https://sites.ualberta.ca/~bang3/publication.html

相關文章