APP下载

基于用户行为反馈的用户兴趣模型更新算法

2017-06-15

关键词:特征词新鲜度历史

李 强

(重庆邮电大学 软件学院,重庆 400065)

基于用户行为反馈的用户兴趣模型更新算法

李 强

(重庆邮电大学 软件学院,重庆 400065)

在个性化推荐系统中,用户模型是推荐系统的主要依据,模型的好坏直接影响推荐系统的质量。但是在实际的应用中,用户兴趣会随环境和时间发生变化,有可能推荐的商品已不满足用户当前的兴趣需求。本文提出了一种记录用户当前兴趣模型自我更新的算法,通过对用户历史访问数据建立用户兴趣模型,以时间为主线,统计用户当前兴趣。本文以Movielens电影数据集为数据源,在设计的个人推荐系统中应用基于用户行为反馈的用户兴趣模型更新算法,有效缓解了用户兴趣偏移的问题,提高了推荐质量。

用户兴趣模型;推荐系统;兴趣偏移

随着互联网行业的井喷式发展,网上信息量几何倍数式爆发增长。传统的搜索引擎需要用户输入关键字来对海量信息进行筛选,用户快速获取自己需求的信息变得越来越困难。面对当今“信息过载”[1]的问题,个性化推荐系统[2]应运而生,它是大数据时代的产物。相比于传统的搜索引擎,个性化推荐更人性化,它可以根据用户历史浏览行为,挖掘出用户的兴趣[2]偏好,根据用户兴趣推荐用户感兴趣的信息,从而帮助用户快速获取有用的信息资源。但是传统的推荐算法没有考虑用户兴趣变化的问题,没有挖掘用户当前和长久的兴趣,推荐有效性不高。针对以上问题,本文提出了一种记录用户当前兴趣模型自我更新的算法,以时间为主线,统计用户长期兴趣和记录用户近期兴趣变化方向,并以此为策略为用户推荐物品[3]来提高推荐系统的有效性和可靠性。

1 相关技术

本文以个性化电影推荐系统为研究对象,以Movielens电影数据集为研究数据,主要研究用户兴趣模型的自我更新问题。

1.1 用户兴趣模型

(1)一部电影可以包含多个特征词,所以电影M可记作:

M={M1,M2...,Mj,...,Mn},1≤j≤n。

(1)

其中:Mj表示电影类型。

(2)电影类型与访问次数关系F为:

F=(Mj,Kj)。

(2)

其中:Kj为单个特征词被访问的次数。

(3)用户对单个特征词的兴趣度。

通过对单个特征词的出现次数统计,来衡量用户对该特征词的兴趣程度。

定义1 用户对单个电影特征词的兴趣度(Uinterest):

Uinterest=Fj,1≤j≤n。

(3)

其中:Fj由式(2)可得,n为特征词的内容的总个数。

2 引入用户当前兴趣的用户兴趣模型

2.2 加入用户当前兴趣

假设用户最近最多观看的电影为用户当前喜欢的电影,很久没有观看的为用户将要遗忘的电影,本文采用类似LRU算法的一种改进方法进行用户模型更新,把用户历史记录按时间排序,用户观看一次电影,就统计该电影的类型,该电影类型在用户兴趣模型中的比重就加1,用户兴趣模型中已经存在但不属于当前观看的电影类型的其他类型减1,以此来记录电影类型新鲜度。所以用户常看的电影类型比重就会升高,代表用户当前的喜爱程度;同时,用户很久不看的电影类型就会一直衰减,比重会随着用户长时间不访问一直降低。

(1)电影类型与当前兴趣度关系F′可表示为:

F′=(Mj,Ci)。

(4)

其中:Mj见式(1),Ci为电影类型当前兴趣度。

(2)用户对单个电影类型的当前兴趣度。

通过对单个特征词的出现次数统计,来衡量用户对该特征词的兴趣程度。

定义2 用户对某个电影类型的兴趣度(Ufresh)

(5)

其中:F′由式(4)可得,n为特征词的内容的总个数。

(3)用户模型U可以表示为:

(6)

2.3 当前兴趣度算法描述

用户最近多次访问的电影类型最能代表用户当前的兴趣方向,如果长时间没有观看的电影类型,就不再代表用户当前的兴趣。最近最常访问的电影类型当前兴趣度升高,很长没访问电影类型的当前兴趣度不断降低,所以根据当前兴趣度的大小,可以达到兴趣过滤的目的。

综上所述,下面算法给出计算用户兴趣新鲜度的过程。

算法 :Fresh_CB(Vi)//(Vi)为用户i的历史观看电影记录

Begin:

输入:用户历史浏览记录集

int[]Uinterest; //定义一个用户兴趣模型数组Uinterest

int[]Ufresh; //定义一个用户兴趣模型数组Ufresh

for(intj=0;j

Uinterest[j]++; //对用户历史兴趣度进行统计

for(intj=0;j

Ufresh[j]++ ; //当前访问的兴趣类型权值增加

else if(Uinterest[j]!=0)

Ufresh[k]-- ;k为不等于j的数组位置 //当前没访问的兴趣减弱

End

输出:Ui

2.3 推荐策略改进

用户历史兴趣Kij代表用户对电影类型的喜爱程度,而当前兴趣度Ci代表用户当前对物品某类型的喜爱程度。根据式(6),如果两个物品历史兴趣度一样,就可以根据当前兴趣度,使用基于内容推荐[4]或协同过滤的推荐[5]算法,推荐用户当前兴趣度高的物品。

3 实验结果分析

实验主要对movielens电影数据集中7 120位用户的1 048 577条历史数据做统计。如图1和图2所示,为某一用户的历史电影观看历史类型总和统计和基于LRU算法(Least Recently Used )改进的当前兴趣度统计。

图1 用户历史兴趣统计

图1是用户对各电影类型历史兴趣度的统计结果。根据式(3)对目标用户所有历史观看电影类型进行累计,把相同的电影类型进行累加,由此可得出用户喜欢的电影类型为:Sci-Fi>Action=Drama=Thriller。

图2 用户当前兴趣度统计

图2是用户对各电影类型的当前兴趣度统计结果。根据式(5)当前兴趣度的计算设计思想是:对用户最新看的电影类型为正向刺激,相反,没有看的类型为负面遗忘,如果用户某一段时间一直观看某类型的电影,那么在该时间段内,该类型新鲜度就比较高;同时,其他以前喜欢的电影类型新鲜度会逐渐减低。图2中,Film-Noir>Sci-Fi>Drama>Action=Thriller,Film-Noir即为用户新的兴趣方向,Action、Drama、Thriller在传统基于内容方法中所占权重是一样的,但是按照新鲜度计算,Drama的新鲜度要比Action、Thriller要高,所以推荐Drama类型的电影比Action、Thriller有效性要高。如果用户继续观看Film-Noir类型相关的电影,Film-Noir类型权重会继续增强,相反其他类型会逐渐降低;如果用户对Film-Noir类型是阶段性的喜欢,也不会影响长久兴趣的改变。所以,通过对用户历史记录计算,可以观察用户兴趣的变化趋势,通过用户当前兴趣度挖掘出用户新的潜在兴趣。

4 结 语

人类的自然遗忘是一个渐进的过程,我们可以假设用户兴趣变化也遵从这一规律,用户的兴趣会随时间的变化而发生变化。用户最近最多访问的往往可以代表用户当前的兴趣方向,而很久没有去访问的,就会逐渐被遗忘。本文对用户当前兴趣类型新鲜度计算设计了一个初步的算法模式,但是遗忘的速度也是有快慢的,会随着时间的增加逐渐增强。所以在后续的研究工作中可以根据时间计算遗忘下降比例速率,来更好地计算用户对特征属性历史兴趣度和当前兴趣度。

[1] 曾春,吴潇,周立柱.个性化服务技术综述[J].软件学报,2009,20(22):350-363.

[2] Will H,Larry S,Mark R,et al.Recommending and Evaluating Choices in a Virtual Community of Use[C]//Proc of CHI,1995:194-201.

[3] GregLinden B S,Jeremy Y.Amazon.com Recommendations:Item-to-Item Collaborative Filtering[J].IEEE Internet Computing,2003,7(1):76-80.

[4] 曹毅,贺卫红.基于内容过滤的电子商务推荐系统研究[J].计算机技术与发展,2009,19(6):182-185.

[5] Goldberg D,Nichols D,Oki B M,et al.Using Collaborative Filtering to weave an information Tapestry[J].Communications of the ACM,1992,35(12):61-70.

Updating Algorithm of User Interest Model Based on User Behavior Feedback

LI Qiang

(Chongqing University of Posts and Telecommunications,Chongqing 400065, China)

In the personalized recommendation system, the user model is the main basis of the recommended system, the model directly affects the quality of the recommended system. However, in practical applications, the user interest will change with the environment and time, it is possible to recommend the goods do not meet the user′s current interest needs. This paper presents an algorithm to record the user′s current interest model self-renewal. By setting the user interest model to the user historical access data, the time is the main line, and the user′s current interest is counted. In this paper, the Movielens film data set is used as the data source, and the user interest model updating algorithm based on user behavior feedback is applied in the design of the personal recommendation system, which effectively alleviates the problem of user interest offset and improves the recommendation quality.

user interest model; recommendation system; interest offset

2017-03-07

李强(1988-),男,江苏徐州人,在读硕士研究生,主要从事数据挖掘方面的研究.

10.3969/i.issn.1674-5403.2017.02.020

TP31

A

1674-5403(2017)02-0075-04

猜你喜欢

特征词新鲜度历史
稻谷新鲜度测定影响因素分析及优化
基于类信息的TF-IDF权重分析与改进①
基于改进TFIDF算法的邮件分类技术
产品评论文本中特征词提取及其关联模型构建与应用
新历史
历史上的6月
历史上的八个月
历史上的4月
面向文本分类的特征词选取方法研究与改进
你在异性眼中的“新鲜度”