【论文阅读笔记】Challenging the Long Tail Recommendation(挑战长尾推荐)

摘要

论文链接Challenging the Long Tail Recommendation

针对长尾推荐问题,提出三种基于图的算法
1)Hitting Time algorithm
2)Absorbing Time algorithm
3)Absorbing Cost algorithm

算法

1、算法问题定义

三种算法都是基于图表示的user-item 信息
a user-item graph
如上图, U i U_i Ui表示用户 i i i M j M_j Mj表示电影 j j j。上图右下角为用户-电影评分数据(称作邻接矩阵,用A表示),评分信息在图结构中用U-M连线的权重表示,U-M之间没有连线表示该用户没有看过这部电影。

此时问题就转化为如下:
给定一个 user-item 加权无向图 G(V,E),和其邻接矩阵A,以及一个用户节点 q,寻找 k 个item满足以下条件:最接近用户节点q;item在长尾部分。
problem definition

2、算法:

三种算法都是基于随机游走(random work)来计算相似度
1)Hitting Time algorithm
2)Absorbing Time algorithm
3)Absorbing Cost algorithm
该算法基于以下假设:爱好广泛(例如爱好多种电影)的用户和爱好专一的用户的评分数据的价值不同。因此作者提出一种新的特征 user-entropy(用户熵),用来表示从一个item节点跳跃到用户结点所需要的 “成本” 。作者提出两种user-entropy:item-based user entropy和topic-based uer entropy。

item-based user entropy 计算公式:
fomula1
其中 w ( i , j ) w(i,j) w(i,j)是用户 i 对 item j 的评分数据。

topic-based uer entropy 计算公式:
E ( u ) = − ∑ z i ∈ T p ( z i ∣ θ u ) l o g   p ( z i ∣ θ u ) E(u) =-\sum_{z_i \in T}p(z_i|\theta_u)log\ p(z_i|\theta_u) E(u)=ziTp(ziθu)log p(ziθu)
其中用户主题概率分布是基于LDA得到的(具体不作介绍)。

3、实验和评估

数据集:Movielens 1M数据集 和作者自己爬取的豆瓣电影评分数据集。

评估标准
准确率:作者采用的是召回率
长尾评估:popularity(frequency of rating)
质量评估:推荐序列和用户兴趣序列的相似度
多样性
效率:耗费时间

模型训练
由于采用整个user-item graph训练复杂度会特别高,因此作者选取一定数量(记为 μ \mu μ )节点的子图来进行训练,并对这个数量 μ \mu μ 的取值做了一定探讨,发现采取一定量节点的子图对模型效果影响不大,但是极大提升训练效率:
在这里插入图片描述

PS:目前论文中还有部分没有完全搞懂的地方,搞懂之后继续补充,第一次写博客,多包涵。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值