1. 背景介紹
詞向量在很多應(yīng)用中都有重要作用〈虿現(xiàn)今學(xué)習(xí)詞向量的方法主要分兩類:1)Global Matrix Factorization Methods和2)Local context window methods照皆,它們各有優(yōu)缺點(diǎn)嚼锄,下面分別進(jìn)行說(shuō)明。
1.1 Matrix Factorization Methods
這類方法的主要思想是:對(duì)于一個(gè)描述語(yǔ)料庫(kù)統(tǒng)計(jì)信息的大型矩陣珠叔,對(duì)其進(jìn)行分解炉峰,用低秩近似生成詞向量复颈。
比較有代表的算法有:LSA、HAL(Hyperspace Analogue to Language)架谎、COALS炸宵、Hellinger PCA(HPCA)
這類算法的優(yōu)點(diǎn)是:
- 訓(xùn)練速度快;
- 充分利用了語(yǔ)料庫(kù)的統(tǒng)計(jì)信息
但也有缺點(diǎn):
- 比如LSA谷扣,它在詞類比任務(wù)上表現(xiàn)較差土全;
- 比如HAL捎琐,在計(jì)算詞的相似性時(shí),一些高頻詞裹匙,比如the瑞凑、and和其它詞同時(shí)出現(xiàn),它們對(duì)相似計(jì)算有較大影響概页,但實(shí)際上籽御,它們和其它詞在語(yǔ)義上沒多大聯(lián)系。
1.2 Shallow Window-Based Methods
這類方法主要通過預(yù)測(cè)窗口內(nèi)的上下文詞來(lái)學(xué)習(xí)詞向量惰匙。
基于這種思想的算法有:
-
Bengio et al.(2003)
應(yīng)該是最早提出詞向量的學(xué)者技掏,他們用一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)來(lái)學(xué)習(xí)詞向量。
-
Collobert and Weston(2008)
他們將詞向量的學(xué)習(xí)和下游任務(wù)分離项鬼,從而可以使用單詞完整的上下文學(xué)習(xí)詞向量哑梳。
-
Mikolov et al(2013a)提出的CBOW和Skip-Gram
基于向量?jī)?nèi)積的單層神經(jīng)網(wǎng)絡(luò)
vLBL和ivLBL:
以上這些模型學(xué)得詞向量能很好通過詞類比任務(wù)(word analogy task),但也有明顯缺點(diǎn):
它們不是直接使用語(yǔ)料庫(kù)的共現(xiàn)統(tǒng)計(jì)绘盟,而是滑動(dòng)窗口掃描上下文詞鸠真,因此計(jì)算書無(wú)法利用重復(fù)數(shù)據(jù)。
2. GloVe Model
2.1 GloVe模型介紹
在詞向量的無(wú)監(jiān)督學(xué)習(xí)中龄毡,語(yǔ)料庫(kù)中的詞頻統(tǒng)計(jì)信息是非常重要的信息吠卷。GloVe模型就用到了基于窗口的詞共生矩陣。
假設(shè)語(yǔ)料庫(kù)中有下面三句話:
- I like deep learning.
- I like NLP.
- I enjoy flying.
通過滑動(dòng)窗口沦零,遍歷一遍語(yǔ)料庫(kù)祭隔,可以得到如下共生矩陣:
counts | I | like | enjoy | deep | learning | NLP | flying | . |
---|---|---|---|---|---|---|---|---|
I | 0 | 2 | 1 | 0 | 0 | 0 | 0 | 0 |
like | 2 | 0 | 0 | 1 | 0 | 1 | 0 | 0 |
enjoy | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
deep | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 |
learning | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 |
NLP | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
flying | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 |
. | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 |
符號(hào)定義:
:共生矩陣;
:詞條
出現(xiàn)在詞條
的上下文中的次數(shù)蠢终;
:任意詞出現(xiàn)在詞條
上下文中的次數(shù)序攘;
:詞
出現(xiàn)在詞
上下文中的概率。
作者從預(yù)料庫(kù)中對(duì)目標(biāo)詞ice和stream的上下文詞出現(xiàn)概率和比率進(jìn)行了統(tǒng)計(jì)寻拂,統(tǒng)計(jì)結(jié)果如下表:
通過分析可以發(fā)現(xiàn):
- 若
越大,則說(shuō)明詞
與詞
在語(yǔ)義上比詞
更接近丈牢;
- 若
越小祭钉,則說(shuō)明詞
與詞
在語(yǔ)義上比詞
更接近;
- 若
己沛,則說(shuō)明詞
在語(yǔ)義上與詞
和
要么都接近慌核,要么都相差很遠(yuǎn)。
既然共現(xiàn)概率比能體現(xiàn)詞在語(yǔ)義上的相似程度申尼,作者希望構(gòu)造一個(gè)函數(shù)垮卓,輸入為詞向量,輸出為共現(xiàn)概率比
师幕,那么應(yīng)該有:
因?yàn)橄蛄靠臻g是線性的粟按,那么可以定義在兩個(gè)向量差上:
等式(2)右邊是個(gè)標(biāo)量诬滩,而可能是一個(gè)復(fù)雜函數(shù),
可改寫為:
在詞條共現(xiàn)矩陣中灭将,目標(biāo)詞和上下文詞是任意的疼鸟,也就是說(shuō)可以交換的:庙曙。因此所求模型也應(yīng)該是關(guān)于參數(shù)對(duì)稱的空镜,這里分兩步求解。首先要求
在群
和
之間是同態(tài)的:
帶入(3)式捌朴,有:
(4)式的解為吴攒,帶入(5)式有:
上式等式左邊滿足交換,但右邊不滿足砂蔽,可以將吸收到偏置項(xiàng)
中舶斧,同時(shí)添加
的偏置項(xiàng)
使等式滿足對(duì)稱性:
但(7)是病態(tài)的茴厉,因?yàn)?img class="math-inline" src="https://math.jianshu.com/math?formula=X_%7Bik%7D" alt="X_{ik}" mathimg="1">可能會(huì)是0。
其中一種做法是在對(duì)數(shù)項(xiàng)中添加偏移解決什荣,即矾缓,這種做法的主要缺點(diǎn)是:給共現(xiàn)矩陣中的每一項(xiàng)權(quán)值都相同,而我們知道共現(xiàn)矩陣中值很小的兩個(gè)詞其實(shí)在語(yǔ)義上沒多大聯(lián)系稻爬。
作者的做法是使用加權(quán)的最小二乘法作為損失函數(shù):
是字典大小,權(quán)重函數(shù)
需滿足下面的條件:
-
. 同時(shí)當(dāng)
趨近于0時(shí)桅锄,
能快速收斂到0. 即
是有限的琉雳;
-
是非減函數(shù),這樣能保證很小的
不會(huì)被過度加權(quán)友瘤;
-
在
取很大值時(shí)翠肘,
也不會(huì)太大。
作者找到一個(gè)比較理想的:
本文中辫秧,.
2.2 與其它模型的關(guān)系
2.3 模型復(fù)雜度分析
3. 實(shí)驗(yàn)及結(jié)果
作者分別在詞類比任務(wù)束倍、詞相似度任務(wù)和命名體識(shí)別(NER)任務(wù)上對(duì)模型進(jìn)行了評(píng)估。
3.1 Word analogies
word analogy分兩種盟戏,一種是語(yǔ)義推理绪妹,比如:“Athens is to Greece as Berlin is to ___?”;另一種是語(yǔ)法推理柿究,比如:“a is to b as c is to __?”.
實(shí)驗(yàn)結(jié)果見下表:
作者對(duì)實(shí)驗(yàn)結(jié)果做了如下總結(jié):
- GloVe模型的實(shí)驗(yàn)結(jié)果要比其他模型好邮旷;
- 作者使用了word2vec模型,它的效果也要比之前的模型更好蝇摸,作者分析是用了負(fù)采樣方法婶肩,因?yàn)樨?fù)采樣方法要比層序softmax更好办陷,同時(shí)和負(fù)采樣的個(gè)數(shù)和語(yǔ)料庫(kù)的選擇也有關(guān);
- GloVe模型在很大的語(yǔ)料庫(kù)上也能輕松訓(xùn)練狡孔,同時(shí)語(yǔ)料庫(kù)越大懂诗,模型的效果也會(huì)更好;
- 但更大的語(yǔ)料庫(kù)苗膝,并不會(huì)讓SVD方法得到的結(jié)果更好殃恒,這也從側(cè)面證明了我們的模型使用加權(quán)的必要性。
3.2 Word similarity
在5個(gè)數(shù)據(jù)集上做了對(duì)比實(shí)驗(yàn)辱揭,結(jié)果如下:
實(shí)驗(yàn)結(jié)果表明:GloVe模型得到的詞向量在word similarity任務(wù)上也是表現(xiàn)最好的离唐。CBOW表現(xiàn)也不錯(cuò),但是CBOW用到的語(yǔ)料庫(kù)是GloVe的兩倍多一點(diǎn)问窃。
3.3 Named entity recognition
作者在ConLL-03訓(xùn)練數(shù)據(jù)集上訓(xùn)練模型亥鬓,在 1) ConLL-03 testing data, 2) ACE Phase 2 (2001-02) and ACE-2003 data, 3) MUC7 Formal Run test set上進(jìn)行測(cè)試
作者訓(xùn)練了一個(gè)CRF模型用于NER任務(wù)。實(shí)驗(yàn)結(jié)果表名域庇,除了在CoNLL測(cè)試集上嵌戈,HPCA模型表現(xiàn)更好外,在其它數(shù)據(jù)集上听皿, 都是GloVe模型表現(xiàn)更好熟呛。因此作者認(rèn)為GloVe詞向量在NLP的下游任務(wù)中都是很有用的。
4. 模型分析
4.1 Vector Length and Context Size
名詞解釋:
- Symmetric context:能擴(kuò)展到目標(biāo)詞左右詞的窗口為Symmetric context尉姨;
- Asymmetric context:只擴(kuò)展到左邊的上下文窗口稱為非對(duì)稱窗口庵朝。
實(shí)驗(yàn)結(jié)果分析:
通過圖(a)可以發(fā)現(xiàn),當(dāng)詞向量長(zhǎng)度超過200維后又厉,維度的提升并不會(huì)帶來(lái)結(jié)果的顯著變化九府;
-
通過圖(b)(c)可以發(fā)現(xiàn),在窗口比較小或使用非對(duì)稱滑動(dòng)窗口時(shí)覆致,語(yǔ)法類任務(wù)的結(jié)果要比語(yǔ)義類任務(wù)結(jié)果好侄旬。
從直觀上理解,可能語(yǔ)法推理對(duì)緊挨著的詞即詞的順序比較敏感篷朵,而語(yǔ)義推理的任務(wù)需要更大的滑動(dòng)窗口勾怒,從而獲取更多的信息。
4.2 Corpus Size
作者在不同的預(yù)料庫(kù)上訓(xùn)練了300維的詞向量用于詞類比任務(wù)声旺,其對(duì)比結(jié)果如下:
通過實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn):
在語(yǔ)法類比任務(wù)(Syntactic analogy task)上,隨著語(yǔ)料庫(kù)規(guī)模的增加段只,準(zhǔn)確率呈單調(diào)上升趨勢(shì)腮猖;
-
但是語(yǔ)料庫(kù)規(guī)模的增加,語(yǔ)義類比任務(wù)(Semantic analogy task)的準(zhǔn)確率并不是單調(diào)上升的赞枕。
比如在Wiki2010和Wiki2014語(yǔ)料庫(kù)上訓(xùn)練的詞向量表現(xiàn)要比更大的語(yǔ)料庫(kù)Gigaword5更好澈缺!
作者分析原因如下:
- 測(cè)試數(shù)據(jù)集里包含很多地名和國(guó)家名的類比坪创,而Wikipedia可能包含更多的可以理解這些地名和國(guó)家名的文檔;
- Wikipedia會(huì)吸收新知識(shí)姐赡,而Giagaword庫(kù)中都是不變的新聞莱预,可能會(huì)有過時(shí)的或錯(cuò)的信息。
4.3 Run-time
整個(gè)訓(xùn)練過程時(shí)間開銷分兩部分:統(tǒng)計(jì)得到共現(xiàn)矩陣和模型訓(xùn)練项滑。
作者分別作了GloVe和基于負(fù)采樣的CBOW和Skip-Gram模型的對(duì)照試驗(yàn)依沮,結(jié)果如下:
試驗(yàn)結(jié)果分析:
- 作者在前文提到,訓(xùn)練300維以下的詞向量枪狂,迭代50次停止危喉,從試驗(yàn)結(jié)果看,基本上迭代到20次之后州疾,效果提升并不明顯辜限;
- Skip-Gramp模型比CBOW要好;
- CBOW模型負(fù)樣本越多严蓖,效果反而越差薄嫡。(==why?==)
4.4 與word2vec的比較
精確定量地比較GloVe和word2vec很難,因?yàn)橛绊懩P偷膮?shù)有很多颗胡。前面已經(jīng)從向量長(zhǎng)度毫深、窗口大小和語(yǔ)料庫(kù)大小方面做了比較。
對(duì)于word2vec模型隨著負(fù)樣本的增加杭措,表現(xiàn)反而不好的原因费什,作者估計(jì)是負(fù)樣本并沒有很好近似目標(biāo)概率分布。
5. 結(jié)論
對(duì)于分布式詞向量的學(xué)習(xí)手素,很多人都在關(guān)注到底是基于計(jì)數(shù)統(tǒng)計(jì)的方法(count-based methods)好鸳址,還是基于預(yù)測(cè)的方法更好(prediction-based methods)。作者通過本文所做的工作認(rèn)為:兩種方法本質(zhì)上不會(huì)有太大的差別泉懦!因?yàn)樗鼈兌祭昧嗽~的共現(xiàn)統(tǒng)計(jì)信息稿黍。
但是,作者認(rèn)為因?yàn)镚loVe用到的是基于全局的統(tǒng)計(jì)崩哩,所以效果會(huì)更好巡球。