綜述 詞向量與分佈式表示

從古老的one-hot表示法,到大熱的Word2vec系列的分佈式表示方法,再到現在驚豔的預訓練模型ELMo、BERT等,技術迭代迅速,這其中包含許多內容需要我們學習,例如語言模型LM、Transformer、CBOW、SkipGram等等。

接下來本文歸納梳理,逐一介紹。

目錄

1、詞的表示


 

1、詞的表示

1.1 離散表示(one-hot representation)

把每個詞表示爲一個長向量。這個向量的維度是詞表大小,向量中只有一個維度的值爲1,其餘維度爲0,這個維度就代表了當前的詞。

面臨着數據稀疏性和維度災難的問題。但也有一個好處,就是在高維空間中,很多應用任務線性可分。

1.2 分佈式表示(distribution representation)

將詞轉化成一種分佈式表示,又稱詞向量(Word embedding)。將詞表示成一個定長的連續的稠密向量。

分佈式表示優點:(1) 詞之間存在相似關係,存在“距離”概念,這對很多自然語言處理的任務非常有幫助。(2) 詞向量能夠包含更多信息,並且每一維都有特定的含義。

2、詞向量學習方法

 

 

那麼,Word2vec問世,爲什麼大火,而之前已經有了一些embedding的研究了呀?

這裏借用復旦大學邱錫鵬老師在知乎上的回答。

Word2vec訓練方面採用的Hierarchical Softmax以及負採樣雖然是前人已有的工作,但Word2vec流行主要原因在於以下3點:

(1)極快的訓練速度。以前的語言模型優化的目標是MLE,只能說詞向量是其副產品。Mikolov應該是第一個提出拋棄MLE(和困惑度)指標,就是要學習一個好的詞嵌入。如果不追求MLE,模型就可以大幅簡化,去除隱藏層。再利用HSoftmax以及負採樣的加速方法,可以使得訓練在小時級別完成。而原來的語言模型可能需要幾周時間。

(2)一個很酷炫的man-woman=king-queen的示例。這個示例使得人們發現詞嵌入還可以這麼玩,並促使詞嵌入學習成爲了一個研究方向,而不再僅僅是神經網絡中的一些參數。

(3)word2vec裏有大量的tricks,比如噪聲分佈如何選?如何採樣?如何負採樣?等等。這些tricks雖然擺不上臺面,但是對於得到一個好的詞向量至關重要。

 

 

 

 

 

 

 

 

發佈了5 篇原創文章 · 獲贊 1 · 訪問量 2649
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章