word2vec?word2vec被淘汰了吗
一、word2vec 数学原理
word2vec是一种以词嵌入为基础的自然语言处理技术,其数学原理主要基于神经网络和分布式表示。具体而言,word2vec使用由单词上下文中的共现信息构建的向量空间模型来表示单词,通过简单的线性代数运算来实现单词的相似性计算和语义关联。其核心数学原理包括了神经网络的训练、词向量的表示和相似度计算等。通过这些原理,word2vec能够有效地将单词映射到高维空间中,并实现相似词汇的聚类和语义关联的推断。
二、word2vec原理推导
Word2Vec的原理推导主要基于两个核心思想:一是“分布式假设”,即对于某个词,其上下文中的词与其出现的概率是相关的;二是“预测编码”,即通过训练模型使得对于给定的上下文,可以预测中心词。具体来说,Word2Vec有两种训练模型:CBOW和Skip-gram。CBOW模型的目标是预测上下文词,而Skip-gram模型的目标是预测中心词。在训练过程中,Word2Vec采用梯度下降法来最小化预测误差。通过反向传播算法,不断调整神经网络的权重参数,使得预测结果越来越接近真实结果。Word2Vec的训练过程中采用了Huffman编码的思想,即将出现频率高的词赋予较短的编码,出现频率低的词赋予较长的编码。这种编码方式可以在一定程度上压缩数据,提高训练效率。通过上述原理,Word2Vec可以学习到词的语义信息和上下文关系,从而将词向量化表示。这种向量表示方式可以用于很多自然语言处理任务,如文本分类、情感分析、聚类等。
三、word2vec有什么应用
因为词语是自然语言处理中最细粒度的表达单位,因此用词向量表示词语的方式应用很广泛,它既可以执行词语层面的任务,也可以作为很多其他模型的输入,执行更高层次的计算,比如句子、文档层面的任务。以下简单说几种应用:
1)计算相似度:寻找相似词、信息检索
这里说一个有趣的背景应用:淘宝检测盗版商品。
淘宝里有一些小商家,专卖大品牌的原单货,也有很多人打着原单的名义卖的是高仿,样子差不多,但是价钱相比于品牌能便宜非常多。这些小商家不敢在淘宝商品详情里写品牌名,他们发明了很多品牌名的变种,比如日本知名女装品牌“mossy”会写成“猫ssy”、“sly”会写成“s赖”,Levi's会变写成李家、L家等等来躲避打击。面对这种情况就可以利用word2vec对商品详情文本进行模型训练、可以把这些盗版品牌找出来。
2)社交网络的推荐系统
应用背景举例:
比如我们在使用微博的时候,在关注了一些博主之后,微博会向你推荐一些类别很相似的其他博主。这里就可以利用word2vec来实现,令每一个博主是一个词向量,将用户关注博主的顺序定义一篇文档,训练模型,计算知名博主之间特征的相似度,便可以完成推荐。
3)作为SVM/LSTM等模型的输入:中文分词、命名体识别
还可以将word2vec与其他的模型结合使用,比如利用训练好的词向量做SVM模型的输入,达到更好的聚类效果。
4)机器翻译中的应用
词向量在机器翻译领域中比较著名的一个应用就是词向量的提出者TomasMikolov团队在谷歌工作时开发的一种词典和术语生成技术。介绍算法时举了的一个例子:分别训练英语和西班牙对应的词向量空间E和S,取出来英语中的数字1-5:one,two,three,four,five和西班牙语中的数字1-5uno,dos,tres,cuatro,cinco的词向量。为了方便作图,用PCA进行主成分将降维,得到下图结果。从图中我们也可以看出:这五个词在各自的向量空间的位置分布相似,进一步说明了在词向量空间中利用距离刻画词语词含义之间相似性的合理性。