一文看懂 Word2vec(基本概念+2种训练模型+5个优缺点)

Word2vec

一文看懂Word2vec

Word2vec 是 Word Embedding 方式之一,属于 NLP 领域。他是将词转化为「可计算」「结构化」的向量的过程。本文将讲解 Word2vec 的原理和优缺点。学习

这种方式在 2018 年以前比较主流,可是随着 BERT、GPT2.0 的出现,这种方式已经不算效果最好的方法了。优化

什么是 Word2vec ?

什么是 Word Embedding ?人工智能

在说明 Word2vec 以前,须要先解释一下 Word Embedding。 它就是将「不可计算」「非结构化」的词转化为「可计算」「结构化」的向量。cdn

这一步解决的是”将现实问题转化为数学问题“,是人工智能很是关键的一步。blog

将现实问题转化为数学问题

将现实问题转化为数学问题只是第一步,后面还须要求解这个数学问题。因此 Word Embedding 的模型自己并不重要,重要的是生成出来的结果——词向量。由于在后续的任务中会直接用到这个词向量。ip

什么是 Word2vec ?get

Word2vec 是 Word Embedding 的方法之一。他是 2013 年由谷歌的 Mikolov 提出了一套新的词嵌入方法。数学

Word2vec 在整个 NLP 里的位置能够用下图表示:产品

Word2vec 在整个 NLP 里的位置

在 Word2vec 出现以前,已经有一些 Word Embedding 的方法,可是以前的方法并不成熟,也没有大规模的获得应用。it

下面会详细介绍 Word2vec 的训练模型和用法。

Word2vec 的 2 种训练模式

CBOW(Continuous Bag-of-Words Model)和Skip-gram (Continuous Skip-gram Model),是Word2vec 的两种训练模式。下面简单作一下解释:

CBOW

经过上下文来预测当前值。至关于一句话中扣掉一个词,让你猜这个词是什么。

CBOW经过上下文来预测当前值

Skip-gram

用当前词来预测上下文。至关于给你一个词,让你猜前面和后面可能出现什么词。

Skip-gram用当前词来预测上下文

优化方法

为了提升速度,Word2vec 常常采用 2 种加速方式:

  1. Negative Sample(负采样)
  2. Hierarchical Softmax

具体加速方法就不详细讲解了,感兴趣的能够本身查找资料。

Word2vec 的优缺点

须要说明的是:Word2vec 是上一代的产物(18 年以前), 18 年以后想要获得最好的效果,已经不使用 Word Embedding 的方法了,因此也不会用到 Word2vec。

优势:

  1. 因为 Word2vec 会考虑上下文,跟以前的 Embedding 方法相比,效果要更好(但不如 18 年以后的方法)
  2. 比以前的 Embedding方 法维度更少,因此速度更快
  3. 通用性很强,能够用在各类 NLP 任务中

Word2vec在类似度计算上效果不错

缺点:

  1. 因为词和向量是一对一的关系,因此多义词的问题没法解决。
  2. Word2vec 是一种静态的方式,虽然通用性强,可是没法针对特定任务作动态优化

Word2vec没法解决多义词的问题

本文首发自 产品经理的 AI 学习库 easyai.tech

相关文章
相关标签/搜索