item2vec的理解

来源:互联网 发布:学设计软件计划 编辑:程序博客网 时间:2024/06/11 04:02

最早提出 item2vec 这个方法是在这篇论文中Item2Vec: Neural Item Embedding for Collaborative Filtering
这里的 item2vec 用到的方法和 word2vec 中的方法基本类似。可以说是把 word2vec 中的方法迁移到了推荐系统中。基本思想是把原来高维稀疏的表示方式(one_hot)映射到低维稠密的向量空间中,这样我们就可以用这个低维向量来表示该项目(电影),进而通过计算两个低维向量之间的相似度来衡量两个项目之间的相似性。

首先列出几个参数:

n 是一个词中上下文中包含的词数,通常不超过5.
m 是词向量长度
h 为隐藏层个数
N 是语料词汇量的大小。

神经网络模型
我们取任意一个词的前 n-1 个词和第n个词构成的二元对为训练样本。
通过输入前 n-1 词的词向量表示,即输入大小为 (n-1)m ,通过大小为 h*(n-1)m 的权重矩阵W映射到大小为h的隐藏层中,然后再通过大小为 N*h 的权重矩阵U映射到大小为N的输出层中。对输出做一个softmax归一化,就得到了对下一个词概率的预测。由于N这一语料词汇量通常有数万个,于是就有了Hierarchical Softmax 及Negative Sampling两种方法对最后softmax的优化。

同理 item2vec 也类似。
这里只是谈了下整体的流程,对于细节并没有太多涉及。等我做好关于Movielens中电影的item2vec之后,再做详细介绍。

参考链接:
MovieTaster-使用Item2Vec做电影推荐
word2vec 中的数学原理详解

原创粉丝点击