自然语言处理之word2vec

哈哈哈,看了一天终究是没看懂,先记录一下好的资料。
[1] 图解Word2vec,读这一篇就够了
[2] 一文详解NGram语言模型以及困惑度perplexity

1 embedding及word embedding的含义

  Embedding在数学上表示一个maping, f: X -> Y, 也就是一个function,其中该函数是injective(就是我们所说的单射函数,每个Y只有唯一的X对应,反之亦然)和structure-preserving (结构保存,比如在X所属的空间上X1 < X2,那么映射后在Y所属空间上同理 Y1 < Y2)。
  那么对于word embedding,就是将单词word映射到另外一个空间,其中这个映射具有injective和structure-preserving的特点。通俗的翻译可以认为是单词嵌入,就是把X所属空间的单词映射为到Y空间的多维向量,那么该多维向量相当于嵌入到Y所属空间中,一个萝卜一个坑。word embedding,就是找到一个映射或者函数,生成在一个新的空间上的表达,该表达就是word representation。推广开来,还有image embedding, video embedding, 都是一种将源数据映射到另外一个空间

参考网址:embedding的含义

2 什么是Word2Vec和Embeddings?

Word2Vec其实就是通过学习文本来用词向量的方式表征词的语义信息,即通过一个嵌入空间使得语义上相似的单词在该空间内距离很近。Embedding其实就是一个映射,将单词从原先所属的空间映射到新的多维空间中,也就是把原先词所在空间嵌入到一个新的空间中去。

模型

Word2Vec模型中,主要有Skip-Gram(跳字模型)和CBOW(连续词袋模型)两种模型,从直观上理解,Skip-Gram是给定input word来预测上下文。而CBOW是给定上下文,来预测input word。本篇文章仅讲解Skip-Gram模型。

你可能感兴趣的:(推荐系统)