Word2Vec 讲解
介绍
需要复习 手写 Word2Vec 源码: https://blog.csdn.net/u014595019/article/details/51943428
- 2013年,Google开源了一款用于词向量计算的工具——
word2vec
,引起了工业界和学术界的关注。 word2vec
算法或模型的时候,其实指的是其背后用于计算 word vector 的CBoW
模型和Skip-gram
模型- 很多人以为
word2vec
指的是一个算法或模型,这也是一种谬误。 - 因此通过 Word2Vec 技术 输出的词向量可以被用来做很多NLP相关的工作,比如聚类、找同义词、词性分析等等.
适用场景
- cbow适用于小规模,或者主题比较散的语料,毕竟他的向量产生只跟临近的字有关系,更远的语料并没有被采用。
- 而相反的skip-gram可以处理基于相同语义,义群的一大批语料。
CBoW 模型(Continuous Bag-of-Words Model)
- 连续词袋模型(CBOW)常用于NLP深度学习。
- 这是一种模式,它试图根据目标词
之前
和之后
几个单词的背景来预测单词(CBOW不是顺序)。 - CBOW 模型: 能够根据输入周围n-1个词来预测出这个词本身.
- 也就是说,CBOW模型的输入是某个词A周围的n个单词的词向量之和,输出是词A本身的词向量.
![CBoW 模型/img/NLP/Word2Vce/CBoW.png)
Skip-gram 模型
- skip-gram与CBOW相比,只有细微的不同。skip-gram的输入是当前词的词向量,而输出是周围词的词向量。
- Skip-gram 模型: 能够根据词本身来预测周围有哪些词.
- 也就是说,Skip-gram模型的输入是词A本身,输出是词A周围的n个单词的词向量.
![Skip-gram 模型/img/NLP/Word2Vce/Skip-gram.png)
明天看看这个案例: https://blog.csdn.net/lyb3b3b/article/details/72897952
补充: NPLM - Ngram 模型
- n-gram 模型是一种近似策略,作了一个马尔可夫假设: 认为目标词的条件概率只与其之前的 n 个词有关
- NPLM基于 n-gram, 相当于目标词只有上文。
参考资料:
- https://www.cnblogs.com/iloveai/p/word2vec.html