Files
ailearning/docs/nlp/Word2Vec.md
2019-10-11 16:48:36 +08:00

49 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Word2Vec 讲解
## 介绍
**需要复习** 手写 Word2Vec 源码https://blog.csdn.net/u014595019/article/details/51943428
* 2013年Google开源了一款用于词向量计算的工具—— `word2vec`,引起了工业界和学术界的关注。
* `word2vec` 算法或模型的时候,其实指的是其背后用于计算 **word vector**`CBoW` 模型和 `Skip-gram` 模型
* 很多人以为 `word2vec` 指的是一个算法或模型,这也是一种谬误。
* 因此通过 Word2Vec 技术 输出的词向量可以被用来做很多NLP相关的工作比如聚类、找同义词、词性分析等等.
> 适用场景
1. cbow适用于小规模或者主题比较散的语料毕竟他的向量产生只跟临近的字有关系更远的语料并没有被采用。
2. 而相反的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, 相当于目标词只有上文。
* * *
参考资料:
1. https://www.cnblogs.com/iloveai/p/word2vec.html