glove中文詞向量 GloVe

2021-10-13 17:30:12 字數 928 閱讀 2406

做自然語言處理的時候很多時候會用的word embedding,訓練詞向量的方法主要有兩條路:

glove模型就是將這兩中特徵合併到一起的,即使用了語料庫的全域性統計特徵,也使用了區域性的上下文特徵。為了做到這一點glove模型引入了co-occurrence probabilities matrix。

共現矩陣

由以上概念引入共現概率矩陣,以下為例:

該矩陣第乙個元素為ice出現時solid出現的概率,以此類推。

通過共現概率矩陣我們可以得到關於ration的以下規律,

因此我們可以從ratio中得到word之間的相關性,而glove模型就是利用了這個ratio值。

glove模型的目標就是獲取每乙個word的向量表示,不妨假設現在已經得到了word

假設這個未知函式是

右側的是通過統計求得的;

左側的是我們模型要求的量;

同時函式

是未知的。

如果能夠將函式

的形式確定下來,就可以通過優化來求解詞向量了。很直覺的想法就是使用均方誤差:

但模型中包含3個單詞,這就意味著要在

的複雜度上進行,因此我們希望確定乙個簡單的

的確定過程如下:

​ 其中

中包含了了

,所以公式中沒有顯示地寫明這一項,為了保持對稱性又引入了

權重函式定義如下:

到此,整個模型就介紹完了,glove的優點大致如下:

Glove詞向量資料

很棒的資料 j ijnf xij vi tvj bi b j lo g xi j 2 j sum n f x v i tv j b i b j log x 2 j ijn f x ij vit vj bi bj log xij 2 glove基於詞的共現矩陣x xx來學習詞向量,考慮了全域性統計資訊...

理解GloVe模型

輸入 語料庫 輸出 詞向量 方法概述 首先基於語料庫構建詞的共現矩陣,然後基於共現矩陣和glove模型學習詞向量。x,其元素為xi,jxi,j。x i,jxi,j 的意義為 在整個語料庫中,單詞i i和單詞j j共同出現在乙個視窗中的次數。舉個栗子 設有語料庫 中心詞視窗內容0i i love yo...

GloVe使用心得

這裡主要介紹一下在ubuntu環境下的使用方法。然後,將需要處理的文字資料拷貝到該目錄下 方便後續處理 將名字改為corpus.txt 可以不改,但是改了之後便於後續的操作 接著,在終端中依次執行vocab count cooccur shuffle和glove 執行方法是輸入 加相應檔名 建議先輸...