標籤:

《A COMPARE-AGGREGATE MODEL FOR MATCHING TEXT SEQUENCES》閱讀筆記

轉載請註明出處:西土城的搬磚日常 - 知乎專欄

原文鏈接:arxiv.org/pdf/1611.0174

來源:ICLR2017

問題介紹:

這篇論文解決的問題是句子匹配任務,具體來講就是衡量兩個句子之間的關係。許多NLP問題都可以看成是句子匹配任務,例如之前介紹的答案選擇任務,以及文本蘊含任務。答案選擇是計算問題跟答案之間的相關性,從而推斷這個答案是否合適,而文本蘊含任務是推斷前提跟假說之間的關係。它們雖然最後的預測目標不同,但是它們本質上都是衡量句子之間的關係,對於句子的處理過程是可以相互借鑒的。這篇論文就是提出了一個通用的框架用來處理這些句子匹配問題。

主要方法:

這篇論文的方法是基於Compare-Aggregate 框架設計的,這個框架最早是由Google的parikh等人在《A Decomposable Attention Model for Natural Language Inference》這篇文章中提出的,用於解決Natural Language Inference問題。關於這篇文章可以看一下另外一篇閱讀筆記《A Decomposable Attention Model for Natural Language Inference》閱讀筆記。作者重點比較了幾種不同的comparison function,下面還是先整體看一下整個模型。

Preprocessing:首先對原始的問題和答案進行預處理,使每個詞獲得句子的上下文信息,具體公式如下:

這裡類似LSTM的門函數,只是這裡做了一點簡化,只保留了輸入門。 bigodot 表示element-wise 乘積,W、b是模型參數。

Attention:這裡的attention就是傳統的attention機制,用問題對答案加attention。具體公式如下:

這裡我們得到了attention-weighted vectors H。

Comparison:這個部分作者比較了多種comparison方式,都是對上一步得到的attention-weighted vector H 以及 答案向量bar{A}進行comparison。

Neuralnet就是將兩個向量拼接起來,然後過一層神經網路。

Neuraltensornet用張量網路(neural tensor network)連接兩個向量,再過一次relu。

這裡就是計算兩個向量的歐式距離以及它們的餘弦相似度,再把兩者的結果拼接起來。

這兩種方法主要是基於element-wise的方式對兩個向量進行比較。

Submult+nn就是把以上兩個比較方式的結果進行拼接,再過一層神經網路。

注意這裡的比較都是針對兩個句子對應位置上的每個詞進行比較,所以得到的結果向量的長度與答案的長度相同。

Aggregation:對comparison的結果進行整合,這裡用CNN來進行aggregation。

利用這個向量 r ,根據不同的任務進行模型的訓練和預測,其中文本蘊含就是做一個三分類,對於答案選擇任務,則是從多個候選答案中進行選擇,那麼可以用下式進行預測

實驗結果:

可以看到這篇文章的模型在QA的數據集上取得了非常好的結果,三個數據集上都取得了state-of-art的效果。其中element-wise multiplication相關的方式是比較好的comparison function,比我們之前常用的餘弦相似度,歐氏距離等要高出不少。

第一個圖來自MovieQA數據集,第二張圖來自InsuranceQA數據集,它們都是CNN的卷積結果,可以看到在答案句中跟問題相關的部分更吸引模型的attention。

簡評:雖然Compare-Aggregate框架不是作者最早提出的,但是作者很好地找到了這類句子匹配問題的共性所在,並歸納出了解決這類問題的通用方法。同時作者分析和比較的這六種comparison function確實會影響到實驗的結果。作者在多個數據集上進行了實驗,驗證了模型的有效性,比傳統的Siamese model要高出不少,說明Siamese model雖然學習的是句子的整體表示,但一定程度上還是丟失了一些信息。除了這個模型本身,作者在這篇論文中還詳細地介紹了用到的四個數據集的許多相關工作和baseline,我認為這對於我們了解answer selection和textual entailment這兩個任務是很有幫助的,有興趣的話可以看看文章中提到的一些相關工作。


推薦閱讀:

神經網路知識梳理——從神經元到深度學習
梯度下降演算法在Neural Network下的理解
酷站推薦 - fast.ai - Making Neural Nets Uncool Again
深度學習(Deep Learning)基礎概念3:神經網路實現邏輯回歸模型測試題及解答
都是假的---生成式對抗網路GAN完全指南終極版(一)

TAG:神经网络 |