[NLP] word2vec

word2vec简介

作用: 将自然语言中的字词转为计算机可以理解的稠密向量.
在word2vec之前曾经用one-hot来表示字词, 比如:

杭州 [0,0,0,0,0,0,0,1,0,……,0,0,0,0,0,0,0]
上海 [0,0,0,0,1,0,0,0,0,……,0,0,0,0,0,0,0]
宁波 [0,0,0,1,0,0,0,0,0,……,0,0,0,0,0,0,0]
北京 [0,0,0,0,0,0,0,0,0,……,1,0,0,0,0,0,0]

但是one-hot有如下问题: (1) 向量之间相互独立. (2) 向量维度过大, 矩阵过于稀疏, 可能造成维度灾难.
word2vec可以解决这些问题: 将one-hot的向量转换为低维度的稠密向量. 实质上用到的解决方法是矩阵分解.


相关概念理解

词向量: 也被称为词嵌入(word embeddings), word2vec就是是一种常见的词向量, 除了word2vec, 比较出名的还有GloVe.
LDA: 是主题模型(Topic Models)的一种计算方法.
语言模型: 在统计自然语言处理中,语言模型指的是计算一个句子的概率模型。
神经概率语言模型: Neural Probabilistic Language Model, 词的表示是向量形式、面向语义的。两个语义相似的词对应的向量也是相似的,具体反映在夹角或距离上


参考:
大白话讲解word2vec到底在做些什么
词向量,LDA,word2vec三者的关系是什么?
word2vec原理推导与代码分析(未看完)


未完待续……

猜你喜欢

转载自blog.csdn.net/pangtouyu_qy/article/details/80059947