基于信任与用户兴趣变化的协同过滤方法研究-王占.pdf
《基于信任与用户兴趣变化的协同过滤方法研究-王占.pdf》由会员分享,可在线阅读,更多相关《基于信任与用户兴趣变化的协同过滤方法研究-王占.pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、情报学报2017年2月 第36卷第2期Journal of the China Society for Scientific and Technical Information,Feb201 7,36(2):1 97205基于信任与用户兴趣变化的协同过滤方法研究王 占,林 岩(大连海事大学管理科学与工程系,大连 116026)摘 要 协同过滤算法是网上推荐系统最常用的算法,但是传统的协同过滤算法很难解决数据稀疏、冷启动、用户兴趣变化等问题。本文提出基于信任与用户兴趣变化的协同过滤改进方法。该方法将信任引入到传统协同过滤算法中,构建用户信任模型,用信任的传递特性为用户匹配更多邻居用户,从而可以在
2、一定程度上缓解数据稀疏性等问题。随着时间的变化,用户的兴趣也会发生变化,本文利用时间遗忘函数来模拟用户的兴趣变化。本算法综合用户相似度、用户信任度及用户兴趣变化,为目标用户推荐项目。最后利用数据实验验证本方法的有效性。关键词 推荐系统;协同过滤;信任网络;用户兴趣变化Research on Collaborative Filtering Method Based onTrust and the Change of UserS InterestWang Zhan and Lin Yan(Department ofManagement Science and Engineering,Dalian
3、Maritime University,Dalian I 1 6026,China)Abstract:The collaborative filtering algorithm is the mostly applied algorithm in the internet recommendation systems,but itS not effective in solving the problems of data sparsity,cold start and the change of userS interestThispaper proposes a collaborative
4、 filtering algorithm based on trust and the change of userS interestThe trust is introduced into the traditional collaborative filtering algorithm,build user trust model,use trust transfer characteristic forthe user to match more neighbors,which can to some extent alleviate the problems of data spar
5、sity and cold start USersThe userS interest will change with timesoriginal score data will not be able to express the userS current interestIn this paper,the forgetting function of time is proposed to simulate the change of userS interestTaking the usersimilarity,user trust and the change of userS i
6、nterests into consideration,we construct the new method to recommenditems to the target userFinally,experimental schemes are used to verify the effectiveness of our methodKey words:recommendation system;collaborative filtering;trust network;the change of userS interest引 口互联网上涌现出大量信息,用户会迷失其中,出现信息过载问题
7、1。搜索引擎可以在一定程度上缓解信息过载的问题,但是传统搜索引擎提供的共性信息并不能满足每个用户的不同偏好。在这种状况下,个性化推荐系统应运而生,推荐系统能在海量的数据中挖掘出有用的信息,为用户推荐感兴趣的项目,提供个性化服务。比如Amazon对用户做出的商品推荐、YouTube的视频推荐、Linkedln的社交推荐等等都是针对用户个人提供的个性化推荐。推荐系统方便用户准确获取目标项目信息,降低了网上搜索成本;同时也为企业带来巨大收益,比如基于协同过滤算法与关联规则的推荐系统为Amazon带来了30左右的销售额。协同过滤算法是互联网推荐系统中应用最广泛收稿日期:20160621基金项目:国家自
8、然科学基金面上项目“支持协同创作的社会化媒体知识集成研究”(71571025 o作者简介:王占,男,1988年生,硕士,主要研究方向为网络推荐算法,Email:821021493qqcorn;林岩,男,1972年生,博士,博士生导师,主要研究方向为知识管理,Email:linyandlmualiyuncom。http:weigendcomteachingstanfordData Mining and Electronic Business:The Social Data Revolution万方数据198 情 报 学 报 第36卷的算法,已经在很多知名电子商务平台中运用【2】。协同过滤算法模拟
9、日常生活中的“朋友建议”:找到与目标用户具有相似兴趣的用户,通过他们对项目的评价(评分)信息判断目标用户感兴趣的项目,进而对用户进行项目推荐。这种算法的基本步骤为:根据用户对项目的评分数据建立评分矩阵;根据评分矩阵,利用相似度公式计算出目标用户的邻居集(确定与目标用户具有相似兴趣的其他用户);根据邻居的评分值,运用预测评分公式对目标用户未评分的项目进行预测评分,将预测评分值最高的若干项目推荐给目标用户。传统协同过滤算法在实际运用中面临一些问题:数据稀疏性(由于很少用户对商品进行评分,而造成评分矩阵稀疏程度大,无法准确测定用户间相似度);冷启动(由于系统缺乏有关新用户和新项目的信息,很难利用有效
10、的信息为新用户进行新项目的推荐);用户兴趣变化(用户对商品的兴趣可能随着时间而发生变化,固执于用户历史兴趣会导致推荐精度偏差)。这些问题导致传统协同过滤算法适用范围较小、推荐质量不高【34】。目标用户针对邻居用户的推荐而对项目的实际采纳行为,可以转化描述为目标用户对邻居的“信任”。由于信任程度的差异而导致不同邻居对目标用户的推荐力度具有异质性。在传统的协同过滤算法中引入用户问信任可以提高推荐精准度;利用信任的传递性能为目标用户匹配更多邻居用户,在很大程度上缓解数据稀疏性、用户冷启动问题。另外,用户的兴趣会随着时间发生变化,产生兴趣迁移现象51,如果正确引入针对兴趣变化的修正,会有效提高推荐质量
11、。针对协同过滤算法存在的数据稀疏性、冷启动和用户兴趣变化等问题,本文把信任引入协同过滤算法中,并利用时间遗忘函数来模拟用户的兴趣变化,提出基于信任与用户兴趣变化的协同过滤方法。2相关研究21协同过滤算法协同过滤算法已经广泛运用到各大电子商务网站的推荐系统中。在推荐系统中建立用户兴趣模型时,大部分原始数据是用户评分值,推荐系统中协同过滤算法的主要步骤为:数据表示、邻居用户(项目)的形成和资源推荐【61。常用的数据表示是构建评分矩阵;形成邻居的过程是根据用户一项目评分矩阵,利用相似度度量公式计算出目标用户或目标项目的邻居集,常见的相似度计算方法有:余弦相似性(Cosine Similarity),
12、修正的余弦相似性(AdjustCosine Similarity)和皮尔森相关系数(PearsonCorrelation)_刀;资源推荐是利用目标用户的邻居集,通过预测评分公式,对目标用户未评分的项目进行预测评分,将预测评分值最高的若干个项目推荐给目标用户。目前协同过滤算法被分为三大类:基于内存的协同过滤、基于模型的协同过滤、混合协同过滤8】。具体分类如图1所示。圜圈圈网圈基于内存的协同过滤算法就是利用相似度公式来对用户或项目进行计算,采用近邻技术,根据最终邻居的评分来给目标用户提供推荐,现在大型的电子商务系统大都采用基于内存的协同过滤算法。但是传统的基于内存的协同过滤算法存在着数据稀疏性的弊
13、端,即评分矩阵中太多的未知元素导致相似度计算很难代表两项间的真实距离9,10】。为了解决这个问题,人们发展了基于模型的协同过滤算法,包括聚类模型10,11、贝叶斯网络1 21、融合机器学习的方法1 3等等。基于模型的协同过滤算法可以离线的方式建立关于用户兴趣模型,对目标用户进行预测。但是基于模型的协同过滤算法的建模过程过于复杂,降低了推荐系统的性能。混合协同过滤是基于内存和基于模型的协同过滤相结合的形式,虽然推荐精度有所提升,但是建模过程也过于复杂。传统的基于内存协同过滤算法主要缺陷是数据稀疏和冷启动的问题34,为了解决这个问题,同时保持基于内存协同过滤算法的简便性优势,把“信任”的概念引入协
14、同过滤算法中。22 协同过滤算法中引入人员信任在线下活动中,人员之问的信任会影响个人对万方数据第2期 王 占等:基于信任与用户兴趣变化的协同过滤方法研究 199某项目的采纳决策。信任的对象一般是熟悉的家人或朋友,可以从他们那里获取有关是否采纳某项目(比如是否购买某商品)的建议。然而在网络环境中,用户面对的直接对象是虚拟的网络和陌生的他人。然而有研究表明,用户也会将计算机、网站及其他新兴媒介当做信任的对象并与其产生交互,并且在交互过程中,用户的反应与在实际的社会人际关系中人对人的反应相类似【1制。电子商务环境中的信任具有主观性、动态性、非对称、弱传递、时间衰减的特质1引。协同过滤算法模拟销售人员
15、向用户推荐商品,其基本思路是参考其他用户的历史行为为目标用户推荐项目。如果目标用户接受了推荐的项目,就可以看做她(他)信任了推荐系统,进一步的,也可以看做她(他)信任了为其推荐该项目的其他用户(即协同过滤算法中的邻居用户)【1 61。需要说明的是,这种目标用户对其他用户的信任,并不是实际社会关系上的信任,而是从目标用户对待推荐项目的反馈行为中挖掘出来的目标用户与某些其他用户之间的兴趣关联,而这种关联往往是潜在的,不为目标用户所知的。近些年信任关系在推荐算法中的应用受到关注。Massa等【17】提出利用信任数据进行推荐的协同过滤算法,这种修正算法能够很好解决数据稀疏性和冷启动问题。Massa等1
16、 7】在著名的大众消费点评epinionscom网站上截取的数据集具有典型的数据稀疏性和冷启动问题,利用皮尔逊相关系数计算用户相似性时误差较大,导致传统协同过滤算法出现较大偏差。引入信任关系以后,可以利用用户间信任数据进行推荐,同时利用信任数据可以得到更多邻居,从而缓解数据稀疏性问题,也能在一定程度上缓解冷启动问题。但是在Et常生活中,用户对商品的评分数据非常少,对不认识的其他用户的信任数据更不愿意主动评分,并且作者没有提出具体的信任关系传递规则,导致用户间的信任数据很难获取,在实际中很难利用信任数据为其他用户进行推荐。为了解决这个问题,夏小伍等【i 8】提出的基于信任机制的协同过滤算法中,用
17、整体信任度代替相似度进行预测评分,在一定程度上解决了数据稀疏性问题,最后的推荐精准度有所提升。而李湛等1 9】则针对信任信息获取障碍的问题,提出一种基于隐性信任的协同过滤推荐方法。这种方法建立起用户对其邻居和对项目的隐性信任模型,根据用户及其信任邻居的历史喜好向用户推荐项目,实验表明该方法推荐更为准确。但是,即便引入信任的概念,由于实际的评分数据较少,数据稀疏性的问题依然存在。为了弥补这个漏洞,有人提出引入“间接信任”的概念,进而在人员之间区分直接信任和间接信任201。直接信任指两个用户在某些行为方面表现为直接交互,并且通过直接交互的行为而对对方产生的直接信任关系。间接信任指两个用户没有直接进
18、行交互,而是根据信任弱传递性的性质,信任从一个用户传递到下一个用户,经过不止一次的传递到达需求信任的用户,两个用户之间需要其他用户的搭桥完成信任的传递211。在大多数网站上,用户对项目的评价数据非常少,因此用户之间的直接信任数据非常少,增加间接信任数据会大大填补数据稀疏性导致的空缺。总之,对于协同过滤算法中存在的用户评分数据稀疏性、冷启动等问题,信任关系的引入对这些问题有一定程度的缓解作用。23用户兴趣变化相关研究用户的兴趣会随时间变化,越是最近的评分行为,越能代表用户当前的兴趣,一般短时间内用户的兴趣比较稳定。如果用户很早就进行过评分,而此时的兴趣可能经过了多次变化,和评分时的兴趣相似程度较
19、小。根据用户在不同时刻的评分分配不同的权重,可以更准确地推荐。评分权重的产生有不同方式:(1)模拟遗忘曲线心理学家艾宾浩斯提出了著名的记忆遗忘曲线,人的记忆随着时间的变化,记忆量持续下降,刚开始的时候,遗忘速度非常快,越往后遗忘的速率逐渐下降,当时间过了足够久的话,记忆已经遗忘的非常多,但记忆量保持相对稳定2 21。很多学者就是采用不同的方法来模拟遗忘曲线,然后在不同时间设定不同的权重,这是评分加权中最常用的一种方法【2 3|。(2)线性时问函数线性时间函数就是采用评分权重随时间逐步变化,其变化过程呈现直线的方式,然后对用户的兴趣变化建立时间线性权重模型【2 41。(3)非线性时间函数非线性时
20、间函数也是采用权重随时间逐步变化的,变化的过程与遗忘曲线的方式类似,但是变化的快慢形式也是各不相同,然后对用户的兴趣变化建立时间非线性权重模型2 51。万方数据200 情 报 学 报 第36卷(4)时间窗技术时间窗技术就是研究如何划分有效的时问段来描述用户在时间段内的兴趣,最直接的评分选择实现技术就是通过时间窗技术,选择在时间与当前时间点相距较近的评分赋予较大的权重261。3 基于信任与用户兴趣变化的协同过滤方法构建过程31基本的协同过滤算法本文方法采用传统协同过滤算法的基本构架,即首先建立评分矩阵,然后获得邻居,最后产生推荐。构建评分矩阵:对数据预处理,构建用户项目评分矩阵,用m,矩阵表示,
21、m代表m个用户,胛代表n个项目,矩阵元素R“代表用户i对项目,的评分。获得邻居:根据上述评分矩阵,利用相似度度量公式计算出目标用户邻居集,本文采用皮尔森相关系数的计算方法:sim(u,v)=(R厂瓦)(Rv,i-瓦)idu。i善E1(R厂万)2,乏(R厂瓦)2V 。 Vfk其中,毛,表示用户U和v共同评价过项目的集合,R“和月。,分别表示用户U和v对项目i的评分,R和足,分别表示用户甜和v评分的均值。产生推荐:运用预测评分公式对目标用户未评分的项目进行预测评分,将分值最高的若干个项目推荐给目标用户。采用的预测评分公式如下:sim(u,V)(R,iR)工一 、 y, y圪广万+盟弋丽矿(2)wN
22、其中,肌为目标用户的邻居集合,R,为目标用户对项目i的预测评分,凡,表示用户v对项目f的评分,R,和墨,分别表示用户“和y评分的均值。下面分别介绍在这个计算过程中引入用户信任和时问遗忘函数的方法。32用户信任模型由于用户的评分数据非常稀疏,在采用传统协同过滤算法计算用户之间相似度会出现一定程度的失真,同时也无法直接计算出大部分用户之间的相似度,严重影响推荐系统的性能。为了缓解数据稀疏性的缺陷,本文采用用户问信任,并且把信任分为直接信任和间接信任,用直接信任度来表示有直接关联用户的信任程度,用间接信任来表示没有直接关联却有可能存在信任关系的用户。(1)直接信任度由于直接表达用户信任度的方式在电子
23、商务网站上很少存在,所以大部分关于对用户间信任度的研究都是从用户评分数据中隐式获取。为了求出两个用户之间单独的直接信任度,本文借鉴ODonovan的思路,计算出两个用户之问的初始信任度:一个用户能为另一个用户推荐项目的次数中,计算出被推荐的用户满意推荐次数的比例,此比例可当做被推荐用户对主动推荐用户的初始信任度271。假设两个用户U、V,利用预测评分公式根据用户预测用户y关于项目i的评分值PH胁如果PuM;与用户矿的真实评分值R矿,比较,得到的绝对差值不超过值s,则可以认为根据用户U为用户矿关于项目i进行了一次成功的推荐,如果绝对差值大于,则认为推荐失败。则成功推荐的表达式为:l弓只i一彤,占
24、 (3)其中,根据用户u为用户y推荐需要采用基于用户协同过滤算法的预测评分机制,预测公式为:弓肜i=R矿+。fRu)sim(U,矿) (4)其中,彤表示用户矿对所有评价过项目的平均评分,尼,表示用户u对所有评价过项目的平均评分,sim(U,功为用户u和y的相似度,Ruf为用户u对项目i的评分。用Correct(UKf)表示用户u对用户V关于项目i的预测准确性,1为预测成功,0为预测失败。C0删(叫,f):川,一Rv,川Q(5)o,I弓肌iRls用TrustSet表示用户u对用户V成功推荐项目的次数。TrustSet(U,y)=Correct(U,V,i) (6)涎jU其中,而为用户【,能为用户
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 信任 用户 兴趣 变化 协同 过滤 方法 研究
限制150内