推荐系统——利用上下文信息

来源:互联网 发布:java如何执行cmd命令 编辑:程序博客网 时间:2024/06/05 05:33

推荐系统需要结合用户所处的上下文,包括用户访问系统的时间、地点、心情等,对于提高推荐系统的推荐效果是非常重要的。
即研究如何给用户生成TopN推荐表,并包含用户在某一时刻地点最可能喜欢的物品:

时间上下文信息:

①用户兴趣是变化的:不同年龄是不一样的
②物品是有生命周期的
③季节效应:反映了时间本身对用户兴趣的影响

系统时间特性的分析:
在给定时间信息后,推荐系统从一个静态系统变成一个时变的系统,而用户的数据也变成了时间序列。包含时间信息的用户行为数据集通过一系列三元组构成(u,i,t)代表了用户u在时刻t对物品i产生过行为,可以通过统计如下信息研究:
①数据集每天独立用户数的增长情况
②系统的物品变化情况
③用户访问情况,相隔T天的重合度

物品的生命周期和时效性指标:
①物品平均在线天数:
如果一个物品在某天被至少一个用户产生过行为,就定义在这一天在线
②相隔T天系统物品流行度向量的平均相似度
取系统中相邻T天中的两天,分别计算这两天的物品流行度,从而得到这两个流行度向量,然后计算着两个向量的余弦相似度,如果相似度大说明系统的物品在相隔T天的时间内没有发生大的变化,说明时效性不强,平均在线时间较长。

注意推荐系统的时效性,不能过多的离线实验,既要考虑时效性,也要考虑历史记录

推荐系统的时间多样性:
①生成推荐结果时加入一定的随机性
②记录用户每天看到的推荐结果,然后在每天给用户进行推荐时,对他前几天看过很多的推荐结果进行适当的降权
③每天给用户使用不同的推荐算法

时间上下文推荐算法:
**①最近最热门:**n(T) = ∑[(u,i,t)∈Train,t

地点上下文信息:

①兴趣本地化:
不同地区的人有不同的兴趣
②活动本地化:
一个用户往往在附近的地区活动,研究发现45%的用户在活动范围半径不超过16公里的地区活动,而75%的用户活动半径不超过80公里,所以不能给用户推荐太远的地方

LARS-U算法考虑用户位置金字塔模型,计算用户对物品兴趣P(u,i)后要减去位置权重TravelPenalty(u,i),算法要优于普通的ItemCF

0 0
原创粉丝点击