

摘 要:編寫機器閱讀理解軟件中,一個基本步驟就是對于給定問題先在文檔中找到和答案相關的語句。目前該領域大部分算法都使用遞歸神經網絡,但由于很難序列并行化,這類算法在長文檔上運行很慢。受人類在首次瀏覽文章時識別與問題相關的段落或語句,并仔細閱讀這些內容得到答案的啟發,本文采用一個粗糙但快速的模型用于答案相關句的選擇。實驗在WIKIREADING LONG 數據集上取得了較好的結果。
關鍵詞:機器閱讀理解軟件;神經網絡;答案相關句
中圖分類號:TP391.1 文獻標識碼:A
1 引言(Introduction)
閱讀理解是自然語言理解中的一個關鍵問題。近年來,隨著大規模閱讀理解語料的可用性,從無結構化文檔中進行問答研究已經成為熱門領域[1-3]。
與此同時,深度學習也已成為自然語言處理領域的熱點,幾乎所有的研究熱點都已成為深度學習的天下。閱讀理解中對于問題相關句的抽取任務也不例外,有許多專家學者利用深度學習來進行問題相關句抽取任務的研究[4-6]。
目前,在無結構化文檔上進行問答研究的最好方法是基于遞歸神經網絡,該模型將文檔和問題進行編碼來獲得答案。盡管這樣的模型能夠獲得所有相關信息,但是由于模型需要在可能成千上萬的詞語上序列化運行,并且計算不能平行化而變得很慢。事實上,這樣的模型通常是把文檔截短,并只考慮有限的一部分詞語。受人類第一次瀏覽文檔時識別問題相關部分,認真閱讀這部分內容從而產生答案的研究[7-9],本文提出了一種問題相關句選擇模型。該模型能快速從文檔中選擇一些與回答問題相關的句子。
本文認為,答案并不需要顯式地逐字出現在輸入中(比如,即使沒有被顯式說明,一部電影的類型也可以輕易確定)。此外,答案經常會在文檔虛假的上下文中出現很多次(比如,年份2012可能在文檔中出現很多次,但真正與問題相關的可能只有一次)。因此,本文將句子選擇看成是由僅使用增強學習的答案生成模型產生的答案并行訓練的潛在變量。據我們所知,在分類研究領域有將句子選擇看成是一個潛在變量,但是問答領域尚屬首次。
本文展示了一個對于長文檔閱讀理解的模塊化框架和學習步驟。它能夠捕獲文檔結構的有限形式如句子邊界,并能夠處理長文檔。WIKIREADING LONG數據集上的實驗結果顯示本文模型是有效的。
2 問題設置(Problem setting)
給定一個問題—文檔—答案三元組的訓練集,我們最終目的就是一個模型能夠對問題—文檔對生成一個答案。文檔是一系列句子的集合。結合語言學研究和人類的直觀感知,我們認為答案是可以從一個與問題相關的潛在的句子子集中生成的,這就是本文的研究內容。下面以兒童故事《小貓釣魚》為例說明研究內容,其中答案出現在子句中。
文檔:
:小貓坐在河邊跟媽媽學習釣魚。:蝴蝶飛過,小貓放下魚竿就去抓蝴蝶;:蜻蜓飛來,小貓轉過身就去追蜻蜓。:一天的時間很快就過去了。:傍晚,小貓低著頭,提著空空的籃子跟著媽媽回家了。
問題x:小貓跟著媽媽去釣魚,他釣到魚了嗎?
答案y:沒有。籃子空空的。
3 數據(Data)
本文方法在WIKIREADING LONG數據集上進行了測試。
WIKIREADING LONG是一個問答數據集,由Wikipedia and Wikidata自動生成:給定一個關于某實體的維基頁面和維基數據資源,比如職業或性別,目標就是基于該文檔推斷其價值。和其他最新發布的大規模數據集不同,WIKIREADING LONG并不標注答案界限,這使得句子選擇更加困難。
4 句子選擇模型(Sentence selection model)
句子選擇模型定義了一個給定輸入問題x和文檔d、基于句子層面的分布。按照近年來在句子選擇方面的研究,本文構建了一個前饋網絡來定義句子上的分布。我們考慮了三種簡單的句子表示:詞袋模型、塊結構詞袋模型、卷積神經網絡模型。這些模型能夠有效處理長文檔,但是不能完全捕獲文本的序列性,即句子中詞語的位置信息。
4.1 詞袋模型
給定一個句子,我們定義了中詞語的詞袋表示。為了定義文檔句子的分布,我們使用了一個標準注意模型,將問題的詞袋表示級聯到文檔中每個句子的詞袋表示上,然后輸入給一個單層前向網絡:
其中,表示問題和文檔中句子的詞袋表示級聯,矩陣、向量和word embeddings是學習參數。
4.2 塊結構詞袋模型
為了獲得更精細的粒度,我們將句子分割成一些長度固定的小塊,并且對每個小塊單獨進行了打分。這種做法適用于用句子的子塊回答問題,在不同小塊上學習注意力詞袋表示,并和詞袋模型一樣進行了評分。最終獲得了一個塊上分布,并通過邊緣化相同句子組塊來計算句子概率。假定是來自所有句子的塊上分布,則有:,參數與詞袋模型參數一致。
4.3 卷積神經網絡模型CNN
盡管我們的句子選擇模型有快速性要求,我們還是使用了一種卷積神經網絡來更好地表達臨近詞的語義。相對而言,卷積神經網絡模型CNN仍然是有效的,因為所有的過濾器可以平行計算。
借鑒了目前該領域的最新研究,我們將問題和句子中word embedding進行了級聯,并使用特征抽取器(Filter)和寬度w運行一個卷積層。這產生了每個具有w長度的F特征,我們利用了MaxPooling Over Time來獲得一個最終的表示。MaxPooling Over Time是NLP中CNN模型中最常見的一種下采樣操作,意思是對于某個Filter抽取到若干特征值,只取其中得分最大的那個值作為Pooling層保留值,其他特征值全部拋棄。值最大代表只保留這些特征中最強的,而拋棄其他弱的此類特征。endprint
在類似于閱讀理解的NLP任務中使用Max Pooling的好處在于可以把變長的輸入整理成固定長度的輸入。因為CNN最后往往會接全聯接層,而其神經元個數是需要事先定好的。如果輸入是不定長的,那么很難設計網絡結構。CNN模型的輸入X的長度是不確定的,而通過Pooling操作,每個Filter固定取一個值,那么有多少個Filter,Pooling層就有多少個神經元,這樣就可以把全聯接層神經元個數固定住。如圖1所示。
圖1 Pooling層神經元個數等于Filters個數
Fig.1 Numbers of fiters equals numbers of neurons in pooling
最后,和詞帶模型一樣,將通過一個單層前向網絡計算句子概率。
5 實驗(Experiments)
文中使用Word2Vec對訓練數據進行處理,每個單詞就可以得到對應的word embedding,這是一種低維度向量形式的單詞表示,能夠表征單詞的部分語義及語法含義。
在模型參數的學習方面,本文采用了一種管道模型,使用遠距離監督來訓練句子選擇模型。
實驗數據中70%為訓練集,10%為開發集,20%為測試集。每篇文檔中前35條句子作為啟發式模型的輸入,其中每條句子最大長度為35。將每篇文檔的前5個詞語加到句子序列的結尾,并將句子索引編號作為句子表示的一個重要向量。使用三種方法進行問題相關句子選擇的結果,詳見表1。
6 結論(Conclusion)
機器閱讀理解是自然語言處理任務中的一個核心問題。數據語料集的復雜度、是否引入了世界知識、深度學習模型的改進等都對該問題有重要影響。目前,機器自然語言閱讀理解很難對于給定的問題一次性給出答案。本文認為,首先從文檔中選擇與答案相關的句子是很重要的一個步驟。借鑒了目前最新的研究,本文分別從詞袋模型、塊結構詞袋模型、卷積神經網絡模型三種方法來進行考察。結果表明,神經網絡方法對于該問題是最有效的。
參考文獻(References)
[1] Collobert R,Weston J,Karlen M,et al.Natural Language Processing (almost) from Scratch[J]. Journal of Machine Learning Research(JMLR),2011,12:2493-2537.
[2] Masson M E.Conceptual Processing of Text during Skimming and Rapid Sequential Reading[J].Memory & Cognition,1983,11(3):262-274.
[3] Williams R J. Simple Statistical Gradient following Algorithms for Connectionist Reinforcement Learning[J].Machine Learning,1992,8(3-4):229-256.
[4] Bordes A,Chopra S,Weston J.Question answering with subgraph embeddings[C].EMNLP,2014:615-620.
[5] Tan M,Santos C N,Xiang B,et al.Improved Representation Learning for Question Answer Matching[C].Meeting of the Association for Computational Linguistics,2016:464-473.
[6] Hermann K M,Kocisky T,Grefenstette E,et al.Teaching Machines to Read and Comprehend[C].In Proc. of NIPS,2015,
19:1684-1692.
[7] 劉江鳴,徐金安,張玉潔.基于隱主題馬爾科夫模型的多特征自動文摘[J].北京大學學報:自然科學版,2014,50(1):187-193.
[8] 譚紅葉,趙紅紅,李茹.面向閱讀理解復雜問題的句子融合[J].中文信息學報,2017,31(1):8-16.
[9] 張志昌,張宇,劉挺.開放域問答技術研究進展[J].電子學報.
2009,37(5):1-6.
作者簡介:
劉海靜(1985-),女,碩士,講師. 研究領域:自然語言處理.endprint