1. 程式人生 > 其它 >深度學習-詞嵌入

深度學習-詞嵌入

1、onehot 缺點:詞之間沒有關聯,泛化性差

2、高維特徵表示:每詞由300維的特徵表示,能夠獲取詞之間的相似性關係。更好。

學習詞嵌入,可以遷移學習,可以小樣本 在訓練集中找相似特徵的進行歸納。

一般詞嵌入,使用雙向RNN 

詞嵌入,找網上模型然後少量訓練標記進行遷移學習,可以使用比1-hot更低維的進行表示。

3、詞嵌入的特性:依據相似性可以匹配詞,cos衡量相似性(餘弦距離),

t_SNE 高維對映到二維視覺化

4、嵌入矩陣,實踐中不會用1-hot矩陣乘法,因為維度太高,所以用其他矩陣來代替。

5、學習詞嵌入

可以任意選擇視窗大小進行預測。

CBOW模型,周圍詞預測中間詞。正負10距有很多單詞,導致最終預測效果不是很好。

word2vec(詞嵌入):計算高效,skip-gram中間詞利用softmax 預測周圍詞(視窗大小為2)。

Fake Task,word2vec模型的最終目的並不是建模,而是通過訓練資料來學習隱層的引數,而隱層的引數實際就是word vectors,就是說將中心詞和上下文詞成組輸入,(input word, output word),然後最大化他們的概率,從而學習隱層引數,而隱層的引數就是最終要獲取的詞向量。

缺點:softmax耗費很大,因為有個求和操作。

負取樣:

作用:減少softmax的複雜度。

步驟:

兩詞匹配,負取樣就是在詞典中隨機一個詞(有更好的做法),距離不正負10的距離內, 匹配標記為0;

K的選擇,小資料5-20,大資料2-5;

利用logistic迴歸進行訓練,每次訓練集之訓練k+1個樣本,複雜度從大量的詞典長度降低到k+1;

根據經驗,英文3/4次方的分佈對整體是比較好的。