• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于擴展的S-LSTM的文本蘊含識別

      2020-07-18 04:13:16胡超文鄔昌興楊亞連
      計算機研究與發(fā)展 2020年7期
      關鍵詞:短語語義編碼

      胡超文 鄔昌興 楊亞連

      (華東交通大學軟件學院 南昌 330013)

      文本蘊含關系(textual entailment)作為一種基本的文本間語義關系,廣泛存在于自然語言文本中.文本蘊含識別(textual entailment recognition, TER)是自然語言處理領域的一項基礎性工作,其識別性能的提高將促進許多下游自然語言處理應用的發(fā)展.例如在問答系統(tǒng)中用來生成候選答案、文檔摘要中用來輔助精簡文本、機器翻譯中用來評估翻譯系統(tǒng)的性能[1].文本蘊含識別通常被看作一個分類任務,即給定前提與假設(通常為2個句子),自動判斷它們之間是否存在蘊含關系或矛盾關系.如表1所示,在常用的中文CNLI(1)https:github.comblcunlpCNLI(Chinese natural language inference)和英文SNLI[2](stanford natural language inference)數(shù)據(jù)集中,定義了前提與假設之間的3種關系:蘊含、中立和矛盾.

      Table 1 Examples in CNLI表1 CNLI數(shù)據(jù)集中的例子

      文本蘊含識別同時也是一項非常具有挑戰(zhàn)性的任務.有的情況下可以基于2個句子中具有矛盾關系的詞或短語對進行推斷,如表1矛盾示例中的“黑狗”與“白狗”;而有些情況下則需要理解2個句子的語義才能進行準確的判斷,如表1中的蘊含示例和中立示例.因此,文本蘊含識別既需要句子級別的全局信息,也需要短語級別的局部信息.

      早期的文本蘊含識別方法主要包括:基于規(guī)則的方法[3]、基于相似度的方法[4]、基于對齊特征或其他人工定義特征的機器學習方法[5-6].這些早期的方法由于不能很好地對句子的語義進行建模,識別的性能并不理想.近年來,基于深度學習的方法在語義建模方面取得了很好的效果.例如基于雙向長短時記憶網(wǎng)絡(bidirectional long short-term memory network, Bi-LSTM)學習句子語義表示的模型在句法分析、機器翻譯和實體關系抽取等諸多自然語言任務上取得了當前最好的效果[7-9].就文本蘊含識別而言,基于深度學習方法的性能已經(jīng)全面超越早期的方法,成為當前主流的文本蘊含識別方法.

      現(xiàn)有基于深度學習的文本蘊含識別方法可大致歸為2類:基于句子編碼的方法[2,10-17]和基于短語交互的方法[18-23].前者通常首先利用深度神經(jīng)網(wǎng)絡(例如Bi-LSTM、卷積神經(jīng)網(wǎng)絡CNN等)分別學習前提和假設的語義向量表示,然后推導它們之間的語義關系.后者通常首先分別學習前提和假設中詞和短語(ngram)在上下文中的語義向量表示,并建模這些局部信息之間的語義關系,繼而推斷前提和假設之間的全局語義關系.當前基于深度學習的方法雖然取得了較好的識別性能,但仍然具有2點不足之處:

      1) 分別學習前提和假設(或其中的詞和短語)的語義向量表示,而沒有把它們當作一個整體.直覺上,人類在進行蘊含關系推斷時,會來回閱讀2個句子.通過它們之間的信息交換,以達到充分理解句子語義的目的.

      2) 沒有同時利用句子級別的全局信息和短語級別的局部信息.例如基于句子編碼的方法主要利用了句子級別的信息,而基于短語交互的方法則主要利用了詞和短語級別的信息.

      最近提出的S-LSTM(sentence-state LSTM)是一種能有效地建模文本序列的神經(jīng)網(wǎng)絡模型[24].S-LSTM通過迭代的方式在句子和短語之間交換信息,以同時學習句子級別的全局語義表示和短語級別的局部語義表示,在多個文本分類和序列標注任務上取得了優(yōu)于Bi-LSTM的效果.本文提出一種基于擴展的S-LSTM的文本蘊含識別模型.具體地,我們把前提和假設看作一個整體,擴展S-LSTM以同時學習它們的語義表示.也就是說,在學習前提(假設)及其短語的語義向量表示時,考慮假設(前提)的語義信息.另一方面,在建模前提和假設之間的語義關系時,既考慮句子級別的全局信息,也考慮詞和短語級別的局部信息.

      在常用的英文SNLI數(shù)據(jù)集和中文CNLI數(shù)據(jù)集上的實驗結果表明,本文提出的方法與基于句子編碼或基于短語交互的基準方法相比,識別性能取得了一定的提高.

      1 相關工作

      借助于深度學習的發(fā)展和大規(guī)模數(shù)據(jù)集SNLI的發(fā)布,基于深度學習的文本蘊含識別方法成為當前的研究熱點之一,其性能已經(jīng)全面超越早期的方法.最近的研究工作可大致分為2類:基于句子編碼的方法和基于短語交互的方法.

      1) 基于句子編碼的方法首先通過Bi-LSTM等神經(jīng)網(wǎng)絡分別學習前提和假設的語義向量表示,然后使用拼接、內(nèi)積和作差等簡單操作建模它們之間的語義關系[2,10-17].例如Bowman等人[2]基于LSTM從左至右學習前提和假設的語義表示;Liu等人[11]使用Bi-LSTM網(wǎng)絡從左至右和從右至左2個方向加強語義的學習和表示;Chen等人[12]則使用多層Bi-LSTM網(wǎng)絡學習前提和假設的層次化的語義表示,并基于池化操作(pooling)提取顯著的特征.為了利用句子的結構信息;Mou等人[13]使用一種基于依存樹結構的卷積神經(jīng)網(wǎng)絡,并取得了較好的識別性能;譚詠梅等人[14]聯(lián)合使用CNN和Bi-LSTM網(wǎng)絡,以充分發(fā)揮CNN利于局部信息建模和Bi-LSTM利于全局信息建模的優(yōu)點.最近Shen等人[15]使用自注意力(self-attention)機制代替以前常用的Bi-LSTM和CNN,以發(fā)揮其能夠捕獲任意距離詞之間的依賴的優(yōu)勢,并通過Mask矩陣加入方向信息.這類方法強調(diào)如何學習前提和假設的語義向量表示,而通常使用較簡單的操作建模語義關系.

      2) 基于短語交互的方法首先分別學習前提和假設中詞和短語在上下文中的語義向量表示,然后引入注意力機制(attention mechanism)捕獲這些局部信息之間的語義關系,繼而推斷前提和假設之間的全局語義關系[18-23].例如Parikh等人[18]將蘊含關系識別問題分解成詞之間的對齊問題,利用雙向注意力機制直接基于詞的語義向量表示建模前提和假設之間的關系;Chen等人[20]首先基于Bi-LSTM編碼詞在上下文中的詞義表示,然后基于雙向注意力機制(bi-attention mechanism, BiAttn)計算局部語義信息,最后把這些局部信息輸入到另一個Bi-LSTM計算全局蘊含關系;Tan等人[21]融合了4種不同的雙向注意力機制的計算方法,用于加強局部語義關系的計算.這類方法強調(diào)如何顯式地建模詞之間或短語之間的交互,以有效地捕獲局部語義關系.

      本文提出的方法可以看作是基于句子編碼方法和短語交互方法的結合與改進,主要體現(xiàn)在2方面:1)通過擴展S-LSTM網(wǎng)絡,同時學習前提和假設的語義向量表示.這一點可以看作是對基于句子編碼方法的改進,即學習了更好的句子級別的信息.2)在建模語義關系時,同時考慮句子級別和短語級別的信息,這可以看作是對基于短語交互方法的改進.另外,本文也是首次把S-LSTM網(wǎng)絡應用到文本蘊含識別中,取得了比常用的Bi-LSTM更好的效果.

      2 基于擴展的S-LSTM的文本蘊含識別模型

      基于擴展的S-LSTM的文本蘊含識別模型以前提和假設為輸入,輸出它們之間是“蘊含”、“中立”還是“矛盾”關系.如圖1所示,該模型包括5層:詞向量層、編碼層、交互層、聚合層和MLP(multilayer perceptron)層.

      Fig. 1 Extended S-LSTM based textual entailment recognition model圖1 基于擴展的S-LSTM的文本蘊含識別模型

      詞向量層把詞編碼成向量表示;編碼層基于擴展的S-LSTM學習短語級別的信息和句子級別的信息;交互層基于雙向注意力機制學習局部的語義關系表示;聚合層用于學習全局的語義關系表示;MLP層用于輸出最終的分類結果.圖1編碼層中雙向箭頭和交互層中黑色大圓圈部分為本文的2處改進,即編碼層前提和假設之間的信息交換和交互層中句子級別信息的利用.下面各節(jié)分別對每一層進行詳細的介紹.

      2.1 詞向量層

      基于神經(jīng)網(wǎng)絡的自然語言處理模型通常先把詞表示為向量,用作模型的輸入.給定基于大規(guī)模語料預訓練好的詞向量(word embeddings)E∈R|V|×d,其中,|V|表示詞表的大小,d為詞向量的維度,E中的每一行即為詞表中對應詞的語義向量表示.詞向量層把前提和假設(可看作詞序列)表示為向量序列,分別記作A=(a1,a2,…,ai,…,am)和B=(b1,b2,…,bj,…,bn),其中,ai,bj∈Rd分別為對應詞的向量表示,m和n分別為前提和假設的長度.大量的研究工作證實預訓練的詞向量中包含語義信息,例如“高興”和“快樂”這2個詞在語義向量空間比較接近,非常適合用作自然語言模型的輸入.

      2.2 編碼層

      以前提和假設的詞向量表示作為輸入,編碼層用于計算它們的語義向量表示.具體地,利用本文提出的擴展的S-LSTM(詳見第4節(jié))把前提和假設分別表示為

      Ha=(ha1,…,hai,…,ham,ga)T,
      Hb=(hb1,…,hbi,…,hbn,gb)T,

      (1)

      其中,hai可以看作是前提中以第i個詞為中心的短語(ngram)的語義向量表示,是局部的語義信息;ga是前提的語義向量表示,是全局的語義信息;類似地,hbj是假設中短語的語義表示,gb是假設的全局語義表示;Ha∈R(m+1)×d和Hb∈R(n+1)×d為編碼層的輸出.

      與常用的Bi-LSTM相比,擴展的S-LSTM具有2個方面的優(yōu)點:

      1) 如圖1編碼層中雙向箭頭連線所示,在學習前提中短語的向量表示hai時,會考慮假設的語義gb,反之亦然,具體可參見第4節(jié)式(6).

      2) 如圖1交互層中黑色大圓圈所示,在利用短語表示的同時,還利用了前提和假設在句子級別的語義向量表示ga和gb.理論上,Bi-LSTM中最后一個詞對應的表示也可以看作是整個句子的語義表示.然而,當句子較長時,Bi-LSTM難以捕獲詞之間長距離的依賴信息.因此,多數(shù)情況下其最后一個詞對應的向量表示實質(zhì)上僅是短語級別的信息.

      2.3 交互層

      (2)

      (3)

      其中,G是多層前饋神經(jīng)網(wǎng)絡,d1是G中最后一層的維度,[;]表示向量的拼接操作.

      在局部語義關系的計算過程中,既有短語表示hai與hbj之間的交互,又有短語表示hai(hbj)與句子表示gb(ga)之間的交互,還有句子表示ga與gb之間的交互.可以說,通過句子級信息的引入,交互層更好地建模了前提和假設之間的局部語義關系.

      2.4 聚合層

      聚合層在局部語義關系的基礎上計算全局語義關系表示,采用與文獻[20]中類似的方法:

      va=[max(Va);avg(Va)],
      vb=[max(Vb);avg(Vb)],
      o=[va;vb;va·vb;|va-vb|],

      (4)

      其中,va,vb∈R2d1;max和avg分別表示最大池化和平均池化操作;va·vb表點乘,|va-vb|表示作差后取絕對值;o∈R8d1即為全局語義關系表示.

      2.5 MLP層

      MLP層由多個非線性隱層和一個softmax層組成,用于計算最終的分類結果:

      (5)

      3 擴展的S-LSTM

      擴展的S-LSTM的網(wǎng)絡結構如圖2所示,其基本思想是把常用于單個句子建模的S-LSTM[24]擴展用于處理句對的情況.核心是同時編碼2個句子,并考慮它們之間信息的交換.具體地,圖2中左半部分是對前提的建模,右半部分是對假設的建模,假設到前提的連線(為了保持簡潔,省略了前提到假設的連線)體現(xiàn)了它們之間信息的交換.

      Fig. 2 Extended S-LSTM 圖2 擴展的S-LSTM

      (6)

      4 實 驗

      4.1 數(shù)據(jù)與設置

      我們在常用的英文SNLI數(shù)據(jù)集和中文CNLI數(shù)據(jù)集上驗證所提方法的有效性.SNLI原始數(shù)據(jù)集包含570 152個句子對,每個句子對使用以下關系標記:蘊含、矛盾、中立和“-”,其中“-”表示人類標注者缺乏共識而最終沒有給定標簽.為了進行公平的比較,依照文獻[2]中的實驗設置,剔除掉帶有“-”標簽的數(shù)據(jù),劃分為訓練集、驗證集和測試集,各類別的分布情況如表2所示.類似地,把中文CNLI也劃分為訓練集、驗證集和測試集,如表3所示.

      Table 2 Training, Validation and Test Sets on SNLI表2 SNLI上的訓練集、驗證集和測試集

      Table 3 Training, Validation and Test Sets on CNLI表3 CNLI上的訓練集、驗證集和測試集

      使用StanfordCoreNLP工具包(2)https:stanfordnlp.github.ioCoreNLP對英文SNLI數(shù)據(jù)集進行tokenization處理,對中文CNLI數(shù)據(jù)集進行分詞.實驗中,使用預訓練好的300維的英文Glove詞向量(3)http:nlp.stanford.edudataglove.840B.300d.zip,以及預訓練好的300維的中文詞向量(4)https:pan.baidu.coms1kwxiPouou6ecxyJdYmnkvw.在訓練的過程中,不進一步優(yōu)化這些詞向量.英文詞表大小為36 396,中文詞表大小為43 586.模型中的參數(shù)隨機初始化為均值為0、方差為0.01的正態(tài)分布.使用訓練實例的真實標記與模型預測的分類結果之間的交叉熵(cross-entropy loss)作為代價函數(shù).為了緩解訓練中可能出現(xiàn)的過擬合問題,在模型的編碼層使用了dropout技術[25].實驗代碼基于TensorFlow1.13實現(xiàn).

      基于驗證集上的最優(yōu)性能選擇模型中超參(hyper parameters)的取值.實驗中發(fā)現(xiàn),表4中所列各超參的取值,既適用于英文SNLI數(shù)據(jù)集,也適用于中文CNLI數(shù)據(jù)集.某種程度上,這也反映了所提方法的穩(wěn)定性.

      Table 4 Values of Hyper Parameters表4 超參的值

      4.2 結 果

      為了驗證所提方法在文本蘊含識別任務上的有效性,我們對比基準模型:

      1) DeBiAttn_2016[18].直接把詞向量作為交互層的輸入,沒有使用編碼層.該模型首次把雙向注意力機制(BiAttn)引入文本蘊含識別中,取得了較好的效果.

      2) ESIM_2017[20].基于Bi-LSTM對前提和假設分別編碼,交互層基于BiAttn建模局部語義表示,聚合層使用另一個Bi-LSTM計算全局語義關系,取得了當時最好的識別效果.

      3) MwAN_2018[21].采用與ESIM_2017類似的模型,不同之處在于綜合了BiAttn的4種不同計算方法建模局部語義關系.

      4) KIM_2018[26].采用與ESIM_2017類似的模型,并集成了WordNet中的同義詞對、反義詞對、上下位詞對等外部知識.

      5) DAN_2018[27].聯(lián)合英文文本蘊含識別和篇章連接詞預測2個任務,可以看作是利用了額外訓練數(shù)據(jù)的半監(jiān)督方法.

      6) MTDNN+BERT_2019[28].以大規(guī)模預訓練的BERTLarge模型[29]為基礎,在多任務框架下聯(lián)合訓練多個語義理解任務,取得了當前最好的性能.

      除了上述基準模型之外,實驗中我們還對比了一些簡化的模型,分別用于驗證本文改進之處的效果:

      1) Bi-LSTM+BiAttn與S-LSTM+BiAttn(5)S-LSTM+BiAttn模型在交互層僅使用了短語級別的語義表示,沒有利用句子級的語義信息..在這2個基本的模型中編碼層以Bi-LSTMS-LSTM學習前提和假設的語義表示.

      2) Ours-1.本文提出模型的一種簡化,即把式(1)中的ga和gb去掉,用于驗證編碼層信息交換的作用.

      4) Ours-3.本文提出的模型.

      從表5中的實驗結果可以看出:1)與沒有利用外部資源的模型DeBiAttn_2016,ESIM_2017,MwAN_2018相比,我們提出的模型(Ours-3)取得了相同或更高的準確率.2)與使用了外部資源的KIM_2018和DMAN_2018相比,我們提出的模型取得了可比的性能.3)MTDNN+BERT_2019取得了當前最好的性能,其性能的提高主要來源于基于超大規(guī)模語料預訓練的BERTLarge模型的使用.從某種角度來說,不能直接與本文所提出的模型進行對比.4)表5的下半部分中,S-LSTM+BiAttn的效果略好于Bi-LSTM+BiAttn的效果,說明把S-LSTM用于文本蘊含識別任務的有效性;Ours-1和Ours-2的效果都好于S-LSTM+BiAttn的效果,說明在編碼層考慮前提和假設之間信息的交換和在交互層考慮句子級的全局信息這2處改進都是有效的;Ours-3的效果好于Ours-1和Ours-2的效果,說明聯(lián)合使用這2處改進能進一步提升識別的性能.綜上所述,本文提出的模型是有效的,取得了同類模型中(沒有使用外部資源)較好的識別性能.

      Table 5 Results on SNLI表5 SNLI上的實驗結果

      如表6所示,我們提出的模型在中文CNLI數(shù)據(jù)集上的實驗結果與英文CNLI上的結果具有類似的趨勢,再次驗證了模型的有效性.

      Table 6 Results on CNLI表6 CNLI上的實驗結果

      4.3 超參分析

      Fig. 3 Performance on the SNLI validation set圖3 SNLI驗證集上的性能

      4.4 錯誤分析

      參照文獻[30]分析SNLI中預測錯誤實例的方法,我們從CNLI的測試集中隨機抽樣了100個預測錯誤的實例進行分析.把導致預測錯誤的原因大致分成6類(示例如表7所示):

      1) 詞重復(30%).前提和假設中包含大量相同的詞,會使模型傾向于預測其為蘊含關系.某種程度上,這說明現(xiàn)在的模型學到的很可能僅是淺層的特征,而不是真正的深層語義.

      2) 否定詞(6%).否定詞的出現(xiàn)容易導致模型傾向于預測其為矛盾關系.例如,示例中的“不是”.

      3) 反義詞(9%).模型較難識別出前提和假設中具有相反意義的詞.例如,示例中的“未煮過”和“熟”.

      4) 背景知識(18%).沒有一定的知識背景很難正確判別這些實例的關系.例如,示例中“樂隊在舞臺上”暗含“音樂會”的舉行.

      Table 7 Examples with Wrong Predictions in the CNLI Test Set表7 CNLI測試集中預測錯誤的示例

      5) 歧義(8%).有些實例,人類也很難作出正確的判斷,存在一定的歧義.例如“在顯示器旁邊”有可能是“展示”,也可能不是.

      6) 其他(29%).有些實例沒有明顯的錯誤來源.

      從以上錯誤分析可以看出,現(xiàn)有文本蘊含識別模型還有很多可以改進的地方.例如如何集成外部知識庫以緩解錯誤3),4);如何消除詞重復帶來的預測偏見(bias)等.

      5 總 結

      本文提出了一種基于擴展的S -LSTM的文本蘊含識別模型.具體地,從編碼層中前提和假設的信息交換的建模、交互層中句子級別的全局語義的利用這2個方面對前人的工作進行改進.所提模型在英文SNLI和中文CNLI數(shù)據(jù)集上,都取得了同類方法中較好的識別性能.在未來的工作中,我們將探索把擴展的S -LSTM用于其他句子對相關的任務,如隱式篇章關系識別、復述識別等.

      猜你喜歡
      短語語義編碼
      基于SAR-SIFT和快速稀疏編碼的合成孔徑雷達圖像配準
      《全元詩》未編碼疑難字考辨十五則
      語言與語義
      子帶編碼在圖像壓縮編碼中的應用
      電子制作(2019年22期)2020-01-14 03:16:24
      Genome and healthcare
      “上”與“下”語義的不對稱性及其認知闡釋
      認知范疇模糊與語義模糊
      語義分析與漢俄副名組合
      外語學刊(2011年1期)2011-01-22 03:38:33
      宜宾县| 永德县| 通许县| 乐业县| 兴海县| 健康| 宝丰县| 丹凤县| 女性| 宁陕县| 根河市| 阿巴嘎旗| 定兴县| 辉南县| 长宁区| 晋城| 邮箱| 基隆市| 阿图什市| 岐山县| 蓬安县| 湘潭市| 红安县| 巴彦县| 无极县| 南木林县| 常德市| 五大连池市| 古交市| 承德县| 紫阳县| 西峡县| 盖州市| 塔城市| 神农架林区| 常州市| 息烽县| 常熟市| 十堰市| 黔西| 东平县|