摘要:深度學(xué)習(xí)近年來在中廣泛使用,在機器閱讀理解領(lǐng)域也是如此,深度學(xué)習(xí)技術(shù)的引入使得機器閱讀理解能力在最近一年內(nèi)有了大幅提高,本文對深度學(xué)習(xí)在機器閱讀理解領(lǐng)域的技術(shù)應(yīng)用及其進展進行了歸納梳理。目前的各種閱讀理解任務(wù)中完形填空式任務(wù)是最常見的類型。
關(guān)于閱讀理解,相信大家都不陌生,我們接受的傳統(tǒng)語文教育中閱讀理解是非常常規(guī)的考試內(nèi)容,一般形式就是給你一篇文章,然后針對這些文章提出一些問題,學(xué)生回答這些問題來證明自己確實理解了文章所要傳達的主旨內(nèi)容,理解地越透徹,學(xué)生越能考出好的成績。
如果有一天機器能夠做類似于我們?nèi)祟愖鲩喿x理解任務(wù),那會發(fā)生什么呢?很明顯教會機器學(xué)會閱讀理解是自然語言處理(NLP)中的核心任務(wù)之一。如果哪一天機器真能具備相當(dāng)高水準的閱讀理解能力,那么很多應(yīng)用便會體現(xiàn)出真正的智能。比如搜索引擎會在真正理解文章內(nèi)容基礎(chǔ)上去回答用戶的問題,而不是目前這種以關(guān)鍵詞匹配的方式去響應(yīng)用戶,這對于搜索引擎來說應(yīng)該是個技術(shù)革命,其技術(shù)革新對產(chǎn)品帶來的巨大變化,遠非在關(guān)鍵詞匹配之上加上鏈接分析這種技術(shù)進化所能比擬的。而眾所周知,谷歌其實就是依賴鏈接分析技術(shù)起家的,所以如果機器閱讀理解技術(shù)能夠?qū)嵱没?,對搜索引擎領(lǐng)域帶來的巨變很可能是顛覆性的。對話機器人如果換個角度看的話,其實也可以看做是一種特殊的閱讀理解問題,其他很多領(lǐng)域也是如此,所以機器閱讀理解是個非常值得關(guān)注的技術(shù)方向。
深度學(xué)習(xí)近年來在NLP中廣泛使用,在機器閱讀理解領(lǐng)域也是如此,深度學(xué)習(xí)技術(shù)的引入使得機器閱讀理解能力在最近一年內(nèi)有了大幅提高,本文對深度學(xué)習(xí)在機器閱讀理解領(lǐng)域的技術(shù)應(yīng)用及其進展進行了歸納梳理。
什么是機器閱讀理解
機器閱讀理解其實和人閱讀理解面臨的問題是類似的,不過為了降低任務(wù)難度,很多目前研究的機器閱讀理解都將世界知識排除在外,采用人工構(gòu)造的比較簡單的數(shù)據(jù)集,以及回答一些相對簡單的問題。給定需要機器理解的文章以及對應(yīng)的問題,比較常見的任務(wù)形式包括人工合成問答、Cloze-style queries和選擇題等方式。
人工合成問答是由人工構(gòu)造的由若干簡單事實形成的文章以及給出對應(yīng)問題,要求機器閱讀理解文章內(nèi)容并作出一定的推理,從而得出正確答案,正確答案往往是文章中的某個關(guān)鍵詞或者實體。比如圖1展示了人工合成閱讀理解任務(wù)的示例。圖1示例中前四句陳述句是人工合成的文章內(nèi)容,Q是問題,而A是標準答案。
?圖1. 人工合成閱讀理解任務(wù)示例
Cloze-style queries是類似于“完形填空”的任務(wù),就是讓計算機閱讀并理解一篇文章內(nèi)容后,對機器發(fā)出問題,問題往往是抽掉某個單詞或者實體詞的一個句子,而機器回答問題的過程就是將問題句子中被抽掉的單詞或者實體詞預(yù)測補全出來,一般要求這個被抽掉的單詞或者實體詞是在文章中出現(xiàn)過的。圖2展示了完形填空式閱讀理解任務(wù)的示例。圖中表明了文章內(nèi)容、問題及其對應(yīng)的答案。這個例子是將真實的新聞數(shù)據(jù)中的實體詞比如人名、地名等隱去,用實體標記符號替換掉實體詞具體名稱,問題中一般包含個占位符placeholder,這個占位符代表文章中的某個實體標記,機器閱讀理解就是在文章中找出能夠回答問題的某個真實答案的實體標記。目前的各種閱讀理解任務(wù)中“完形填空式”任務(wù)是最常見的類型。
圖2.完形填空式閱讀理解
還有一種任務(wù)類型是選擇題,就是閱讀完一篇文章后,給出問題,正確答案是從幾個選項中選擇出來的,典型的任務(wù)比如托福的聽力測試,目前也有研究使用機器來回答托福的聽力測試,這本質(zhì)上也是一種閱讀理解任務(wù)。
圖3.托福聽力測試題示例
如果形式化地對閱讀理解任務(wù)和數(shù)據(jù)集進行描述的話,可以將該任務(wù)看作是四元組:
其中,代表一篇文章,代表針對文章內(nèi)容提出的一個問題,是問題的正確答案候選集合而代表正確答案。對于選擇題類型來說,就是明確提供的答案候選集合而是其中的正確選項。對于人工合成任務(wù)以及完形填空任務(wù)來說,一般要求:
也就是說,要求候選答案是在文章中出現(xiàn)過的詞匯或者實體詞。
深度學(xué)習(xí)技術(shù)進展
本節(jié)內(nèi)容對目前機器閱讀理解領(lǐng)域中出現(xiàn)的技術(shù)方案進行歸納梳理,正像本文標題所述,我們只對深度學(xué)習(xí)相關(guān)的技術(shù)方案進行分析,傳統(tǒng)技術(shù)方案不在討論之列。
1.文章和問題的表示方法
用神經(jīng)網(wǎng)絡(luò)處理機器閱讀理解問題,首先面臨的問題就是如何表示文章和問題這兩個最重要的研究對象。我們可以從現(xiàn)有機器閱讀理解相關(guān)文獻中歸納總結(jié)出常用的表示方法,當(dāng)然這些表示方法不僅僅局限于閱讀理解問題,也經(jīng)常見于NLP其他子領(lǐng)域中。
圖4.文檔表示方法:模型一
首先,對于機器閱讀理解中的文章來說,有兩種常見的文章內(nèi)容表達方式。最常見的一種即是將一篇文章看成有序的單詞流序列(參考圖4的模型一,圖中每個圓即代表某個單詞的神經(jīng)網(wǎng)絡(luò)語義表達,圖中的BiRNN代表雙向RNN模型),在這個有序序列上使用RNN來對文章進行建模表達,每個單詞對應(yīng)RNN序列中的一個時間步t的輸入,RNN的隱層狀態(tài)代表融合了本身詞義以及其上下文語義的語言編碼。這種表示方法并不對文章整體語義進行編碼,而是對每個單詞及其上下文語義進行編碼,在實際使用的時候是使用每個單詞的RNN隱層狀態(tài)來進行相關(guān)計算。至于具體的RNN模型,常見的有標準RNN、LSTM、GRU及其對應(yīng)的雙向版本等。對于機器閱讀理解來說雙向RNN是最常用的表示方法,一般每個單詞的語義表示由正向RNN隱層狀態(tài)和反向RNN隱層狀態(tài)拼接來表示,即:
模型一往往在機器閱讀理解系統(tǒng)的原始輸入部分對文章進行表征,因為對于很多閱讀理解任務(wù)來說,本質(zhì)上是從文章中推導(dǎo)出某個概率較大的單詞作為問題的答案,所以對文章以單詞的形式來表征非常自然。
另外一種常見的文章內(nèi)容表達方式則是從每個單詞的語義表達推導(dǎo)出文章整體的Document Embedding表達,這種形式往往是在對問題和文章進行推理的內(nèi)部過程中使用的表達方式。典型的表達過程如圖5所示的模型二所示。
圖5. 文檔表示方法:模型二
模型二的含義是:首先類似于模型一,用雙向RNN來對每個單詞及其上下文進行語義表征,形成隱層狀態(tài)表示,然后對于向量的每一維數(shù)值,乘以某個系數(shù),這個系數(shù)代表了單詞對于整個文章最終語義表達的重要程度,將每個單詞的系數(shù)調(diào)整后的隱層狀態(tài)累加即可得到文章的Word Embedding語義表達。而每個單詞的權(quán)重系數(shù)通常用Attention計算機制來計算獲得,也有不使用權(quán)重系數(shù)直接累加的方式,這等價于每個單詞的權(quán)重系數(shù)都是1的情形,所以可以看作加權(quán)平均方法的特殊版本。以公式表達的話,文章的語義表達公式如下:
對于機器閱讀理解中的問題來說,有三種常見的語義表達方式。如果將查詢看作一種特殊的文章的話,很明顯文章的語義表達方式同樣可以用來表征問題的語義,也就是類似于文檔表示方法的模型一和模型二。問題的表示方法模型一如圖6所示,模型二如圖7所示,其代表的含義與文章表征方式相似,所以此處不贅述。
圖6.問題表示方式:模型一
圖7.問題表示方法:模型二
問題表示方法的另外一種表示如圖8所示,我們可以稱之為模型三。
圖8.問題表示方法:模型三
模型三也是在模型一的基礎(chǔ)之上的改進模型,也是NLP任務(wù)中表達句子語義的最常見的表達方式。首先類似于模型一,使用雙向RNN來表征每個單詞及其上下文的語義信息。對于正向RNN來說,其尾部單詞(句尾詞)RNN隱層節(jié)點代表了融合了整個句子語義的信息;而反向RNN的尾部單詞(句首詞)則逆向融合了整個句子的語義信息,將這兩個時刻RNN節(jié)點的隱層狀態(tài)拼接起來則可以表征問題的整體語義:
理論上模型三也可以用來表征文章的語義信息,但是一般不會這么用,主要原因是文章往往都比較長,RNN對于太長的內(nèi)容表征能力不足,所以類似模型三的方法會存在大量的信息丟失,而“問題”一般來說都是比較短的一句話,所以用模型三表征是比較合適的。
以上介紹的幾個模型是在機器閱讀理解領(lǐng)域里常用的表征文章和問題的表示方法。下面我們從機器閱讀理解神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的角度來進行常用模型的介紹。
2、機器閱讀理解的深度學(xué)習(xí)模型
目前機器閱讀理解研究領(lǐng)域出現(xiàn)了非常多的具體模型,如果對這些模型進行技術(shù)思路梳理的話,會發(fā)現(xiàn)本質(zhì)上大多數(shù)模型都是論文“Teaching Machines to Read and Comprehend”提出的兩個基礎(chǔ)模型”Attentive Reader”和“Impatient Reader”的變體(參考文獻1),當(dāng)然很多后續(xù)模型在結(jié)構(gòu)上看上去有了很大的變化,但是如果仔細推敲的話會發(fā)現(xiàn)根源和基礎(chǔ)思路并未發(fā)生顛覆性的改變。
我們將主流模型技術(shù)思路進行歸納梳理以及某些技術(shù)點進行剝離組合,將其歸類為“一維匹配模型”、“二維匹配模型”、“推理模型”等三類模型,其中“一維匹配模型”和“二維匹配模型”是基礎(chǔ)模型,“推理模型”則是在基礎(chǔ)模型上重點研究如何對文本內(nèi)容進行推理的機制。當(dāng)然,還有個別模型在結(jié)構(gòu)上有其特殊性,所以最后會對這些模型做些簡介。
2.1 ?一維匹配模型
圖9. 機器閱讀理解的一維匹配結(jié)構(gòu)
目前機器閱讀理解任務(wù)的解決方案中,有相當(dāng)多的模型可以被歸類到“一維匹配模型”這種技術(shù)范型中,這類模型本質(zhì)上是“Attentive Reader”的變體。我們首先介紹這種技術(shù)思路的總體流程結(jié)構(gòu),然后說明下主流方法在這個框架下的一些區(qū)別。
圖9所示是“一維匹配模型”的技術(shù)流程示意圖:首先,對文章內(nèi)容使用“文章表示方法:模型一”的方式對文章語義內(nèi)容進行編碼,對于問題來說,則一般會使用“問題表示方法:模型三”的方式對問題進行語義編碼,即使用雙向RNN的頭尾部節(jié)點RNN隱層狀態(tài)拼接作為問題的語義表示。然后,通過某種匹配函數(shù)來計算文章中每個單詞Di(編碼中包括單詞語義及其上下文單詞的語義)語義和問題Q整體語義的匹配程度,從含義上可以理解為F是計算某個單詞Di是問題Q的答案的可能性映射函數(shù)。接下來,對每個單詞的匹配函數(shù)值通過SoftMax函數(shù)進行歸一化,整個過程可以理解為Attention操作,意即凸顯出哪些單詞是問題答案的可能性。最后,因為一篇文章中,某個單詞可能在多處出現(xiàn),而在不同位置出現(xiàn)的同一個單詞都會有相應(yīng)的Attention計算結(jié)果,這代表了單詞在其具體上下文中是問題答案的概率,將相同單詞的Attention計算出的概率值進行累加,即可作為該單詞是問題Q答案的可能性,選擇可能性較大的那個單詞作為問題的答案輸出。在最后相同單詞概率值累加這一步,一般容易質(zhì)疑其方式:如果這樣,那么意味著這個方法隱含一個假設(shè),即出現(xiàn)次數(shù)越多的單詞越可能成為問題的答案,這樣是否合理呢?實驗數(shù)據(jù)表明,這個假設(shè)基本是成立的,所以這種累加的方式目前是非常主流的技術(shù)方案,后文所述的AS Reader和GA Reader采取了這種累加模式,而Stanford AR和Attentive Reader則采取非累加的模式。之所以將這個結(jié)構(gòu)稱為“一維匹配模型”,主要是其在計算問題Q和文章中單詞序列的匹配過程形成了一維線性結(jié)構(gòu)。
上述內(nèi)容是“一維匹配模型”的基本思路,很多主流的模型基本都符合上述架構(gòu),模型之間的較大區(qū)別主要是匹配函數(shù)的定義不同。具體而言,“Attention Sum Reader”,(后文簡稱AS Reader,參考文獻2)、“Stanford Attentive Reader”(后文簡稱 Stanford AR,參考文獻3)、“Gated-Attention Reader”(后文簡稱GA Reader,參考文獻4)、“Attentive Reader”(參考文獻1)、AMRNN(參考文獻5)等模型都基本遵循這個網(wǎng)絡(luò)結(jié)構(gòu)。
AS Reader可以看作是一維匹配結(jié)構(gòu)的典型示例,其匹配函數(shù)定義為Di和Q向量的點積:
Attentive Reader是最早提出的模型之一,所以在整體結(jié)構(gòu)上和一維匹配結(jié)構(gòu)有些差異,模型性能相對差些,不過這些結(jié)構(gòu)上的差異點并非性能差異的關(guān)鍵,而匹配函數(shù)能夠解釋其和效果好的模型性能差異的主要原因,其采用了前向神經(jīng)網(wǎng)絡(luò)的形式:
Stanford AR的匹配函數(shù)則采用了雙線性(Bilinear)函數(shù):
這里需要說明的是,Stanford AR的效果已經(jīng)是目前所有機器閱讀理解模型中性能較好的之一,同時其一維匹配模型相對簡單,且沒有采用深層的推理機制,所以這個模型是值得關(guān)注的。而其相對Attentive Reader來說,對提升性能最主要的區(qū)別就在于采用了雙線性函數(shù),而這個改變對性能提升帶來了極大的幫助;相對AS Reader來說,其性能也有明顯提升,很明顯雙線性函數(shù)在其中起了主要作用。由此可見,目前的實驗結(jié)果支持雙線性函數(shù)效果明顯優(yōu)于很多其它匹配模型的結(jié)論。
AMRNN是用來讓機器做TOFEL聽力題的閱讀理解系統(tǒng)采用的技術(shù)方案,類似于GA Reader的整體結(jié)構(gòu),其是由一維匹配模型加深層網(wǎng)絡(luò)組合而成的方案,同樣的,深層網(wǎng)絡(luò)是為了進行推理,如果摘除深層網(wǎng)絡(luò)結(jié)構(gòu),其結(jié)構(gòu)與AS Reader也是基本同構(gòu)的。其采用的匹配函數(shù)則使用Di和Q的Cosine相似性,類似于AS Reader向量點積的思路。AMRNN解決的是選擇題而非完形填空任務(wù),所以在輸出階段不是預(yù)測文中哪個單詞或?qū)嶓w是問題的答案,而是對幾個候選答案選項進行評估,從中選擇正確答案。
由上述模型對比可以看出,一維匹配模型是個結(jié)構(gòu)簡潔效果整體而言也不錯的模型范式,目前相當(dāng)多的具體模型可以映射到這個范式中,而其中的關(guān)鍵點在于匹配函數(shù)如何設(shè)計,這一點是導(dǎo)致具體模型性能差異的相當(dāng)重要的影響因素??梢灶A(yù)見,后續(xù)的研究中必然會把重心放在如何改進設(shè)計出更好地匹配函數(shù)中來。
2.2 ?二維匹配模型
圖10. 機器閱讀理解的二維匹配結(jié)構(gòu)
顧名思義,“二維匹配模型”是相對“一維匹配模型”而言的,其最初的思想其實體現(xiàn)在”Impatient Reader”的思路中。圖10是機器閱讀理解中二維匹配模型的整體流程示意圖,從中可以看出,其整體結(jié)構(gòu)與一維匹配模型是類似的,最主要的區(qū)別體現(xiàn)在如何計算文章和問題的匹配這個層面上。與一維匹配模型不同的是:二維匹配模型的問題表征方式采用“問題表示方法:模型一”,就是說不是將問題的語義表達為一個整體,而是問題中的每個單詞都多帶帶用Word Embedding向量來表示。這樣,假設(shè)文檔長度為||D||,問題長度為||Q||,那么在計算問題和文章匹配的步驟中,就形成了||D||*||Q||的二維矩陣,就是說文章中任意單詞Di和問題中的任意單詞Qj都應(yīng)用匹配函數(shù)來形成矩陣的位置的值。
當(dāng)二維矩陣的值根據(jù)匹配函數(shù)填充完畢后,就可以考慮進行Attention計算。因為是二維矩陣,所以可以有很多種不同的Attention計算機制。比如可以如圖11這樣按照二維矩陣的行來進行Attention計算,因為矩陣的一行代表文檔中某個單詞Di相對問題中每個單詞Qj(1 圖11.二維結(jié)構(gòu)按行進行Attention 圖12. 二維結(jié)構(gòu)按列進行Attention Consensus Attention 模型(后文簡稱CA Reader,參考文獻6)、Attention-over-Attention模型(后文簡稱AOA Reader,參考文獻7)和Match-LSTM模型(參考文獻8)基本都符合二維匹配結(jié)構(gòu)的范式,其主要區(qū)別在于Attention計算機制的差異上。CA Reader按照列的方式進行Attention計算,然后對每一行文檔單詞對應(yīng)的針對問題中每個單詞的Attention向量,采取一些啟發(fā)規(guī)則的方式比如取行向量中較大值或者平均值等方式獲得文檔每個單詞對應(yīng)的概率值。AOA Reader則對CA Reader進行了改進,同時結(jié)合了按照列和按照行的方式進行Attention計算,核心思想是把啟發(fā)規(guī)則改為由按行計算的Attention值轉(zhuǎn)換成的系數(shù),然后用對按列計算出的Attention加權(quán)平均的計算方式獲得文檔每個單詞對應(yīng)的概率值。Match-LSTM模型則是按行進行Attention計算,同樣地把這些Attention值轉(zhuǎn)換成列的系數(shù),不過與AOA不同的是,這些系數(shù)用來和問題中每個單詞的Word Embedding相乘并對Word Embedding向量加權(quán)求和,擬合出整個問題的綜合語義Word Embedding(類似于“問題表示方法:模型二”思路),并和文章中每個單詞的Word Embedding進行合并,構(gòu)造出另外一個LSTM結(jié)構(gòu),在這個LSTM結(jié)構(gòu)基礎(chǔ)上去預(yù)測哪個或者那些單詞應(yīng)該是正確答案。 由于二維匹配模型將問題由整體表達語義的一維結(jié)構(gòu)轉(zhuǎn)換成為按照問題中每個單詞及其上下文的語義的二維結(jié)構(gòu),明確引入了更多細節(jié)信息,所以整體而言模型效果要稍優(yōu)于一維匹配模型。 從上面的具體模型介紹可以看出,目前二維匹配模型相關(guān)工作還不多,而且都集中在二維結(jié)構(gòu)的Attention計算機制上,由于模型的復(fù)雜性比較高,還有很多很明顯的值得改進的思路可以引入。最直觀的改進就是探索新的匹配函數(shù),比如可以摸索雙線性函數(shù)在二維結(jié)構(gòu)下的效果等;再比如可以引入多層網(wǎng)絡(luò)結(jié)構(gòu),這樣將推理模型加入到閱讀理解解決方案中等??梢灶A(yù)見,類似的思路很快會被探索。 2.3 ?機器閱讀理解中的推理過程 人在理解閱讀文章內(nèi)容的時候,推理過程幾乎是無處不在的,沒有推理幾乎可以斷定人是無法完全理解內(nèi)容的,對于機器也是如此。比如對于圖1中所展示的人工合成任務(wù)的例子,所提的問題是問蘋果在什么地方,而文章表達內(nèi)容中,剛開始蘋果在廚房,Sam將其拿到了臥室,所以不做推理的話,很可能會得出“蘋果在廚房”的錯誤結(jié)論。 乍一看“推理過程”是個很玄妙而且說不太清楚的過程,因為自然語言文本不像一階邏輯那樣,已經(jīng)明確地定義出符號以及表達出符號之間的邏輯關(guān)系,可以在明確的符號及其關(guān)系上進行推理,自然語言表達有相當(dāng)大的模糊性,所以其推理過程一直是很難處理好的問題。 現(xiàn)有的工作中,記憶網(wǎng)絡(luò)(Memory Networks,參考文獻9)、GA Reader、Iterative Alternating神經(jīng)網(wǎng)絡(luò)(后文簡稱IA Reader,參考文獻10)以及AMRNN都直接在網(wǎng)絡(luò)結(jié)構(gòu)中體現(xiàn)了這種推理策略。一般而言,機器閱讀理解過程網(wǎng)絡(luò)結(jié)構(gòu)中的深層網(wǎng)絡(luò)都是為了進行文本推理而設(shè)計的,就是說,通過加深網(wǎng)絡(luò)層數(shù)來模擬不斷增加的推理步驟。 圖13. 記憶網(wǎng)絡(luò)的推理過程 記憶網(wǎng)絡(luò)是最早提出推理過程的模型,對后續(xù)其它模型有重要的影響。對于記憶網(wǎng)絡(luò)模型來說,其第一層網(wǎng)絡(luò)的推理過程(Layer-Wise RNN模式)如下(參考圖13):首先根據(jù)原始問題的Word Embedding表達方式以及文檔的原始表達,通過f函數(shù)計算文檔單詞的Attention概率,然后g函數(shù)利用文章原始表達和Attention信息,計算文檔新的表達方式,這里一般g函數(shù)是加權(quán)求和函數(shù)。而t函數(shù)則根據(jù)文檔新的表達方式以及原始問題表達方式,推理出問題和文檔最終的新表達方式,這里t函數(shù)實際上就是通過兩者Word Embedding的逐位相加實現(xiàn)的。t函數(shù)的輸出更新下一層網(wǎng)絡(luò)問題的表達方式。這樣就通過隱式地內(nèi)部更新文檔和顯示地更新問題的表達方式實現(xiàn)了一次推理過程,后續(xù)每層網(wǎng)絡(luò)推理過程就是反復(fù)重復(fù)這個過程,通過多層網(wǎng)絡(luò),就實現(xiàn)了不斷通過推理更改文檔和問題的表達方式。 圖14. AMRNN的推理過程 AMRNN模型的推理過程明顯受到了記憶網(wǎng)絡(luò)的影響,圖14通過摒除論文中與記憶網(wǎng)絡(luò)不同的表面表述方式,抽象出了其推理過程,可以看出,其基本結(jié)構(gòu)與記憶網(wǎng)絡(luò)的Layer-Wise RNN模式是完全相同的,的區(qū)別是:記憶網(wǎng)絡(luò)在擬合文檔或者問題表示的時候是通過單詞的Word Embedding簡單疊加的方式,而AMRNN則是采用了RNN結(jié)構(gòu)來推導(dǎo)文章和問題的表示。所以AMRNN模型可以近似理解為AS Reader的基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu)加上記憶網(wǎng)絡(luò)的推理過程。 圖15.GA Reader的推理過程 GA Reader的推理過程相對簡潔,其示意圖如圖15所示。它的第一層網(wǎng)絡(luò)推理過程如下:其每層推理網(wǎng)絡(luò)的問題表達都是原始問題表達方式,在推理過程中不變。而f函數(shù)結(jié)合原始問題表達和文檔表達來更新文檔表達到新的形式,具體而言,f函數(shù)就是上文所述的被稱為Gated-Attention模型的匹配函數(shù),其計算過程為Di和Q兩個向量對應(yīng)維度數(shù)值逐位相乘,這樣形成新的文檔表達。其它層的推理過程與此相同。 圖16. IA Reader的推理過程 IA Reader的推理結(jié)構(gòu)相對復(fù)雜,其不同網(wǎng)絡(luò)層是由RNN串接起來的,圖16中展示了從第i層神經(jīng)網(wǎng)絡(luò)到第i+1層神經(jīng)網(wǎng)絡(luò)的推理過程,其中虛線部分是RNN的組織結(jié)構(gòu),每一層RNN結(jié)構(gòu)是由新的文檔表達和問題表達作為RNN的輸入數(shù)據(jù)。其推理過程如下:對于第i層網(wǎng)絡(luò)來說,首先根據(jù)RNN輸入信息,就是第i層的文檔表達和問題表達,更新隱層狀態(tài)信息;然后f函數(shù)根據(jù)更新后的隱層狀態(tài)信息以及原始的問題表達,計算問題中詞匯的新的attention信息;g函數(shù)根據(jù)新的attention信息更新原始問題的表達形式,形成第i+1層網(wǎng)絡(luò)的新的問題表達,g函數(shù)一般采取加權(quán)求和的計算方式;在獲得了第i+1層新的問題表達后,t函數(shù)根據(jù)第i層RNN隱層神經(jīng)元信息以及第i+1層網(wǎng)絡(luò)新的問題表達形式,更新原始文檔表達形成第i+1層文檔的新表達形式。這樣,第i+1層的問題表達和文檔表達都獲得了更新,完成了一次推理過程。后面的推理過程都遵循如此步驟來完成多步推理。 從上述推理機制可以看出,盡管不同模型都有差異,但是其中也有很多共性的部分。一種常見的推理策略往往是通過多輪迭代,不斷更新注意力模型的注意焦點來更新問題和文檔的Document Embedding表達方式,即通過注意力的不斷轉(zhuǎn)換來實現(xiàn)所謂的“推理過程”。 推理過程對于有一定難度的問題來說具有很明顯的幫助作用,對于簡單問題則作用不明顯。當(dāng)然,這與數(shù)據(jù)集難度有一定關(guān)系,比如研究證明(參考文獻10),CNN數(shù)據(jù)集整體偏容易,所以正確回答問題不需要復(fù)雜的推理步驟也能做得很好。而在CBT數(shù)據(jù)集上,加上推理過程和不加推理過程進行效果對比,在評價指標上會增加2.5%到5%個百分點的提升。 2.4 ?其它模型 上文對目前主流的技術(shù)思路進行了歸納及抽象并進行了技術(shù)歸類,除了上述的三種技術(shù)思路外,還有一些比較重要的工作在模型思路上不能歸于上述分類中,本節(jié)對這些模型進行簡述,具體模型主要包括EpiReader(參考文獻11)和動態(tài)實體表示模型(Dynamic Entity Representation,后文簡稱DER模型,參考文獻12)。 EpiReader是目前機器閱讀理解模型中效果較好的模型之一,其思路相當(dāng)于使用AS Reader的模型先提供若干候選答案,然后再對候選答案用假設(shè)檢驗的驗證方式再次確認來獲得正確答案。假設(shè)檢驗采用了將候選答案替換掉問題中的PlaceHolder占位符,即假設(shè)某個候選答案就是正確答案,形成完整的問題句子,然后通過判斷問題句和文章中每個句子多大程度上是語義蘊含(Entailment)的關(guān)系來做綜合判斷,找出經(jīng)過檢驗最合理的候選答案作為正確答案。這從技術(shù)思路上其實是采用了多模型融合的思路,本質(zhì)上和多Reader進行模型Ensemble起到了異曲同工的作用,可以將其歸為多模型Ensemble的集成方案,但是其假設(shè)檢驗過程模型相對復(fù)雜,而效果相比模型集成來說也不占優(yōu)勢,實際使用中其實不如直接采取某個模型Ensemble的方案更實用。 DER模型在閱讀理解時,首先將文章中同一實體在文章中不同的出現(xiàn)位置標記出來,每個位置提取這一實體及其一定窗口大小對應(yīng)的上下文內(nèi)容,用雙向RNN對這段信息進行編碼,每個位置的包含這個實體的片段都編碼完成后,根據(jù)這些編碼信息與問題的相似性計算這個實體不同語言片段的Attention信息,并根據(jù)Attention信息綜合出整篇文章中這個實體不同上下文的總的表示,然后根據(jù)這個表示和問題的語義相近程度選出最可能是答案的那個實體。DER模型盡管看上去和一維匹配模型差異很大,其實兩者并沒有本質(zhì)區(qū)別,一維匹配模型在最后步驟相同單詞的Attention概率合并過程其實和DER的做法是類似的。 3、問題與展望 用深度學(xué)習(xí)解決機器閱讀理解問題探索歷史時間并不長,經(jīng)過最近一年的探索,應(yīng)該說很多模型相對最初的技術(shù)方案來說,在性能提升方面進展明顯,在很多數(shù)據(jù)集上性能都有大幅度的提高,甚至在一些數(shù)據(jù)集(bAbi,CNN,Daily Mail等)性能已經(jīng)達到性能上限。但是總體而言,這距離讓機器像人一樣能夠理解文本并回答問題還有非常遙遠的距離。最后我們對這個研究領(lǐng)域目前面臨的問題進行簡述并對一些發(fā)展趨勢進行展望。 1. 需要構(gòu)建更具備難度的大規(guī)模閱讀理解數(shù)據(jù)集 手工構(gòu)建大規(guī)模的閱讀理解訓(xùn)練數(shù)據(jù)需要花費極大成本,因此目前的不少數(shù)據(jù)集都存在一定問題。某些數(shù)據(jù)集比如MCTest經(jīng)過人的精心構(gòu)建,但是規(guī)模過小,很難用來有效訓(xùn)練復(fù)雜模型。另外一類是采用一定的啟發(fā)規(guī)則自動構(gòu)建的數(shù)據(jù)集,這類數(shù)據(jù)集數(shù)據(jù)規(guī)模可以做得足夠大,但是很多數(shù)據(jù)集失之于太過簡單。不少實驗以及對應(yīng)的數(shù)據(jù)分析結(jié)果證明常用的大規(guī)模數(shù)據(jù)集比如CNN和Daily Mail 相對簡單,正確回答問題所需要的上下文很短(5個單詞窗口大小范圍)(參考文獻3),只要采取相對簡單的模型就可以達到較好的性能,復(fù)雜技術(shù)發(fā)揮不出優(yōu)勢,這從某種角度說明數(shù)據(jù)集難度偏小,這也極大限制了新技術(shù)的探索。 為了能夠促進領(lǐng)域技術(shù)的進一步快速發(fā)展,需要一些大規(guī)模的人工構(gòu)建的閱讀理解數(shù)據(jù)集合,這樣既能滿足規(guī)模要求,又能具備相當(dāng)難度。類似SQuAD數(shù)據(jù)集(參考文獻13)這種采用眾包的方式制作數(shù)據(jù)集合是個比較有前途的方向,也期待更多高質(zhì)量的數(shù)據(jù)集尤其是更多中文數(shù)據(jù)集的出現(xiàn)(哈工大在16年7月份公布了第一份中文閱讀理解數(shù)據(jù)集)。 2. 神經(jīng)網(wǎng)絡(luò)模型偏單一 從上述相關(guān)工作介紹可以看出,目前在機器閱讀理解任務(wù)中,解決方案的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)還比較單一,后續(xù)需要探索更多種多樣的新型網(wǎng)絡(luò)結(jié)構(gòu)及新式模型,以促進這個研究領(lǐng)域的快速發(fā)展。 3. 二維匹配模型需要做更深入的探索 二維匹配模型由于引入了更多的細節(jié)信息,所以在模型性能上具備一定優(yōu)勢。但是目前相關(guān)的工作還不多,而且大多集中在Attention機制的改造上。這個模型需要做更多的探索,比如匹配函數(shù)的創(chuàng)新、多層推理機制的引入等,我相信短期內(nèi)在這塊會有很多新技術(shù)會被提出。 4. 世界知識(World Knowledge)的引入 對于人來說,如果需要真正理解一篇新的文章,除了文章本身提供的上下文外,往往需要結(jié)合世界知識,也就是一些常識或者文章相關(guān)的背景知識,才能真正理解內(nèi)容。目前機器閱讀理解任務(wù)為了降低任務(wù)難度,往往將世界知識排除在任務(wù)之外,使得閱讀理解任務(wù)更單純,這在該領(lǐng)域研究初期毫無疑問是正確的思路,但是隨著技術(shù)發(fā)展越來越完善,會逐漸引入世界知識來增強閱讀理解任務(wù)的難度,也和人類的閱讀理解過程越來越相似。 5. 發(fā)展更為完善的推理機制 在閱讀一篇文章后,為了能夠回答復(fù)雜的問題,設(shè)計合理的推理機制是閱讀理解能力進行突破的關(guān)鍵技術(shù),如上文所述,目前的推理機制大多數(shù)還是采用注意力焦點轉(zhuǎn)移的機制來實現(xiàn),隨著復(fù)雜數(shù)據(jù)集的逐漸出現(xiàn),推理機制會在閱讀理解中起到越來越重要的作用,而今后需要提出更加豐富的推理機制。 參考文獻 [1] Karl Moritz Hermann, Tomas Kocisky, Edward Grefenstette, Lasse Espeholt, Will Kay, Mustafa Suleyman,and Phil Blunsom. 2015. Teaching machines to read and comprehend. In Proc. of NIPS, pages 1684–1692. ? [2] Rudolf Kadlec, Martin Schmid, Ondrej Bajgar, andJan Kleindienst. 2016. Text understanding with the attention sum reader network. tarXiv:1603.01547. ? [3] Danqi Chen, Jason Bolton, and Christopher D. Manning.2016. A thorough examination of the cnn / daily mail reading comprehension task. In Proc. of ACL. ? [4] Bhuwan Dhingra, Hanxiao Liu, William W Cohen, and Ruslan Salakhutdinov. 2016. Gated-attention readers for text comprehension. arXiv preprint arXiv:1606.01549 ? [5] Bo-Hsiang Tseng, Sheng-Syun Shen, Hung-Yi Lee and Lin-Shan Lee,2016. Towards Machine Comprehension of Spoken Content:Initial TOEFL Listening Comprehension Test by Machine. arXiv preprint arXiv: 1608.06378 ? [6] Yiming Cui, Ting Liu, Zhipeng Chen, Shijin Wang, and Guoping Hu. 2016. Consensus attention-based neural networks for chinese reading comprehension. arXiv preprint arXiv:1607.02250. ? [7] Yiming Cui, Zhipeng Chen, Si Wei, Shijin Wang, Ting Liu and Guoping Hu.2016. Attention-over-Attention Neural Networks for Reading Comprehension. arXiv preprint arXiv: 1607.04423v3. ? [8] Shuohang Wang and Jing Jiang.2016. Machine Comprehension Using Match-LSTM and Answer Pointer. arXiv preprint arXiv: 1608.07905 ? [9] Sainbayar Sukhbaatar, Jason Weston, Rob Fergus, et al.2015. End-to-end memory networks. In Proc. of NIPS,pages 2431–2439. ? [10] Alessandro Sordoni, Phillip Bachman, and Yoshua Bengio. 2016. Iterative alternating neural attention for machine reading. arXiv preprint arXiv:1606.02245. ? [11] Adam Trischler, Zheng Ye, Xingdi Yuan, and Kaheer Suleman. 2016. Natural language comprehension with theepireader. arXiv preprint arXiv:1606.02270 ? [12] Sosuke Kobayashi, Ran Tian,Naoaki Okazaki, and Kentaro Inui. 2016. Dynamic entity representations with max-pooling improves machine reading. In NAACL-HLT. ? [13] Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, and Percy Liang. SQuAD: 100,000+ questionsfor machine comprehension of text. In Proceedings of the Conference on Empirical Methods inNatural Language Processing, 2016
商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價值的辦法,實際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉庫,數(shù)據(jù)挖掘工具,報表系統(tǒng)等全方位知識
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/4419.html
摘要:本文著重以人臉識別為例介紹深度學(xué)習(xí)技術(shù)在其中的應(yīng)用,以及優(yōu)圖團隊經(jīng)過近五年的積累對人臉識別技術(shù)乃至整個人工智能領(lǐng)域的一些認識和分享。從年左右,受深度學(xué)習(xí)在整個機器視覺領(lǐng)域迅猛發(fā)展的影響,人臉識別的深時代正式拉開序幕。 騰訊優(yōu)圖隸屬于騰訊社交網(wǎng)絡(luò)事業(yè)群(SNG),團隊整體立足于騰訊社交網(wǎng)絡(luò)大平臺,專注于圖像處理、模式識別、機器學(xué)習(xí)、數(shù)據(jù)挖掘、深度學(xué)習(xí)、音頻語音分析等領(lǐng)域開展技術(shù)研發(fā)和業(yè)務(wù)落地。...
摘要:深度學(xué)習(xí)自動找到對分類重要的特征,而在機器學(xué)習(xí),我們必須手工地給出這些特征。數(shù)據(jù)依賴深度學(xué)習(xí)和傳統(tǒng)機器學(xué)習(xí)最重要的區(qū)別在于數(shù)據(jù)量增長下的表現(xiàn)差異。這是深度學(xué)習(xí)一個特別的部分,也是傳統(tǒng)機器學(xué)習(xí)主要的步驟。 前言 機器學(xué)習(xí)和深度學(xué)習(xí)現(xiàn)在很火!突然間每個人都在討論它們-不管大家明不明白它們的不同! 不管你是否積極緊貼數(shù)據(jù)分析,你都應(yīng)該聽說過它們。 正好展示給你要關(guān)注它們的點,這里...
閱讀 768·2021-11-23 09:51
閱讀 3646·2021-11-15 11:38
閱讀 1027·2021-10-14 09:42
閱讀 3298·2021-09-29 09:35
閱讀 2204·2021-09-03 10:33
閱讀 821·2021-07-30 16:33
閱讀 1614·2019-08-30 15:55
閱讀 1902·2019-08-30 14:04