compare_aggregate_network
本文介紹論文《A COMPARE-AGGREGATE MODEL FOR MATCHING TEXT SEQUENCES》的相關(guān)工作锐借,從之前我的博客也可以了解到深度學(xué)習(xí)算法在QA match的任務(wù)上大行其道涝登,本文屬于compare aggregate框架:在compare層從多個(gè)角度比較question和answer的相似性,然后在aggregate層對(duì)compare之后的結(jié)果進(jìn)行融合慕蔚。本文的主要貢獻(xiàn)在于設(shè)計(jì)了多種類(lèi)型的compare函數(shù)彼绷,然后在多個(gè)數(shù)據(jù)集上進(jìn)行了效果驗(yàn)證巍佑。
算法流程
1:對(duì)question和answer進(jìn)行embedding編碼。
2:將獲得的embedding通過(guò)一個(gè)簡(jiǎn)化版的LSTM/GRU門(mén)函數(shù)寄悯,用于對(duì)embedding進(jìn)行非線性編碼萤衰。
3:一個(gè)通用的思想就是通過(guò)attention對(duì)編碼feature進(jìn)行加權(quán)。本文的attention計(jì)算采用了symmetric attention猜旬。對(duì)question和answer進(jìn)行加權(quán)處理脆栋。
4:為了對(duì)question和answer進(jìn)行全方位的比較,作者在compare層采用了多種compare函數(shù):NeuralNet(NN)洒擦、NeuralTensorNet(NTN)椿争、Euclidean+Cosine(EucCos)、Subtraction(SUB)熟嫩、Multiplication(MULT)秦踪、SubMult+NN。
5:本文通過(guò)一層的CNN網(wǎng)絡(luò)對(duì)compare之后的特征進(jìn)行融合邦危,抽取最后用于classification的特征洋侨。
decomposable attention model
本文介紹論文《A Decomposable Attention Model for Natural Language Inference》的相關(guān)工作,本文仍然屬于compare aggregate框架:在compare層從多個(gè)角度比較question和answer的相似性倦蚪,然后在aggregate層對(duì)compare之后的結(jié)果進(jìn)行融合希坚。本文的亮點(diǎn)在于對(duì)輸入embedding計(jì)算intra-sentence增廣特征,在compare和aggregate層都是采用最簡(jiǎn)單的方式進(jìn)行計(jì)算陵且,整個(gè)模型結(jié)構(gòu)較為清晰裁僧,并且計(jì)算速度非掣鍪快。
Input representation
通常模型輸入表征都是embedding向量聊疲,但是本文作者為了加強(qiáng)輸入文本序列上的關(guān)系通過(guò)一個(gè)intra-sentence對(duì)輸入特征進(jìn)行增廣茬底。
Attend
獲得representation向量之后,通過(guò)attention對(duì)question和answer向量進(jìn)行對(duì)齊获洲。
Compare
compare層相對(duì)較為簡(jiǎn)單阱表,將input representation和對(duì)齊向量進(jìn)行拼接。
Aggregate
對(duì)compare之后的向量進(jìn)行融合贡珊,這里用了最簡(jiǎn)單的求和最爬,符合谷歌論文一向的風(fēng)格,大道至簡(jiǎn)门岔。然后對(duì)question和answer的feature進(jìn)行拼接通過(guò)一個(gè)feedforward network爱致。
BiMPM
本文介紹論文《Bilateral Multi-Perspective Matching for Natural Language Sentences》的相關(guān)工作,之前的論文更多的是設(shè)計(jì)一個(gè)角度的matching function用于精確的捕獲question和answer之間的相似度寒随,本文作者則覺(jué)得每個(gè)matching function都能捕獲不同角度的相似度糠悯,如果把各個(gè)角度計(jì)算得到的相似度融合即可獲得一個(gè)合理的matching result,最后作者通過(guò)實(shí)驗(yàn)在各個(gè)數(shù)據(jù)集上對(duì)該思想進(jìn)行了驗(yàn)證妻往。
Word Representation Layer
本文用word和character表示input representation互艾。通過(guò)將每個(gè)word的character通過(guò)LSTM模型計(jì)算representation。
Context Representation Layer
將question和answer embedding向量通過(guò)時(shí)序模型LSTM讯泣,用于獲得每個(gè)時(shí)間狀態(tài)的特征表示忘朝。后續(xù)matching layer需要對(duì)每個(gè)時(shí)間狀態(tài)的特征進(jìn)行處理。
Matching Layer
作者通過(guò)cosine函數(shù)計(jì)算兩個(gè)向量之間的相似度判帮。注意稍有不同在于上式通過(guò)一個(gè)可學(xué)習(xí)參數(shù)來(lái)統(tǒng)計(jì)不同維度的相似度。
下面介紹四種不同的matching function
- 首先介紹full-matching溉箕,時(shí)序模型最后一個(gè)時(shí)刻的狀態(tài)輸出保持了整個(gè)序列的信息晦墙,通過(guò)該狀態(tài)對(duì)另一個(gè)時(shí)序模型狀態(tài)計(jì)算相似度。
- 下面介紹maxpooling-matching肴茄,通過(guò)一個(gè)時(shí)序模型的所有狀態(tài)輸出對(duì)另一個(gè)時(shí)序模型的所有狀態(tài)輸出進(jìn)行計(jì)算晌畅,然后抽取每個(gè)詞相對(duì)于另一個(gè)文本中最大相似度的詞對(duì)應(yīng)的相似度。
- 接下來(lái)介紹attentive-matching寡痰,一個(gè)很自然的想法就是通過(guò)attentive的方式對(duì)match-function進(jìn)行表示抗楔。首先計(jì)算question和answer之間的相似矩陣,然后通過(guò)相似矩陣對(duì)answer進(jìn)行加權(quán)作為question align向量拦坠,最后通過(guò)該向量和question計(jì)算attentive-matching相似度连躏。
- 最后介紹Max-Attentive-Matching。首先計(jì)算相似度向量贞滨,然后計(jì)算最大相似度值對(duì)應(yīng)的位置(每行的最大值為當(dāng)前word對(duì)應(yīng)另一個(gè)文本中相似度最大的word)入热。
Aggregation Layer
在獲得了question和answer各自多個(gè)角度的representation之后,本文通過(guò)一個(gè)共享參數(shù)的LSTM模型對(duì)上述特征進(jìn)行融合,分別抽取前向和后向最后一個(gè)狀態(tài)的輸出勺良。
Prediction Layer
最后通過(guò)一個(gè)2層的feedforward函數(shù)對(duì)融合特征進(jìn)行投影绰播,用于獲得classification的特征。
LDC
本文介紹論文《Sentence Similarity Learning by Lexical Decomposition and Composition》的相關(guān)工作尚困,判斷兩個(gè)文本是否相似最簡(jiǎn)單的方式就是蠢箩,一個(gè)文本中的word是否在另一個(gè)文本中存在轩端±髡澹基于這個(gè)思想商蕴,本文將representation分解為相似部分和不相似部分蒿柳,最直觀的方式就是拋棄不相似部分径缅,只采用相似部分作為特征表示粘拾,但是實(shí)驗(yàn)發(fā)現(xiàn)這樣效果并不好撒犀,而不相似部分和相似部分組合會(huì)帶來(lái)一些相互區(qū)分的信息伶丐。因此本文會(huì)在分解得到相似部分和不相似部分之后通過(guò)cnn進(jìn)行最終的特征抽取跨跨。
Word Representation
首先對(duì)數(shù)據(jù)采用word2vec進(jìn)行預(yù)訓(xùn)練潮峦,然后通過(guò)預(yù)訓(xùn)練之后的詞向量對(duì)question和answer進(jìn)行representation。
Semantic Matching
作者這里嘗試了三種不同的語(yǔ)意匹配函數(shù)勇婴,global忱嘹、local-w、max耕渴。顧名思義拘悦,global會(huì)考慮另一個(gè)文本中的所有詞;而max則相對(duì)極端橱脸,只是考慮最為相似的詞础米;local-w則會(huì)考慮窗口內(nèi)詞(即最相似的
個(gè)詞)。
Decomposition
針對(duì)相似矩陣分解添诉,作者同樣采用了三種方式:rigid decomposition, linear decomposition, orthogonal decomposition屁桑。
- rigid decomposition相對(duì)較為簡(jiǎn)單粗暴。如果在另一個(gè)文本中發(fā)現(xiàn)存在精確匹配的詞栏赴,則該向量存在于相似部分蘑斧,并對(duì)不相似部分進(jìn)行補(bǔ)零,反之亦然须眷。
- linear decomposition通過(guò)cosine函數(shù)衡量?jī)蓚€(gè)向量之間的相似度竖瘾,然后通過(guò)該相似度與向量相乘用于獲得相似部分。
- orthogonal decomposition將一個(gè)向量分解到幾何空間:parallel和perpendicular花颗。其中parallel為相似部分捕传,perpendicular為不相似部分。
Composition
在composition層扩劝,我們將相似部分和不相似部分做為cnn矩陣的雙通道輸入乐横,進(jìn)行特征抽取求橄。
Similarity assessing
最后我們拼接composition的輸出,經(jīng)過(guò)一個(gè)線性函數(shù)累加所有特征葡公,然后經(jīng)過(guò)sigmoid將特征投影到0到1之間罐农。
ESIM
本文介紹論文《Enhanced LSTM for Natural Language Inference》的相關(guān)工作,整個(gè)算法框架相對(duì)較為簡(jiǎn)單(采用attention計(jì)算align向量催什,然后采用subtract涵亏、multiply進(jìn)行特征加強(qiáng))。
Input Encoding
首先通過(guò)時(shí)序模型LSTM對(duì)輸入question和answer進(jìn)行編碼蒲凶。
Local Inference Modeling
soft alignment layer
align向量這里采用attention進(jìn)行計(jì)算气筋,計(jì)算公式如下:
Enhancement of local inference information
在得到align向量之后,采用concatenate旋圆、subtract宠默、multiply進(jìn)行特征加強(qiáng)。從上面描述可以看出灵巧,這里的特征加強(qiáng)方式已經(jīng)被廣泛的采用搀矫。
Inference Composition
最后用enhancement之后的特征經(jīng)過(guò)時(shí)序模型LSTM進(jìn)行特征抽取,然后經(jīng)過(guò)pooling層得到最終的組合representation刻肄。
IWAN
本文介紹論文《Inter-Weighted Alignment Network for Sentence Pair Modeling》的相關(guān)工作瓤球,文章公式較多,但是結(jié)構(gòu)還是比較清晰的敏弃。首先將word representation通過(guò)一個(gè)時(shí)序模型進(jìn)行編碼卦羡,用于獲得上下文信心,然后通過(guò)編碼后的question和answer計(jì)算alignment representation麦到;下一步就是怎么利用representation了绿饵,本文用了direct strategy和orthogonal decomposition strategy兩種compare策略。最后通過(guò)一個(gè)2層的feedforward network計(jì)算classification representation瓶颠。
BiLSTM Layer
首先通過(guò)時(shí)序模型對(duì)embedding向量進(jìn)行編碼用于獲取上下文特征蝴罪。
Word Level Similarity Matrix
通過(guò)question representation和answer representation計(jì)算相似矩陣。
Alignment Layer
得到相似矩陣之后步清,通過(guò)softmax計(jì)算權(quán)重向量,最后通過(guò)加權(quán)answer representation向量做為question的align向量虏肾。
Inter-Weighted Layer
論文這里設(shè)計(jì)了兩種compare策略廓啊,分別為直接計(jì)算gap和通過(guò)相似分解間接計(jì)算。
direct strategy
我們可以通過(guò)上式對(duì)原始representation和alignment representation之間的gap進(jìn)行測(cè)量封豪,然后拼接做為最后的compare representation谴轮。
orthogonal decomposition strategy
同樣我們也可以通過(guò)alignment representation將原始representation分解為相似部分和不相似部分,然后分別對(duì)其進(jìn)行加權(quán)求和得到最終的compare representation吹埠。
Inter-Attention Layer
作者自己設(shè)計(jì)了一種inter-attention計(jì)算第步,通過(guò)另一個(gè)向量的平均與當(dāng)前文本各個(gè)時(shí)序狀態(tài)進(jìn)行比較疮装,類(lèi)似于additive attention。
Inter-Skip Layer
inter-skip設(shè)計(jì)流程圖如上粘都,其設(shè)計(jì)思想為后一個(gè)時(shí)序狀態(tài)減去前一個(gè)時(shí)序狀態(tài)即為當(dāng)前word的貢獻(xiàn)廓推。
Output Layer
最后將compare得到的所有representation作為input,然后經(jīng)過(guò)2層的feedforward獲得最后用于classification的representation翩隧。
CAFE
本文介紹論文《Compare, Compress and Propagate: Enhancing Neural Architectures with Alignment Factorization for Natural Language Inference》的相關(guān)工作樊展,分別以co-attention和self-attention兩個(gè)方向進(jìn)行feature augment,然后在compare層引入factorization layer分別處理compare函數(shù)輸出向量堆生,最后通過(guò)一個(gè)時(shí)序模型對(duì)feature進(jìn)行編碼专缠。
Input Encoding Layer
與上文類(lèi)似,本文同樣采用了word embedding淑仆、character embedding和pos涝婉,然后進(jìn)行concatenate輸入highway network進(jìn)行投影。
Soft-Attention Alignment Layer
然后是計(jì)算alignment representation蔗怠。本文從兩個(gè)角度分別計(jì)算alignment representation墩弯,然后進(jìn)行concatenate作為最終的alignment representation。
Inter-Attention Alignment Layer
首先介紹inter-attention alignment layer蟀淮,在之前的論文中最住,該attention已經(jīng)被大量的應(yīng)用。該attention主要計(jì)算兩個(gè)文本詞之間權(quán)重特征怠惶,通過(guò)另一個(gè)文本詞向量加權(quán)來(lái)表示當(dāng)前文本涨缚。
Intra-Attention Alignment Layer
intra-attention又叫self-attention,計(jì)算詞與當(dāng)前句子的相似度策治,捕獲了序列脓魏、全局的特征信息。
Alignment Factorization Layer
從之前的論文分析通惫,feature compare常用的方式為subtract茂翔、multiply、concatenate履腋。本文仍然采用這三種方式珊燎,但是會(huì)對(duì)compare函數(shù)處理之后的結(jié)果進(jìn)行因子分解運(yùn)算。
Factorization Operation
我們知道對(duì)于低秩矩陣遵湖,因子分解運(yùn)算能夠自動(dòng)交叉二維特征悔政。本文采用因子分解運(yùn)算針對(duì)compare函數(shù)的結(jié)果抽取更高級(jí)的特征。
Inter-Alignment Factorization
Intra-Alignment Factorization
Propagation and Augmentation
最后對(duì)經(jīng)過(guò)因子運(yùn)算之后的alignment representation進(jìn)行concatenate延旧。
Sequential Encoder Layer
在得到augment feature之后谋国,通過(guò)一個(gè)時(shí)序模型LSTM進(jìn)行編碼,并在pooling層抽取max和mean feature迁沫。
Prediction Layer
算法最后通過(guò)一個(gè)2層的highway network進(jìn)行特征投影芦瘾,然后經(jīng)過(guò)一層線性層抽取用于classification的representation捌蚊。
DIIN
本文介紹論文《NATURAL LANGUAGE INFERENCE OVER INTERACTION SPACE》的相關(guān)工作,本文的結(jié)構(gòu)相對(duì)較為簡(jiǎn)單了近弟,主要在于input representation更為豐富缅糟,除了word embedding之外,還加入了character embedding和pos藐吮。然后中間計(jì)算alignment representation都是常用的操作溺拱,但是論文最后采用dense net抽取深層次的feature,隨著大量的實(shí)驗(yàn)證明深層的網(wǎng)絡(luò)能抽取到更多的高級(jí)特征谣辞,隨后的另一篇論文也介紹了如何通過(guò)深層次的網(wǎng)絡(luò)抽取高級(jí)的特征迫摔。
Embedding Layer
本文采用多種表示向量:word representation、character representation泥从、part of speech句占。word embedding通過(guò)word2vec進(jìn)行預(yù)訓(xùn)練,然后在訓(xùn)練時(shí)進(jìn)行動(dòng)態(tài)更新躯嫉;character embedding則通過(guò)cnn進(jìn)行特征抽取減少oov的問(wèn)題纱烘;pos則是one-hot特征。最后拼接word embedding祈餐、character embedding和pos特征作為最終的input representation擂啥。
Encoding Layer
在得到input representation之后通過(guò)2層的highway network,然后通過(guò)self-attention計(jì)算alignment representation帆阳。這里作者沒(méi)有采用常用的subtract或者multiply直接compare highway representation和alignment representation哺壶,而是采用一個(gè)fuse-gate對(duì)兩個(gè)representation進(jìn)行融合。
Interaction Layer
這里作者采用點(diǎn)乘的方式進(jìn)行特征interact蜒谤。
Feature Extraction Layer
常用的深度網(wǎng)絡(luò)有highway山宾、residual net和dense net。本文在采用dense net block進(jìn)行深層次的特征抽取鳍徽。
Output Layer
最后采用一個(gè)線性層處理最終用于分類(lèi)的representation资锰。
MCAN
本文介紹論文《Multi-Cast Attention Networks for Retrieval-based Question Answering and Response Prediction》的相關(guān)工作,本文立意比較清晰了阶祭,就是充分利用各種不同attention的優(yōu)點(diǎn)绷杜,然后對(duì)不同attention的結(jié)果進(jìn)行融合。感覺(jué)論文思路與Bimpm的思路類(lèi)似濒募,只是網(wǎng)絡(luò)設(shè)計(jì)的細(xì)節(jié)方面有差異鞭盟。
Input Encoder
首先,每個(gè)詞經(jīng)過(guò)highway network進(jìn)行非線性投影萨咳,highway network是一個(gè)能夠控制信息傳遞的非線性門(mén)函數(shù)。
Co-Attention
本文介紹四種attention機(jī)制:max-pooling疫稿、mean-pooling培他、alignment-pooling和intra-attention鹃两。Co-Attention首先計(jì)算文本序列中每個(gè)詞的相似矩陣
Extractive Pooling
每種pooling都有不同的意義,max-pooling選擇另一個(gè)文本中最重要的詞舀凛;mean-pooling則是考慮當(dāng)前詞相對(duì)于另一個(gè)文本的重要性俊扳。
Alignment-Pooling
Alignment-Pooling稍有不同,它是選擇另一個(gè)文本中重要的詞去代表當(dāng)前詞猛遍。
Intra-Attention
Intra-Attention馋记,又叫self-Attention。它是計(jì)算詞與當(dāng)前句子的相似度懊烤,捕獲了序列梯醒、全局的特征信息。
Multi-Cast Attention
Casted Attention
Compression Function
SUM(SM)是一個(gè)非參數(shù)函數(shù)腌紧,對(duì)所有向量求和茸习,然后輸出一個(gè)標(biāo)量
Neural Network(NN)是一個(gè)全連接函數(shù)
Factorization Machines(FM)通過(guò)因子參數(shù)計(jì)算交叉特征
Long Short-Term Memory Encoder
對(duì)于augment feature,本文采用時(shí)序模型進(jìn)行特征編碼壁肋,然后通過(guò)MeanMax對(duì)時(shí)序特征輸出進(jìn)行抽取
Prediction Layer and Optimization
首先將特征通過(guò)2層的highway network号胚,然后通過(guò)linear softmax layer,損失函數(shù)采用帶l2約束的對(duì)數(shù)損失函數(shù)浸遗。
參考文獻(xiàn)
- A COMPARE-AGGREGATE MODEL FOR MATCHING TEXT SEQUENCES
- A Decomposable Attention Model for Natural Language Inference
- Bilateral Multi-Perspective Matching for Natural Language Sentences
- Sentence Similarity Learning by Lexical Decomposition and Composition
- Enhanced LSTM for Natural Language Inference
- Inter-Weighted Alignment Network for Sentence Pair Modeling
- Compare, Compress and Propagate: Enhancing Neural Architectures with Alignment Factorization for Natural Language Inference
- NATURAL LANGUAGE INFERENCE OVER INTERACTION SPACE
- Multi-Cast Attention Networks for Retrieval-based Question Answering and Response Prediction