BLOG

个人博客,记录学习与生活

[MLSP2016]Item2Vec

Published July 29, 2020, 10:30 a.m. by kkk

简介

1受到Word2Vec(Skip-gram with negative sampling)的启发,将其引入到基于物品的协同过滤之中(Item-based Collaborative Filtering)。最后在大型数据集上与SVD(奇异值分解)对比实验展示了其优秀的效果。

有必要澄清一点,我们并不是来实现最先进的技术,而只是显示另一个基于Word2Vec的成功例子。

基于的场景是item-based CF业务,文中进行了说明比较,这个主要用于单个商品的同类推荐,通常来说,同类推荐相较于普通的用户-商品推荐场景,用户处于更强的兴趣和购买意愿,使得该场景具有更高的点击率(Click-Through Rates)。此外,很多系统中,用户数量远多于商品数量,使得对商品进行embedding能极大减小计算量。

处理思路

对Word2Vec进行了少量修改,然后与协同过滤结合,实现神经网络的协同过滤。

在已有CF数据下,商品是用户生成的集合,运用Word2vec之前,首先将序列化的商品转化为集合化,虽然会丢失空间信息,论文认为空间信息不重要,并在所有论文场景中都将其忽略,基于一定假设:处于同一集合内的商品是相似的,无论它们之间具有怎样的时间、次序。可得目标函数(区别在于$j\not =i$): $$ \frac{1}{K} \sum^K_{i=1} \sum^K_{j\not = i} \log p(w_j\vert w_i) $$ 或者:与Word2Vec中保持相同的目标函数,但是运行时,打乱商品的每个集合。另一个措施是增加一个部分$v_i$,将最后得到的embedding特征$u_i$再进行处理,得到$u_i+v_i$或者$[u_i^Tv_i^T]^T$

其它操作同Word2Vec,同采用负采样和子采样,以SGD进行参数更新。

实验效果图

接着是实验,对比了提出的item-based CF和以往的item-item SVD,在微软XBOX音乐上用户-音乐人的数据集,有9M数据构成,每个事件都是一个用户-音乐人关系,共包含732K用户和49K音乐家,结果如下图(最后将embedding向量用t-SNE进行降维再可视化)



  1. Barkan O, Koenigstein N. Item2vec: neural item embedding for collaborative filtering[C]//2016 IEEE 26th International Workshop on Machine Learning for Signal Processing (MLSP). IEEE, 2016: 1-6. 


Share this post
< Pre: [KDD2016]SDNE Pos: [KDD2018]Alibaba Embedding >
446 comments
Similar posts
Add a new comment