出處:https://www.cnblogs.com/iloveai/p/word2vec.htmlhtml
Ngram本質上是將詞當作一個個孤立的原子單元(atomic unit)去處理的。這種處理方式對應到數學上的形式是一個個離散的one-hot向量(除了一個詞典索引的下標對應的方向上是11,其他方向上都是00)。例如,對於一個大小爲55的詞典:{"I", "love", "nature", "luaguage", "processing"},「nature」對應的one-hot向量爲:[0,0,1,0,0][0,0,1,0,0]。顯然,one-hot向量的維度等於詞典的大小。這在動輒上萬甚至百萬詞典的實際應用中,面臨着巨大的維度災難問題(the curse of dimensionality)。算法
因而,人們就天然而然地想到,可否用一個連續的稠密向量去刻畫一個word的特徵呢?這樣,咱們不只能夠直接刻畫詞與詞之間的類似度,還能夠創建一個從向量到機率的平滑函數模型,使得類似的詞向量能夠映射到相近的機率空間上。這個稠密連續向量也被稱爲word的distributed representation[3]。函數
事實上,這個概念在信息檢索(Information Retrieval)領域早就已經被普遍地使用了。只不過,在IR領域裏,這個概念被稱爲向量空間模型(Vector Space Model,如下簡稱VSM)。atom
VSM是基於一種Statistical Semantics Hypothesis:語言的統計特徵隱藏着語義的信息(Statistical pattern of human word usage can be used to figure out what people mean)。例如,兩篇具備類似詞分佈的文檔能夠被認爲是有着相近的主題。這個Hypothesis有不少衍生版本。其中,比較廣爲人知的兩個版本是Bag of Words Hypothesis和Distributional Hypothesis。前者是說,一篇文檔的詞頻(而不是詞序)表明了文檔的主題;後者是說,上下文環境類似的兩個詞有着相近的語義。後面咱們會看到,word2vec算法也是基於Distributional的假設。lua