QA問題總結

最近看了一些QA任務關於《Lstm-based Deep Learning Models for Non- factoid Answer Selection》的體會

1.本文針對答案選擇任務應用了通用的深度學習框架,該框架不依賴於手動定義的特徵或語言工具。基本框架是建立BiLSTM模型的問題和答案的嵌入,並通過餘弦相似度來衡量它們的相似程度。

2.文章在通用的框架上做了幾點改進:通過將卷積神經網絡CNN與基本框架相結合,爲問題和答案學習更復合的表示,通過簡單而有效的注意力機制來根據問題上下文生成答案表示。

3.給定一個(q,a)對,q是問題,a是一個候選答案,首先生成問題和答案的詞向量,然後將兩個詞向量序列分別輸入到BiLSTM中,生成問題和答案的固定長度的的向量,然後利用餘弦相似度來衡量它們的距離,將訓練目標定義hinge loss:

L=max(0,M - cosine(q,a+) + cosine(q,a-)),其中a+是真實答案,a-爲採樣的錯誤答案,M是常量。

基礎模型:

4.模型在基礎版本的BiLSTM輸出基礎上加入CNN結構,以便給出問題和答案的更多複合表示。CNN用在BiLSTM後面可以獲取biLSTM輸出的向量之間的局部信息。這裏還做了一個變換,將BiLSTM輸出的 矩陣以每個詞爲中心向兩邊擴展k個(這也是卷積層的filter gram size),得到 矩陣再做卷積,這樣做可以增強對局部信息的利用,在模型複雜度不是很高的情況下,確實有更好的效果。經過卷積層以後(c個卷積核),得到 的輸出矩陣,接着利用max pooling得到,

5.當BiLSTM模型必須在問題和答案上長距離傳播依賴關係時,隱藏向量的固定寬度成爲瓶頸。通過動態調整問題答案的更多信息部分,可以使用注意力機制來緩解這種弱點。這一策略已被用於許多其他自然語言處理任務中。在max或mean pooling之前,每個BiLSTM輸出向量將乘以softmax權重,該權重由BiLSTM的問題嵌入確定。具體來說,就是將 與 之間做一個特徵的交互,給定在時間t時答案側的BiLSTM的輸出向量 和問題嵌入 。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章