Word2vector是一群用來生成詞向量的模型的集合,Google在2013年開放了Word2vec這一款用於訓練詞向量的軟件工具。
這里先了解詞的兩種表示形式:轉載自http://www.dataguru.cn/article-13488-1.html
1 one-hot representation
這種方法把每個詞表示成一個很長的向量,向量的維度是詞表大小,采用的是稀疏方式存儲,向量中絕大部分元素是0,只有一個維度是1,eg:可愛 [0 0 1 0]
缺點:① 向量的維度會隨着句子的詞的數量類型增大而增大
② 任意兩個詞之間在表示上都是孤立的,無法表示語義層面上詞匯的相關信息。
2 distributed representation
這里面有一個說法:上下文相似的詞,其語義也相似。神經網絡語言模型采用的就是文本分布式表示。詞向量(word embedding)是訓練該語言模型的一個附加產物。
詞向量的本質是訓練神經網絡時候的隱藏層參數或者說矩陣
在word2vec中有兩個比較通用的模型,也可以稱之為訓練方式
1 詞袋模型(bag-of-words):通過上下文預測當前詞
此模型下,像是句子或是文件這樣的文字可以用一個袋子裝着這些詞的方式表現,這種表現方式不考慮文法以及詞的順序。適用於數據集較小的情況
2 Skip-gram模型 :通過當前詞預測上下文
轉載:https://blog.csdn.net/itplus/article/details/37969979