word2vec词向量表示 word2vec词向量怎么来的?
word2vec词向量怎么来的?
2013年,谷歌推出了一款开源的word矢量计算工具word2vec,引起了业界和学术界的关注。首先,word2vec可以在数百万个词典和数亿个数据集上进行有效的训练;其次,wordembedding工具的训练结果可以度量量词之间的相似度。随着深度学习在自然语言处理中的普及,许多人错误地认为word2vec是一种深度学习算法。实际上,word2vec算法的背后是一个浅层的神经网络。需要强调的另一点是,word2vec是一个用于计算worddirector的开源工具。当我们谈到word2vec算法或模型时,实际上是指用于计算wordvector的cbow模型和skip-gram模型。很多人认为word2vec是指一种算法或模型,这也是一种谬误。接下来,本文将从统计语言模型入手,详细介绍word2vec工具背后算法模型的起源和发展。细节:网页链接
主题描述不清楚。它是随机给出一个向量,然后找到最接近向量的单词。
我仍然知道确切的向量,并找到这个向量对应的单词。这两者有很大的区别。
如果我们需要找到最接近余弦相似度的单词,最简单的方法是计算所有单词向量的余弦相似度,并输出最大余弦相似度的单词。但一般来说,这种方法的性能风险很高,因此需要考虑使用一种特殊的数据结构进行存储。
word2vec,有了词向量,怎么通过词向量反推出这个词?
Word2vec本质上是一个矩阵分解模型。简言之,矩阵描述了每个单词和上下文中的一组单词之间的相关性。对矩阵进行分解,只取隐藏空间中每个单词的向量。
所以word2vec适用于一个数据序列,该序列的本地数据之间有很强的相关性。典型的是文本的顺序,相邻的词是密切相关的,甚至一个词的上下文都可以大致预测中间的词是什么。所学习的词向量表示词的语义,可用于分类、聚类和相似度计算。另外,word2vec的分层分类器或抽样方法实际上对流行项做了大量的惩罚,因此不会像一般的矩阵分解那样,语义相似的最后一个词就是流行词,这是word2vec的一个很好的特点。
对于短文本分类,我们直接在文档中加入所有的词向量作为文本特征来训练分类器,效果也很好。该方法也应用于word2vec的训练过程中。另外,如果改用RBF核支持向量机等非线性分类器,分类精度会更高,也符合预期。
其他序列的数据也可以这样做。我记得去年关于KDD的文章deepwalk,使用社交网络上的随机游走来生成节点序列,然后使用word2vec来训练每个节点对应的向量。但我用这种方法在QQ社交网络上做了一些实验,发现效果很不理想,这可能与QQ社交网络的复杂性有关。
我非常满意的一个应用程序是将word2vec应用到用户的应用程序下载序列。根据用户的app下载序列,将app视为一个词,也可以形成这样的序列数据,然后训练每个app对应的向量。利用这个向量来计算应用之间的相似度,效果非常好。它可以聚合真正与内容相关的应用程序,同事可以避免受流行应用程序的影响。类似的场景应该有很多,而且应用也很广泛,比如推荐系统和广告系统。
word2vec词向量表示 word2vec训练词向量 word2vec模型如何使用
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。