本文主要用于記錄華盛頓大學(xué)發(fā)表于2015年的一篇論文(引用量500+),該論文主要提出了一種計算文本(語句)相似度的方法論,很多神經(jīng)網(wǎng)絡(luò)模型也是由此衍生出來的~本筆記主要用于方便初學(xué)者快速入門,以及自我回顧。
論文鏈接:http://proceedings.mlr.press/v37/kusnerb15.pdf
基本目錄如下:
- 摘要
- 核心思想
- 總結(jié)
------------------第一菇 - 摘要------------------
1.1 論文摘要
本文主要提出了一種基于詞移動距離(Word Mover's Distance, WMD)的文本相似度的計算方法。其主要工作都是基于詞在句子中的共現(xiàn)概率而訓(xùn)練的詞向量來展開的(其實(shí)就是用了word2vec訓(xùn)練出來的詞向量)。WMD的距離計算方法簡單理解就是,針對一篇文章中的每一個詞,我們都能在對比文章中找到一個詞,使得該詞“移動/轉(zhuǎn)移”到該詞的“代價/距離”最小(其實(shí)就是倆個詞向量的距離最?。?,而兩篇文章的相似度就是,一篇文章中的所有詞轉(zhuǎn)到另一篇文章的詞的“總代價/距離”。這個距離的度量方法其實(shí)與著名的交通運(yùn)輸問題“Earth Mover's Distance”思路是一樣的。這種度量的方法的一個好處就是,其沒有超參數(shù)需要去優(yōu)化,計算直接了當(dāng)。然后,本文所做的實(shí)驗(yàn)也論證了這種(WMD)的度量方法確實(shí)簡單有效,且在當(dāng)時擊?。ㄓ米钚近鄰誤差來衡量)了其他7種主流的文本相似度度量算法。
------------------第二菇 - 核心思想------------------
2.1 論文提出背景
在深入了解該算法計算思路之前,還是先提兩句15年那個時候計算文本相似度的方法。自從word2vec在12年被提出以后,這一詞向量訓(xùn)練方法幾乎就是nlp工作者的標(biāo)配,其強(qiáng)大的詞向量表達(dá)能力,讓大家經(jīng)常就是無腦加數(shù)據(jù)訓(xùn)練更好的詞向量表達(dá)(更別提12年之前還是用詞袋或是tf-idf),然后計算文本相似度的時候就是累加所有詞的詞向量再求和(其實(shí)word2vec本身的詞向量相加也是有意義的,比如那個經(jīng)常的等式,king - man = queen - women)。但這種累加求和的計算方式,往往就會在累加求和的過程中漸漸磨平那些關(guān)鍵詞的距離特征。因此,本論文提出的方法,其核心思想就是突出詞與詞之間的距離特征映射關(guān)系(仔細(xì)一想,是不是就是后面nlp里面attention的基本思路呢?畢竟attention的核心也是分配給關(guān)鍵詞更多的權(quán)重)。
2.2 WMD計算方法
本段將詳細(xì)闡述論文提出的計算方法。首先假設(shè)我們有一個詞向量矩陣,其中
是詞典庫的大小,
是詞向量的維度。然后,一篇文章可以被表示成被歸一化后的詞袋向量
。每一維就是該詞在文章中出現(xiàn)的次數(shù)(歸一化除以總數(shù)后),顯然這個詞袋向量是非常稀疏的,因?yàn)榇罅康脑~不會出現(xiàn)在一篇文章中。
當(dāng)我們將兩篇文章都用詞袋向量表示以后,如果兩篇文章表義相近,且用詞相近可以得出這倆個向量的距離肯定也是相近的,但是如果兩篇文章表義相近,但用詞不同,這倆個向量但距離就飄了~而這就是我們不希望看到的。
然后我們還是定義倆個詞(分屬兩篇文章)的距離度量是利用word2vec計算出的向量,表示為。定義一個轉(zhuǎn)移矩陣
,其上的每一個值
代表單詞
有多少權(quán)重要流入到單詞
,我們只需要保證,該單詞流出的權(quán)重等于該單詞在詞袋向量中所有的權(quán)重即可
,而對于流入方單詞同理,其流入的權(quán)重等于其在詞袋向量中的權(quán)重!最終我們只需要找到一個累加求和距離最小權(quán)重分配比,就是最終倆個文本的相似度。上述文字,可以用數(shù)學(xué)公式表達(dá)為,

上面的表述可能有點(diǎn)繞,我就用一個最簡單例子,比如說這兩句話,
A - “學(xué)習(xí) 使 我 快樂”,
B - “我 覺得 學(xué)習(xí) 有樂趣”。
那他們的詞袋向量表達(dá)可能就是(與詞相對應(yīng))
A - [0.25, 0.25, 0.25, 0.25]
B - [0.25, 0.25, 0.25, 0.25]
那顯然,在計算轉(zhuǎn)移距離的時候,為了得到最小的距離,A中的學(xué)習(xí)/我,會全部轉(zhuǎn)移到B中的學(xué)習(xí)/我(距離代價為0),而快樂與有樂趣(覺得,使)最接近,會全部轉(zhuǎn)移過去。即,本質(zhì)上來說,在計算這倆個句子的相似度的時候,該算法就會考慮計算兩篇文章中最相近的詞之間的距離,而不是,考慮整體,增加的算法魯棒性。當(dāng)然,以上的情況是最簡單的,因?yàn)槠涫且灰粚?yīng)的,論文還舉了不是一一對應(yīng)的例子,這里也貼上原圖,大家應(yīng)該看了就秒懂了~

2.3 WMD優(yōu)化思路
至此,大家應(yīng)該對最初始版本的WMD計算方法有所了解了,而敏銳的同學(xué)肯定也已經(jīng)覺察到了該算法的復(fù)雜度很高,。因此論文里還提了幾個簡單的優(yōu)化思路(取下限)。
其中一種優(yōu)化的思路是WCD(Word Centroid Distance),即之前最暴力的一種解法是把所有的詞向量都相加(權(quán)重一樣),這里不是簡單的相加,而是帶權(quán)重的相加(weighted word vector,其實(shí)也很暴力)。其實(shí)這里跟后期的神經(jīng)網(wǎng)絡(luò)的attention的優(yōu)化思路是一樣的,我們也更關(guān)注訓(xùn)練出倆個句子或文章中,到底哪幾個詞的相似度是起最關(guān)鍵的作用的(不管是local還是global的思想)。
另一種就是取消一下WMD中的限制,即我們不嚴(yán)格要求流入詞的權(quán)重是與詞在文章中的權(quán)重是一致的,那相當(dāng)于就是盡可能多的詞去做匹配而不做嚴(yán)格的限制,具體的推導(dǎo)論述大家看文章中,這里就不作展開探討了~
2.4 論文實(shí)驗(yàn)結(jié)果分析
具體的實(shí)驗(yàn)結(jié)果大家可自行參考論文,這里不作展開探討。
------------------第三菇 - 總結(jié)------------------
3.1 總結(jié)
到這里,整篇論文的核心思想及其創(chuàng)新點(diǎn)已經(jīng)說清楚了。本論文主要集中在于闡述一種新的計算文本相似度的方法,并且做了優(yōu)化的延伸擴(kuò)展,為后續(xù)的文本相似度計算奠定了基礎(chǔ)。
簡單總結(jié)一下本文就是先羅列了一下該論文的摘要,再具體介紹了一下論文中的WMD算法的原理和實(shí)現(xiàn)過程,并后續(xù)介紹了一些可優(yōu)化的點(diǎn)??偟膩碚f,這篇論文可以說是文本相似度計算深入研究的開山之作。希望大家讀完本文后能進(jìn)一步加深對該論文的理解。有說的不對的地方也請大家指出,多多交流,大家一起進(jìn)步~??