ICLR 2017
文章簡介:文章提出了sif sentence embedding方法來得到句子的embedding,在計算文本相似度的任務(wù)中其表現(xiàn)超過了RNN和LSTM,并對其優(yōu)秀的表現(xiàn)嘗試給出理論解釋。
原文
代碼
如果你想5分鐘內(nèi)了解這篇文章的主旨,你可以:
碼農(nóng)場的筆記
筆記對應(yīng)視頻42:28開始
如果你還想再花10分鐘深入了解下related work,你可以:
從詞向量到句向量
如果你想繼續(xù)精讀這篇文章,則可以快速過一下以下的內(nèi)容。
文章提出的模型可以得到句子的embedding,之后在文本相似度的數(shù)據(jù)集上實驗證明其先進。先從結(jié)果開始
實驗結(jié)果:
這篇文章中做了不少實驗的,我們就先圍繞這張表展開??梢钥吹接玫臄?shù)據(jù)集主要是STS,同時將方法分為監(jiān)督(Su.),無監(jiān)督(Un.),半監(jiān)督(Se.)。對于數(shù)據(jù)集和幾種方法的區(qū)別想要仔細(xì)了解可以看文章中的4.1和4.2。
目前最常見的應(yīng)該還是無監(jiān)督的方法,Glove+WR即代表詞向量用Glove完成嵌入,本文的WR算法完成句嵌入。W代表Weighted,使用預(yù)估參數(shù)給句中的每個詞向量賦予權(quán)重,R表示Removal,使用PCA或SVD移除句向量中的無關(guān)部分。
同時這篇文章的方法在監(jiān)督學(xué)習(xí)的數(shù)據(jù)集上也有嘗試(見文章A.3):
對比SNLI的leader board和STS的leader board,只能說這兩年NLP技術(shù)發(fā)展的太快了,tough-to-beat也撐不過1年的時間。
算法
輸入訓(xùn)練好的詞向量,句子的集合S,參數(shù)a和詞頻p(w),模型就可以輸出S中每一句句子的嵌入向量。
可以看出1~3步就是對應(yīng)上文提到的W,對于詞頻p(w)越高的詞,其權(quán)重向量就越小(所以作者在Introduction中提到"Of course, this SIF reweighting is highly reminiscent of TF-IDF reweighting from information retrieval ")。
4~6步就是對應(yīng)上文提到的R,PCA和SVD的原理及作用在這里就不贅述了。
數(shù)學(xué)部分
算法第2步里這個式子怎么來的,文章里給出了細(xì)致的解釋:
是基于latent variable generative model,Random Walk model加入了平滑項。
最后作者還將這個式子和word2vec的采樣技巧聯(lián)系在了一起:
得出結(jié)論" Word2vec with sub-sampling gradient heuristic corresponds to a stochastic gradient update method for using our weighting scheme.",即從理論上解釋了本文方法的優(yōu)越性。