CSRAN

本文介紹論文《Co-Stack Residual Affinity Networks with Multi-level Attention Refinement for Matching Text Sequences》的相關(guān)工作,本文是CAFE算法的擴(kuò)展版,CAFE算法只計算了one-layer,而本文作者則計算了multi-layer。事實(shí)上簡單的stacked layer并不會帶來太大效果的提升,甚至可能導(dǎo)致效果變差,為了訓(xùn)練深層次的網(wǎng)絡(luò),常用的三種網(wǎng)絡(luò)結(jié)構(gòu)為highway net、residual net、dense net。本文參考三種網(wǎng)絡(luò)的設(shè)計方式,設(shè)計了一個網(wǎng)絡(luò)更深的CAFE。但是本人在復(fù)現(xiàn)論文效果的時候發(fā)現(xiàn)參考論文的方式,一直達(dá)不到論文的效果,因此對論文中的模型結(jié)構(gòu)稍作修改,將stacked-LSTM去掉,然后直接用highway做多層的CAFE投影,發(fā)現(xiàn)效果還不錯。
Input Encoder
首先將word representation和character representation進(jìn)行拼接,然后經(jīng)過2層的highway network進(jìn)行特征非線性投影。
Multi-level Attention Refinement
這里就比較簡單了,直接講上面講到的CAFE作為block,參考類似于residual network的方式,輸出為input + 6。6為CAFE中抽取的特征:inter-attention有3維,intra-attention有3維。

Co-Stack Residual Affinity
Co-Stacking
Co-Stacking模塊負(fù)責(zé)融合多層的特征輸出a、b?;叵胛覀冏畛S玫南嗨频梅钟嬎悖疚膶ζ溥M(jìn)行多層擴(kuò)展,在多層中選擇最大相似度的詞。

Bidirectional Alignment
通過上面計算的相似矩陣,計算alignment representation。作者論文這里的描述較為模糊,感覺公式推導(dǎo)不過來,因此在實(shí)現(xiàn)的時候稍作修改,采用了alignment-pooling的方式進(jìn)行實(shí)現(xiàn)。


Matching and Aggregation Layer
最后對多層representation和多層alignment representation進(jìn)行特征增廣,然后通過時序模型進(jìn)行encode。這里作者只是單純的對時序模型輸出進(jìn)行求和,本人實(shí)現(xiàn)的時候也稍作修改,參考之前的論文這里采用了MeanMax。


Output and Prediction Layer
這里通過2層的全連接神經(jīng)網(wǎng)絡(luò)抽取最終用于classification的representation,然后通過softmax進(jìn)行歸一。
MwAN

本文介紹論文《Multiway Attention Networks for Modeling Sentence Pairs》的相關(guān)工作,本文的主要思路是如何利用不同attention所取得的representation來加強(qiáng)特征表示,作者這里采用了大量的attention計算用于對結(jié)果進(jìn)行加權(quán)求和。1)作者采用4種不同的attention計算:concat-attention、dot-attention、bilinear-attention和minus-attention;2)由attention計算得到的alignment representation拼接上原始的representation經(jīng)過一個gate控制信息傳播,接著經(jīng)過一個GRU網(wǎng)絡(luò)對拼接之后的特征編碼,這個時候就會得到四種不同的特征;3)如何對這四種特征進(jìn)行融合,這里仍然采用attention進(jìn)行加權(quán)融合;4):融合之后的特征再經(jīng)過一個GRU網(wǎng)絡(luò)進(jìn)行最后的編碼,GRU輸出的是每個詞的輸出,因此需要對其進(jìn)行aggregate;5)本文再次對文本Q計算attention加權(quán)聚合所有詞,最后通過該聚合后的特征對之前的GRU輸出做最后的attention加權(quán)輸出??梢钥吹秸麄€模型應(yīng)用的大量的attention計算,就是為了避免簡單取max-pooling、mean-pooling導(dǎo)致信息損失的問題。原諒我的無能,參考作者的思路進(jìn)行實(shí)現(xiàn),并未能取得作者的效果。
Encoding Layer

本文encoding layer與之前稍有不同,本文拼接word embedding和context embedding作為input representation,其中context embedding通過ELMo預(yù)訓(xùn)練得到。然后對input representation通過GRU網(wǎng)絡(luò)進(jìn)行編碼。
Multiway Matching
本文針對2個文本中不同詞,設(shè)計了4種不同的attention函數(shù):concat attention、bilinear attention、dot attention和minus attention。

文本P第t個詞與文本Q中每個詞計算一次attention,然后通過該attention對文本Q進(jìn)行加權(quán)用于表示文本P第t個詞。
Aggregation
以concat attention為例,對concat之后的特征通過一個gate決定concat之后的特征重要程度,類似于信息控制,然后經(jīng)過GRU網(wǎng)絡(luò)進(jìn)行特征編碼。

接下來需要對所有的attention輸出進(jìn)行混合聚合,本文采用attention機(jī)制對各個attention輸出進(jìn)行加權(quán)自適應(yīng)求和

然后,將混合聚合后的特征采用GUR編碼

Prediction Layer

對文本Q的編碼特征通過attention-pooling選擇最要的信息。然后通過該特征與混合編碼特征計算co-attention,最后通過該co-attention對混合編碼特征加權(quán)求和

最后,整個框架采用交叉熵作為損失函數(shù)

DRCN

本文介紹論文《Semantic Sentence Matching with Densely-connected Recurrent and Co-attentive Information》的相關(guān)工作,本文網(wǎng)絡(luò)結(jié)構(gòu)相對簡單,主要參考了dense-net的網(wǎng)絡(luò)結(jié)構(gòu),然后在concatenate時添加attentive information來加強(qiáng)多層網(wǎng)絡(luò)特征編碼能力。
Word Representation Layer
本文input representation由四部分組成:靜態(tài)word embedding、動態(tài)更新word embedding、character embedding和句子間相同詞。

Densely connected Recurrent Networks
普通的stacked RNNs由上一層的輸出直接做為下一層的輸入,但是由于梯度消失和梯度爆炸的問題導(dǎo)致模型非常難以訓(xùn)練

為了避免上面的問題,residual connection通過shortcut完成反向傳播。

然而求和運(yùn)算會阻礙信息的傳播,參考densenet的網(wǎng)絡(luò)設(shè)計,作者通過concatenate先前所有層的輸出作為下一層的輸入,concatenate運(yùn)算保證了先前隱層的所有特征。

Densely-connected Co-attentive networks
作者通過編碼之后兩個句子向量計算co-attention


然后將co-attentive information、上一層rnn輸出和上一層rnn輸入concatenate


Bottleneck component
隨著網(wǎng)絡(luò)層數(shù)越深,網(wǎng)絡(luò)參數(shù)越來越大。為了避免這個問題,作者采用autoencoder對特征進(jìn)行壓縮,在減少特征數(shù)的同時還能保持原始的信息。
Interaction and Prediction Layer
在經(jīng)過多層網(wǎng)絡(luò)之后,作者通過max-pooling對特征進(jìn)行aggregate。然后對question和answer特征進(jìn)行組合,最后通過2層的全連接層抽取用于classification的特征。

DMAN

本文介紹論文《Discourse Marker Augmented Network with Reinforcement Learning for Natural Language Inference》的相關(guān)工作,文章涉及的內(nèi)容比較多包含了遷移學(xué)習(xí)、增強(qiáng)學(xué)習(xí)和NLI。首先通過特征遷移利用其他數(shù)據(jù)來豐富目前的特征;在多人標(biāo)注時,通用的做法是少數(shù)服從多數(shù),例如:neural, neural, entailment, contradiction, neural,最終的標(biāo)簽是neural,非0即1的標(biāo)簽太過生硬未能體現(xiàn)出該條樣本的置信度,作者這里采用預(yù)測標(biāo)簽在該條文本標(biāo)注集的占比做為reward,因此最終的目標(biāo)是交叉熵?fù)p失最小,reward最大。
Sentence Encoder Model
首先定義source domain的網(wǎng)絡(luò)結(jié)構(gòu):通過BiLSTM對句子進(jìn)行編碼,然后對編碼特征進(jìn)行抽?。╩ax-pooling特征和最后時刻特征)




Discourse Marker Augmented Network
Encoding Layer

Interaction Layer
文本匹配模型常用的就是特征交叉,本文做特征交叉時考慮了source domain的特征

通過interaction matrix計算align representation


然后通過align representation做特征增廣

最后通過BiLSTM對特征編碼,并對其輸出采用attention加權(quán)求和


Output Layer

Training
在訓(xùn)練階段時,作者結(jié)合監(jiān)督學(xué)習(xí)的交叉熵?fù)p失和增強(qiáng)學(xué)習(xí)的reward共同優(yōu)化模型,其中reward為預(yù)測標(biāo)簽在標(biāo)注者中的占比。




SRL

本文介紹論文《I Know What You Want: Semantic Learning for Text Comprehension》的相關(guān)工作,通過對input sentence做語意角色標(biāo)注來訓(xùn)練tag embedding,然后通過該embedding加強(qiáng)詞的表征能力,基礎(chǔ)模型采用的ESIM,不同之處在于用ELMo替換Glove embedding,然后加入SRL embedding,其他模型結(jié)構(gòu)不變。最后作者通過實(shí)驗(yàn)對SRL embedding、ELMo embedding帶來的收益進(jìn)行了詳細(xì)的評估,文章的大部分篇幅也是對SRL建模進(jìn)行了詳細(xì)的介紹。
下面簡單介紹一下文章中的SRL網(wǎng)絡(luò)結(jié)構(gòu)
Word Representation
word representation包含了兩部分:word embedding和SRL embedding,然后進(jìn)行concat得到最終的word representation。

Encoder
編碼層為BiLSTM組合highway network做多層的疊加(單獨(dú)疊加BiLSTM不一定能獲得模型效果提升,甚至?xí)硇阅軔夯ㄓ捎谔荻认Ш吞荻缺ǎ?/p>

Model Implementation

從最后的實(shí)驗(yàn)結(jié)果來看,SRL embedding確實(shí)帶來了效果的提升

參考文獻(xiàn)
- Co-Stack Residual Affinity Networks with Multi-level Attention Refinement for Matching Text Sequences
- Multiway Attention Networks for Modeling Sentence Pairs
- Semantic Sentence Matching with Densely-connected Recurrent and Co-attentive Information
- Discourse Marker Augmented Network with Reinforcement Learning for Natural Language Inference
- I Know What You Want: Semantic Learning for Text Comprehension