《Bilateral Multi-Perspective Matching for Natural Language Sentences》(句子匹配)

問題:網絡

Natural language sentence matching (NLSM),天然語言句子匹配,是指比較兩個句子並判斷句子間關係,是許多任務的一項基本技術。針對NLSM任務,目前有兩種流行的深度學習框架。一種是Siamese network: 對兩個輸入句子經過一樣的神經網絡結構獲得兩個句子向量,而後對這兩個句子向量作匹配。這種共享參數的方式能夠有效減小學習的參數,讓訓練更方便。可是這種方式只是針對兩個句子向量作匹配,沒有捕捉到兩個句子之間的交互信息。因而有了第二種框架matching-aggregation:先對兩個句子之間的單元作匹配,匹配結果經過一個神經網絡(CNN或LSTM)彙集爲一個向量後作匹配。這種方式能夠捕捉到兩個句子之間的交互特徵,可是以前的方式只是基於詞級別的匹配忽略了其餘層級的信息,匹配只是基於一個方向忽略了相反的方向。框架

爲了解決matching-aggregation框架的不足,這篇文章提出了一種雙向的多角度匹配模型(bilateral multi-perspective matching)。該模型在同義識別、天然語言推理、答案選擇任務上都取得了比較好的結果。ide


主要方法:函數

NLSM中每一個樣例能夠表示爲這樣一個三元組:(P, Q, y),其中P表示長度爲M的句子序列,Q表示長度爲N的句子序列,y表示P和Q之間關係的標籤。模型的目標就是學習機率分佈Pr(y|P,Q),總體結構以下:學習

 

Word Representation Layer:將句子中的每一個單詞表示爲d維向量,這裏d維向量分爲兩部分:一部分是固定的詞向量,另外一部分是字符向量構成的詞向量。這裏將一個單詞裏面的每一個字符向量輸入LSTM獲得最後的詞向量。編碼

Context Representation Layer:將上下文信息融合到P和Q每一個time-step的表示中,這裏利用Bi-Lstm表示P和Q每一個time-step的上下文向量。spa

Matching Layer:設計

雙向:比較句子P的每一個上下文向量(time-step)和句子Q的全部上下文向量(time-step),比較句子Q的每一個上下文向量(time-step)和句子P的全部上下文向量(time-step)。爲了比較一個句子的某個上下文向量(time-step)和另一個句子的全部上下文向量(time-step),這裏設計了一種 multi-perspective匹配方法。這層的輸出是兩個序列,序列中每個向量是一個句子的某個time-step對另外一個句子全部的time-step的匹配向量。3d

Aggregation Layer.:聚合兩個匹配向量序列爲一個固定長度的匹配向量。對兩個匹配序列分別應用BiLSTM,而後鏈接BiLSTM最後一個time-step的向量(4個)獲得最後的匹配向量。blog

Prediction Layer:預測機率Pr(y|P;Q),利用兩層前饋神經網絡而後接softmax分類。

 

 

Multi-perspective Matching

首先,定義比較兩個向量的multi-perspective餘弦函數f_{m}

 

這裏v_{1} v_{2} 是d維向量,W是l*d的可訓練的參數,l表示的是perspcetive的個數,因此m是一個l維的向量,每一維度表示的是兩個加權向量的餘弦類似度:

 

接着,爲了比較一個句子的某個time-step與另外一個句子的全部time-step,制定了四種匹配策略。爲了不重複,僅從一個方向進行描述,以從P到Q爲例:

這裏的Multi-perspective Matching能夠分爲如下四種方案:

(1) Full-Matching

取一個句子的某個time-step和另外一個句子的最後一個time-step作比較

(2) Max-pooling-Matching

取一個句子的某個time-step和另外一個句子的全部time-step比較後取最大

 

(3) Attentive-Matching

首先計算一個句子的某個time-step和另外一個句子的全部time-step的餘弦類似度

 

 

 

利用上面的餘弦類似度對另外一個句子的全部time-step加權取平均

 

 

 

後比一個句子的某個time-step與另外一個句子的加權time-step

 

(4) Max-Attentive-Matching

方法與(3)相似,只是加權平均變成了取最大




實驗結果:

1 paraphrase identification 同義識別

首先判斷perspective數目對模型的影響:

 

判斷雙向的有效性和模型融合策略的有效性:

 

 

和當前state-of-art的結果比較,證實本模型的有效性。

 

2 Natural Language Inference 天然語言推理

 

3 Answer Sentence Selection 答案選擇

 

簡評:

這篇文章主要是研究句子匹配的問題:

用biLSTM對兩個給定句子分別編碼,從兩個方向P->Q,Q->P對其匹配。在匹配過程當中,從多視野的角度,一個句子的每一步都與另外一個句子的全部time-steps對應匹配。最後用一個BiLSTM被用來集合全部匹配結果到一個固定長度的向量,連上一個全鏈接層獲得匹配的結果。本文模型在三個任務上的實驗結果證實了模型的有效性。此外,本文用到詞級別和字符級別的詞向量。傳統的Siamese網絡結構忽視了低層級的交互特徵,重點放在向量表示上。現階段的一些模型更加註重句子之間交互信息,從不一樣層次不一樣粒度來匹配句子的模型愈來愈多。本文就是基於matching-aggregation框架,從多個視角不一樣方向去提取句子的特徵,獲得了更好的結果。

 

 

 

參考:https://zhuanlan.zhihu.com/p/26548034

相關文章
相關標籤/搜索