Word2vec
外观
![]() |
机器学习与数据挖掘 |
---|
![]() |
Word2vec為一群用來產生詞嵌入的模型。這些模型為淺層和雙層神經網路,用來訓練以重新建構語言學之詞文本,網路以詞表現,並且需猜測相鄰位置的輸入詞,在word2vec中bag-of-words 假設下,詞的順序是不重要的
訓練完成之後,word2vec 模型可用來映射每個詞到一個向量,可用來表示詞對詞之間的關係。該向量為神經網路之隱藏層[1]
Word2vec 依賴skip-grams 或continuous-bag-of-words(CBOW)來建立神經詞嵌入。Word2vec 為Tomas Mikolov 在 Google帶領的研究團隊創造。該演算法漸漸被其他人所分析和解釋[2][3]
Skip-grams 和 CBOW
Skip-gram 把一個詞從詞窗剔除。在skip-grams 下給定n 詞圍繞著詞 w,word2vec 預測一個句子中其中一個缺漏的詞c,i.e.以機率來表示。相反地,CBOW 給定詞窗中的文本,預測當前的詞
延伸
word2vec 用來建構整份文件(而分獨立的詞)的延伸應用已被提出[4] 該延伸稱為paragraph2vec或doc2vec 並且用C, Python [5][6] 和 Java/Scala [7] 實做成工具(參考下方), Java和 Python 也支援推斷文件嵌入於未觀測的文件。
分析
對word2vec 框架為何做文字嵌入如此成功知之甚少,Goldberg 和Levy 指出word2vec 的功能導致相似文本擁有相似的嵌入(用 cosine similarity計算)並且和 J. R. Firth 的distributional hypothesis有關
實作
參見
參考
- ^ Mikolov, Tomas; et al. Efficient Estimation of Word Representations in Vector Space (PDF). [2015-08-14].
- ^ Goldberg, Yoav; Levy, Omar. word2vec Explained: Deriving Mikolov et al.’s Negative-Sampling Word-Embedding Method (PDF). [2015-08-14].
- ^ Řehůřek, Radim. Word2vec and friends (Youtube video). [2015-08-14].
- ^ Le, Quoc; et al. Distributed Representations of Sentences and Documents. (PDF). [2016-02-18].
- ^ Doc2Vec tutorial using Gensim. [2015-08-02].
- ^ Doc2vec for IMDB sentiment analysis. [2016-02-18].
- ^ Doc2Vec and Paragraph Vectors for Classification. [2016-01-13].