基于融合社交网络相似度的群体推荐算法研究1课题来源、研究意义和目的1.1课题来源本课题来源于实验室项目,旨在研究电子商务中的推荐系统。
1.2 研究意义和目的近年来,Web2.0 技术的兴起更进一步拓展了用户与计算机之间的交互作用,提高了用户的使用体验,但也进一步加快了互联网信息资源的增长速度。
海量的信息在给广大互联网用户带来更多选择的同时也使得其不得不花费大量的时间和精力从偌大的信息库中找到自己感兴趣或者对自己有用的信息,由此便导致了“信息过载”和“信息爆炸”的问题。
个性化推荐作为目前解决信息过载问题的主要技术,个性化推荐技术已经在诸多领域得到了应用,如电子商务、社交网站、搜索引擎等。
作为全球率先研究个性化推荐系统的企业之一的Amazon[1]错误!未找到引用源。
[2][3],也早已将个性化推荐服务放到了网站中的各个角落,成为目前应用个性化推荐系统的成功案例之一。
迄今为止,关于个性化推荐技术的研究已有很多,但是已有的推荐系统大多都旨在为单个用户提供推荐,而现实生活中,有时却需要向一个群体提供推荐。
比如一个家庭的所有成员同时观看电影、一个群体需要选择旅游目的地以及一个群体需要选择用餐地点等。
由于群体成员的兴趣爱好具有差异性、多样性与复杂性,因此为一个群体提供推荐,同时要求推荐列表能够最大化群体用户的满意程度是相当困难的,传统的个性化推荐算法已经不能很好地适应于群体推荐系统的情景,因此研究更为有效的群体推荐系统算法就显得尤为迫切与重要。
群体推荐系统的研究对于互联网企业寻找新的盈利模式也有积极的指导意义,它能够借助于用户的兴趣偏好与社交网络关系扩大企业产品或者服务的接触面,从而获得更好的产品或服务推广效果。
与此同时,用户也能够通过群体推荐系统建立更为广泛的人际关系,享受到更为个性化的信息推荐服务。
群体推荐系统能够利用多目标决策的方法权衡目标用户邻居集中多个用户或者多个属性的重要性,为单个用户提供更好的个性化信息服务;群体推荐系统还能够根据每个用户在群体中的重要性来提供推荐,因此能够启示个性化推荐系统综合考虑各个方面的影响因素,从而提高用户满意程度与推荐结果的可靠性。
2 国内外研究现状卡耐基·梅隆大学的 Robert Armstrong 等学者首次提出了个性化推荐系统,其在 1995年3月所展示的个性化导航系统Web Watcher 错误!未找到引用源。
[4][5][6]标志着推荐系统领域中相关技术研究的兴起。
随着信息技术的飞速发展以及Web2.0技术的出现,人们迫切需要信息服务的系统来解决日益严重的信息过载问题。
当一个群体需要获取信息的时,现有的个性化推荐系统难以满足实践的需求,于是群体推荐系应运而生。
2.1社交网络相似度的研究现状社交网络[7]是一种用户可以建立公开或半公开账户,并且彼此之间通过链接相连的网络服务。
社交网络在中国已成为覆盖用户最广、传播影响最大和商业价值最高的Web2.0业务。
社交网络中用户之间的关系异常的复杂和特殊,可以用社交网络进行群体推荐研究。
社交网络的形成是基于用户网络的形式呈现的,不同的用户是网络中不同的节点,可以使用(),,G V E W 表示一个社交网络,V 是用户集合,E 表示边的集合,如果两个用户i V 和j V 有关系,就有一条边(),i j e V V ,W 表示权重,权重的大小可以根据需要进行不同的设定。
根据目前社交网络的发展情况,有三种不同形式的社交网络数据:双向确认好友关系类型,这类的网络好友需要双方互认,否则不能成功组建好友关系,代表的有Facebook 、人人网等,该形式的好友可以使用无向图来表示关系;第二类是单向关注类型,用户关注其他用户的同时不需要对方必须关注自己,可以根据自己兴趣喜好选择,代表有Twitter、新浪微博等,这种形式可以使用有向图表示关系;第三种是社区小组类型,用户之间没有明确的关系,但来至于同一个“社区”并拥有某些相似的特征[8]。
传统的个性化推荐方法假设用户是独立、恒等分布的,它忽略了用户之间基于社会关系的信任。
社交网络是人们在线交流的平台,也是信息传播的媒介,激发了对社交网络个性化推荐的研究和发展[9][10]。
2010年在文献[11]中,Song等提出了基于“信息扩散”理论的个性化推荐方法,将社交网络中的朋友关系看成是信息传播的路径,并从理论上证明了该信息传播模型的收敛性,还提出了社会相似度的概念。
在实际应用中,该推荐方法产生的推荐结果优越传统推荐方法的推荐结果。
2011年在文献[12]中,张光卫等针对传统相似性度量方法存在的不足,利用云模型在定性知识表示及定性、定量知识转换时的桥梁作用,提出一种在知识层面比较用户相似度的个性化推荐方法,该方法克服了传统基于向量的相似度比较方法严格匹配对象属性的不足。
2012年在文献[13]中,Eytan Bakshy等分析了推荐网络和社交网络中常见的传播模式,根据概率图模型,给出了推荐网络中传播路径的算法。
并提出社交网络相似度可以用评分相似度和社会相似度共同表示。
2013年在文献[14]中,朱锐等提出了一种基于偏好推荐的服务选择方法,该方法首先搜索一组偏好相似的推荐用户,通过皮尔逊相关系数计算用户的评价相似度,然后基于用户的推荐等级、领域相关度和评价相似度等对用户的推荐信息进行过滤,使推荐信息更为可靠,实验表明该方法能够有效地解决推荐算法中冷启动、推荐信息不准确等问题。
2013年在文献[15]中,Ma等人提出运用VSS和PCC来计算用户之间的相似度,从而进行相应的社会化推荐。
由于这两个相似度计算方法均基于用户之间的共同评分项目集,而在现实世界中可能存在两个用户各自都有很多评分项,但这两个用户之间没有共同评分项目集,因此不能运用这两个函数来计算相应的用户间的相似度,从而导致这两个用户之间的社交网络信息丢失。
为了解决该问题,李改[16]等,于2014年提出了一种新的社会化相似度计算函数NSS使其能计算没有共同评分的用户间的相似度。
2014年在文献[17]中,荣辉桂等提出了用户相似度。
该相似度由两部分构成:一部分是由用户属性决定的用户属性相似度,通过计算用户间的距离D AB ,距离值越小,用户间的属性相似程度越高;另一部分由用户间的互动信息决定互动相似度,其计算与目标用户有相似发件人和收件人的用户数,值越大,用户间的互动相似程度越高。
最后将两部分相似度进行线性拟合,计算得出用户间总相似度。
2014年在文献[18]中,张星等提出了用户之间的相似度,可以通过他们基于网站的强关联操作和弱关联操作体现。
强关联操作指的是用户之间较为直接的交互关系,如转发、评论、分享等操作。
弱关联操作指的是用户之间不太明显的交互关系,如关注同一个公共页面,经常到达相同的地理位置或共同使用同一个网站应用等等。
并用公式123111(s,v)111svsv sv n n n sk sk skk k k a b c Sim h h h ab c ====⋅+⋅+⋅+++∑∑∑来计算两个用户的相似度。
其中,(,)Sin s v 表示用户v 和用户s 的 相似度,sv a 表示用户v 对用户s 的评论次数,sv b 表示用户v 对用户s 的转发次数,sv c 表示用户v 对用户s 的分享次数。
1h ,2h ,3h 分别表示评论、转发、分享这3种操作的权限。
2.2 群体推荐系统的研究现状表示群体推荐是为由两个或两个以上的用户组成的群体提供项目推荐。
群体推荐是建立在个体推荐的基础之上,但并不是个体推荐的简单叠加。
由于群体推荐涉及群体决策,而基于群体决策的本质,决策的结果可能会因为群体成员在群体中所拥有的地位与发言权不同而不同。
简而言之,在构建群体推荐系统时必须考虑到群体中的每个用户可能具有不同权重的实际情况,而这使得群体推荐的过程更为复杂。
现有的群体推荐系统研究策略主要有以下两种:第一,聚合个体结果法;如图1,此方法首先面向群体内各个体进行推荐,再将个体推荐结果聚合成群体推荐结果,如电影群体推荐系统PolyLens 。
这种方法的缺陷在于不能较好地最大化群体成员对于推荐结果的满意程度;同时当群体规模较大时,该算法的复杂度也相对较高。
第二,聚合个体模型法;如图2,此方法的主要思想是将个体模型聚合成群体模型,再基于群体模型进行推荐,如 Ardissono 等[19]设计开发的旅游推荐系统。
由于群体中每个用户可能偏好于不同的聚合方法,因此这种单一的组合模式可能会产生不合理的群体推荐意见,扭曲群体用户的兴趣偏好概貌,进而降低群体用户对于推荐结果的满意程度。
图1 聚合个体结果法图 2 聚合个体模型法在研究群体推荐系统时,不管采用以上所述的两种策略中的任何一种都需要使用适当的聚合策略,不同的聚合策略适用于不同的应用场景,具体情况视系统和群体要求而定。
群体推荐系统作为个人推荐系统的应用延伸,是推荐系统领域技术不断成熟与扩大的标识之一。
作为推荐系统的一个全新分支,群体推荐涉及群体决策的复杂性与群体用户社会关系的多样性,因此有关群体推荐系统算法的研究比较复杂,目前的研究也尚不充分与深入[20][21][22]。
针对以上两种群体推荐方法:a)聚合个体结果法,O’Connor等[23]先对群体内所有个体用协同过滤技术进行推荐,之后从中寻找共同的项目形成群体推荐列表;b)聚合个体模型法,Chen等[24]先利用遗传算法预测用户对于未评价过项目的评分,再建立群体模型进行推荐。
方法a的优点是简单,推荐结果直观,但缺点是最终可能不会产生共同推荐项目;方法b在实际中更为常用,但其缺点是在建立群体模型时会丢失成员用户的个体偏好信息。
2011年在文献[25]中,Kebin McCarthy 等提出了三种针对群体用户的推荐策略:1)群体代理,利用机器学习的方法来获取用户偏好进而提供推荐;2)通过融合群体中每个用户的推荐列表来为整个群体提供推荐;3)通过融合不同用户的概貌信息将群体转换为单个虚拟用户,进而为该虚拟用户提供推荐。
2012年在文献[26]中,朱国玮等提出了一种方法来为群体成员进行商品推荐。
这种方法考虑到群体成员对商品的评分会受到群体成员间的交互作用的影响,不同的意见在群体中的重要性也存在着差异。
而要作出群体推荐,应该整合群体对商品的评分意见。
此方法基于商品的协同过滤算法,同时考虑到群体对商品的评分并不总是可获得的,通过使用GA方法用来学习群体偏好解决子群体的未知评分问题。
2013年在文献[27]中,夏秀峰等在Web客户信任网络的基础上,引入影响度的概念及相应的计算方法,提出了节点网络影响集的构建原则与构建方法,并在此基础上挖掘核心群体,提出了基于网络影响集的核心群体推荐模型以及相应的推荐算法,核心群体推荐模型充分考虑了Web病毒式营销中核心节点在Web客户信任网络中的地位及作用方式,将核心群体的推荐历史作为其进行推荐的主要因素。