论文部分内容阅读
摘要:推荐系统根据用户的历史行为数据分析用户兴趣,自动地为用户推荐感兴趣的物品。传统的推荐算法往往忽略用户所处的上下文,时间作为最重要的上下文信息,直接影响推荐质量。本文通过比较分析五种基于时间效应的推荐算法,说明时间效应对于推荐质量的影响。
关键词 推荐系统;协同过滤;推荐系统上下文;时间效应
中图分类号:G4 文献标识码:A
传统的推荐算法主要研究用户兴趣和物品之间的关系,往往忽略了用户所处的上下文。上下文主要包括用户访问系统的时间、地点、情绪和季节信息等。上下文信息直接影响推荐质量,一个好的推荐系统应该能根据季节为用户推荐当季的物品,根据用户的情绪为用户推荐最适合的物品,并能根据时间上下文感知用户兴趣迁移。
时间上下文作为最重要的上下文信息,对于推荐质量至关重要。时间效应对于推荐系统的影响主要表现在以下方[1]:
一、动态变化的用户兴趣
一个最基本的事实是:用户的兴趣是动态变化的,没有一个推荐系统可以做到“一劳永逸”,比如一个用户在小学期间喜欢看动漫,初高中喜欢看武侠小说,大学期间更加偏爱文学著作。用户的兴趣必然随着时间变化发生改变,推荐算法也必须考虑时间效应进行推荐。
二、物品具有生命周期
推荐系统中的物品必然存在生命周期。比如一个商品,刚上市时时爆款,随着时间迁移以及其他商品的上市,这个商品渐渐变得不再那么受人关注。不同物品的生命周期不尽相同,比如电影的生命周期一般比新闻更长。
1 基于时间效应的推荐算法
1.1 时下热门推荐算法
时下热门推荐算法基于历史热门推荐算法,为用户推荐时下最热门的物品,给定某一时刻T,物品i的时下流行度可以定义为:
其中为时间衰减项,值依据不同的数据集而定,下文将时下热门算法简称为CH算法。
1.2 基于时间权重和物品的协同过滤算法
Ding[2]和Andreas[3]等在传统的协同过滤算法的基础上,提出了基于时间权重和物品的协同过滤算法,本文将算法修改后进行Top-N推荐,后文简称为TICF。
基于物品和时间权重的协同过滤算法的Top-N主要分为两个步骤:一是计算物品之间的相似度,计算公式如公式1-2所示:
其中为引入的时间相关项,为用户u对于物品i产生行为的时间点,该公式的核心思想是:用户对于物品i和物品j产生的行为时间间隔越近,时间衰减项的值约小,物品之间的相似度也就越大。其中作为衰减因子对不同系统的取值是不一样的,如果对于用户兴趣变化快的系统而言,应该设置比较大的衰减因子值。
二是根据用户物品相似度矩阵和历史行为计算用户对于物品的偏爱程度,计算公式如下:
1.3 基于时间权重和用户的协同过滤算法
基于用户的协同过滤算法是经典的协同过滤算法,UserCF算法也可以进一步考虑时间效应扩展成为TUserCF。
在找到和当前用户u兴趣相似的一组用户后,这组用户最近的兴趣显然相比这组用户很久之前的兴趣更加接近用户u当前的兴趣。也就是说,我们应该给用户推荐和他兴趣相似的用户最近喜欢的物品。所以在计算用户相似度的时候,可以通过公式1-4引入时间信息。加入时间信息后的用户u和用户v的相似度为:
其中公式对于相似度计算公式加入了时间项,二是通过如下公式来计算用户对于物品的喜爱程度,加入时间信息后用户对于物品的偏好程度为[4]:
2 实验和分析
本文使用All-But-One方法进行实验,采用命中率作为评价指标,考查算法Top-N推荐效果。为模拟真实推荐场景,根据时间窗口(Time Window)大小的不同,将数据集划分为训练集和测试集。对于每个用户来说,将用户最近的一次喜欢的物品作为测试集,其余的物品作为训练集,如图1-1所示。
实验在MovieLens 100K數据集上进行,实验比较了随机推荐算法(Random Rec,简称RR)、历史热门算法(History Hot,简称HH)、时下热门推荐算法(简称CH)、基于时间权重和物品的协同过滤算法(简称TICF)和基于时间权重和用户的协同过滤算法(简称TUCF),综合考虑时间复杂度和实验精度后,将时间窗口的大小分别设置为30天、15天和7天,五种算法在MovieLens 100K上的Top N推荐最佳命中率如表1-1所示。
从表1-1可以看出,对于MovieLens 100K数据集,随机推荐的命中率远远低于其他算法,非个性化的时下热门推荐算法的推荐命中率优于其他算法,甚至好于个性化推荐算法,基于物品的TICF算法的效果要优于基于用户的TUCF算法。总的来看,在MovieLens 100K上,时间上下文信息对于提高Top N推荐命中率至关重要;在考虑时间效应后,非个性化的推荐算法的表现要优于个性化推荐算法,其中时下热门推荐效果最好。同时,实验结果也反映了该数据集的时效性很强,用户的兴趣迁移很快,没有比较稳定的状态,用户兴趣的个性化不明显,用户都喜欢时下热门的物品,而长尾中的物品很少得到用户的关注。
参 考 文 献
[1] Koren Y. Collaborative filtering with temporal dynamics[M]. ACM, 2010.
[2] J. B. Schafer, D. Frankowski, J. Herlocker, et al. Collaborative Filtering Recommender Systems [J]. The adaptive web, 2007, 4321: 291-324.
[3] Tao Zhou, Jie Ren, Matú? Medo, et al. Bipartite network projection and.
[4] 项亮. 推荐系统实践[M]. 人民邮电出版社, 2012.
作者简介:牟斌皓(1991.12-),男,汉族,四川合江人,助教,硕士,主要从事人工智能与大数据研究
项目名称:泸州职业技术学院校级科研项目 基于时间效应和标签信息的推荐算法研究 编号:K-2138
关键词 推荐系统;协同过滤;推荐系统上下文;时间效应
中图分类号:G4 文献标识码:A
传统的推荐算法主要研究用户兴趣和物品之间的关系,往往忽略了用户所处的上下文。上下文主要包括用户访问系统的时间、地点、情绪和季节信息等。上下文信息直接影响推荐质量,一个好的推荐系统应该能根据季节为用户推荐当季的物品,根据用户的情绪为用户推荐最适合的物品,并能根据时间上下文感知用户兴趣迁移。
时间上下文作为最重要的上下文信息,对于推荐质量至关重要。时间效应对于推荐系统的影响主要表现在以下方[1]:
一、动态变化的用户兴趣
一个最基本的事实是:用户的兴趣是动态变化的,没有一个推荐系统可以做到“一劳永逸”,比如一个用户在小学期间喜欢看动漫,初高中喜欢看武侠小说,大学期间更加偏爱文学著作。用户的兴趣必然随着时间变化发生改变,推荐算法也必须考虑时间效应进行推荐。
二、物品具有生命周期
推荐系统中的物品必然存在生命周期。比如一个商品,刚上市时时爆款,随着时间迁移以及其他商品的上市,这个商品渐渐变得不再那么受人关注。不同物品的生命周期不尽相同,比如电影的生命周期一般比新闻更长。
1 基于时间效应的推荐算法
1.1 时下热门推荐算法
时下热门推荐算法基于历史热门推荐算法,为用户推荐时下最热门的物品,给定某一时刻T,物品i的时下流行度可以定义为:
其中为时间衰减项,值依据不同的数据集而定,下文将时下热门算法简称为CH算法。
1.2 基于时间权重和物品的协同过滤算法
Ding[2]和Andreas[3]等在传统的协同过滤算法的基础上,提出了基于时间权重和物品的协同过滤算法,本文将算法修改后进行Top-N推荐,后文简称为TICF。
基于物品和时间权重的协同过滤算法的Top-N主要分为两个步骤:一是计算物品之间的相似度,计算公式如公式1-2所示:
其中为引入的时间相关项,为用户u对于物品i产生行为的时间点,该公式的核心思想是:用户对于物品i和物品j产生的行为时间间隔越近,时间衰减项的值约小,物品之间的相似度也就越大。其中作为衰减因子对不同系统的取值是不一样的,如果对于用户兴趣变化快的系统而言,应该设置比较大的衰减因子值。
二是根据用户物品相似度矩阵和历史行为计算用户对于物品的偏爱程度,计算公式如下:
1.3 基于时间权重和用户的协同过滤算法
基于用户的协同过滤算法是经典的协同过滤算法,UserCF算法也可以进一步考虑时间效应扩展成为TUserCF。
在找到和当前用户u兴趣相似的一组用户后,这组用户最近的兴趣显然相比这组用户很久之前的兴趣更加接近用户u当前的兴趣。也就是说,我们应该给用户推荐和他兴趣相似的用户最近喜欢的物品。所以在计算用户相似度的时候,可以通过公式1-4引入时间信息。加入时间信息后的用户u和用户v的相似度为:
其中公式对于相似度计算公式加入了时间项,二是通过如下公式来计算用户对于物品的喜爱程度,加入时间信息后用户对于物品的偏好程度为[4]:
2 实验和分析
本文使用All-But-One方法进行实验,采用命中率作为评价指标,考查算法Top-N推荐效果。为模拟真实推荐场景,根据时间窗口(Time Window)大小的不同,将数据集划分为训练集和测试集。对于每个用户来说,将用户最近的一次喜欢的物品作为测试集,其余的物品作为训练集,如图1-1所示。
实验在MovieLens 100K數据集上进行,实验比较了随机推荐算法(Random Rec,简称RR)、历史热门算法(History Hot,简称HH)、时下热门推荐算法(简称CH)、基于时间权重和物品的协同过滤算法(简称TICF)和基于时间权重和用户的协同过滤算法(简称TUCF),综合考虑时间复杂度和实验精度后,将时间窗口的大小分别设置为30天、15天和7天,五种算法在MovieLens 100K上的Top N推荐最佳命中率如表1-1所示。
从表1-1可以看出,对于MovieLens 100K数据集,随机推荐的命中率远远低于其他算法,非个性化的时下热门推荐算法的推荐命中率优于其他算法,甚至好于个性化推荐算法,基于物品的TICF算法的效果要优于基于用户的TUCF算法。总的来看,在MovieLens 100K上,时间上下文信息对于提高Top N推荐命中率至关重要;在考虑时间效应后,非个性化的推荐算法的表现要优于个性化推荐算法,其中时下热门推荐效果最好。同时,实验结果也反映了该数据集的时效性很强,用户的兴趣迁移很快,没有比较稳定的状态,用户兴趣的个性化不明显,用户都喜欢时下热门的物品,而长尾中的物品很少得到用户的关注。
参 考 文 献
[1] Koren Y. Collaborative filtering with temporal dynamics[M]. ACM, 2010.
[2] J. B. Schafer, D. Frankowski, J. Herlocker, et al. Collaborative Filtering Recommender Systems [J]. The adaptive web, 2007, 4321: 291-324.
[3] Tao Zhou, Jie Ren, Matú? Medo, et al. Bipartite network projection and.
[4] 项亮. 推荐系统实践[M]. 人民邮电出版社, 2012.
作者简介:牟斌皓(1991.12-),男,汉族,四川合江人,助教,硕士,主要从事人工智能与大数据研究
项目名称:泸州职业技术学院校级科研项目 基于时间效应和标签信息的推荐算法研究 编号:K-2138