文本向量化表示

1、One-hot編碼

0、1表示
缺點是矩陣稀疏,維數高和不能保留語義

2、詞袋(BOW)模型

統計各詞在文本中出現次數
缺點是不能保留語義,維數高和稀疏性

3、TF-IDF

詞頻*逆詞頻
缺點是不能保留語義

4、N-Gram

考慮了詞的順序
N=1時稱爲unigram,N=2稱爲bigram,N=3稱爲trigram
缺點是隨着N的增大,詞表迅速膨脹,數據出CBOW現大量稀疏的問題。

5、Word2Vec

CBOW
CBOW是一個三層神經網絡,特點是輸入已知上下文,輸出對當前單詞的預測。

Skip-Gram
Skip-Gram與CBOW相反,即已知某個詞語,預測周圍的詞語。

在skip-gram裏面,每個詞在作爲中心詞的時候,實際上是 1個學生 VS K個老師,K個老師(周圍詞)都會對學生(中心詞)進行“專業”的訓練,這樣學生(中心詞)的“能力”(向量結果)相對就會紮實(準確)一些,但是這樣肯定會使用更長的時間;

cbow是 1個老師 VS K個學生,K個學生(周圍詞)都會從老師(中心詞)那裏學習知識,但是老師(中心詞)是一視同仁的,教給大家的一樣的知識。至於你學到了多少,還要看下一輪(假如還在窗口內),或者以後的某一輪,你還有機會加入老師的課堂當中(再次出現作爲周圍詞),跟着大家一起學習,然後進步一點。因此相對skip-gram,你的業務能力肯定沒有人家強,但是對於整個訓練營(訓練過程)來說,這樣肯定效率高,速度更快。

延申知識:
由於word2vec有兩種改進方法,一種是基於Hierarchical Softmax的,另一種是基於Negative Sampling的。

  • 基於Hierarchical Softmax:

word2vec對這個模型做了改進,首先,對於從輸入層到隱藏層的映射,沒有采取神經網絡的線性變換加激活函數的方法,而是採用簡單的對所有輸入詞向量求和並取平均的方法。比如輸入的是三個4維詞向量:(1,2,3,4),(9,6,11,8),(5,10,7,12),那麼我們word2vec映射後的詞向量就是(5,6,7,8)。由於這裏是從多個詞向量變成了一個詞向量。
第二個改進就是從隱藏層到輸出的softmax層這裏的計算量個改進。爲了避免要計算所有詞的softmax概率,word2vec採樣了霍夫曼樹來代替從隱藏層到輸出softmax層的映射。我們在上一節已經介紹了霍夫曼樹的原理。
具體原理可參考https://www.cnblogs.com/pinard/p/7243513.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章