基于融合社交网络相似度的群体推荐算法研究.docx
《基于融合社交网络相似度的群体推荐算法研究.docx》由会员分享,可在线阅读,更多相关《基于融合社交网络相似度的群体推荐算法研究.docx(12页珍藏版)》请在冰豆网上搜索。
![基于融合社交网络相似度的群体推荐算法研究.docx](https://file1.bdocx.com/fileroot1/2022-12/12/e619e54e-5b00-49de-95e9-4207549a262e/e619e54e-5b00-49de-95e9-4207549a262e1.gif)
基于融合社交网络相似度的群体推荐算法研究
基于融合社交网络相似度的
群体推荐算法研究
1课题来源、研究意义和目的
1.1课题来源
本课题来源于实验室项目,旨在研究电子商务中的推荐系统。
1.2研究意义和目的
近年来,Web2.0技术的兴起更进一步拓展了用户与计算机之间的交互作用,提高了用户的使用体验,但也进一步加快了互联网信息资源的增长速度。
海量的信息在给广大互联网用户带来更多选择的同时也使得其不得不花费大量的时间和精力从偌大的信息库中找到自己感兴趣或者对自己有用的信息,由此便导致了“信息过载”和“信息爆炸”的问题。
个性化推荐作为目前解决信息过载问题的主要技术,个性化推荐技术已经在诸多领域得到了应用,如电子商务、社交网站、搜索引擎等。
作为全球率先研究个性化推荐系统的企业之一的Amazon[1][2][3],也早已将个性化推荐服务放到了网站中的各个角落,成为目前应用个性化推荐系统的成功案例之一。
迄今为止,关于个性化推荐技术的研究已有很多,但是已有的推荐系统大多都旨在为单个用户提供推荐,而现实生活中,有时却需要向一个群体提供推荐。
比如一个家庭的所有成员同时观看电影、一个群体需要选择旅游目的地以及一个群体需要选择用餐地点等。
由于群体成员的兴趣爱好具有差异性、多样性与复杂性,因此为一个群体提供推荐,同时要求推荐列表能够最大化群体用户的满意程度是相当困难的,传统的个性化推荐算法已经不能很好地适应于群体推荐系统的情景,因此研究更为有效的群体推荐系统算法就显得尤为迫切与重要。
群体推荐系统的研究对于互联网企业寻找新的盈利模式也有积极的指导意义,它能够借助于用户的兴趣偏好与社交网络关系扩大企业产品或者服务的接触面,从而获得更好的产品或服务推广效果。
与此同时,用户也能够通过群体推荐系统建立更为广泛的人际关系,享受到更为个性化的信息推荐服务。
群体推荐系统能够利用多目标决策的方法权衡目标用户邻居集中多个用户或者多个属性的重要性,为单个用户提供更好的个性化信息服务;群体推荐系统还能够根据每个用户在群体中的重要性来提供推荐,因此能够启示个性化推荐系统综合考虑各个方面的影响因素,从而提高用户满意程度与推荐结果的可靠性。
2国内外研究现状
卡耐基·梅隆大学的RobertArmstrong等学者首次提出了个性化推荐系统,其在1995年3月所展示的个性化导航系统WebWatcher[4][5][6]标志着推荐系统领域中相关技术研究的兴起。
随着信息技术的飞速发展以及Web2.0技术的出现,人们迫切需要信息服务的系统来解决日益严重的信息过载问题。
当一个群体需要获取信息的时,现有的个性化推荐系统难以满足实践的需求,于是群体推荐系应运而生。
2.1社交网络相似度的研究现状
社交网络[7]是一种用户可以建立公开或半公开账户,并且彼此之间通过链接相连的网络服务。
社交网络在中国已成为覆盖用户最广、传播影响最大和商业价值最高的Web2.0业务。
社交网络中用户之间的关系异常的复杂和特殊,可以用社交网络进行群体推荐研究。
社交网络的形成是基于用户网络的形式呈现的,不同的用户是网络中不同的节点,可以使用
表示一个社交网络,
是用户集合,
表示边的集合,如果两个用户
和
有关系,就有一条边
,
表示权重,权重的大小可以根据需要进行不同的设定。
根据目前社交网络的发展情况,有三种不同形式的社交网络数据:
双向确认好友关系类型,这类的网络好友需要双方互认,否则不能成功组建好友关系,代表的有Facebook、人人网等,该形式的好友可以使用无向图来表示关系;第二类是单向关注类型,用户关注其他用户的同时不需要对方必须关注自己,可以根据自己兴趣喜好选择,代表有Twitter、新浪微博等,这种形式可以使用有向图表示关系;第三种是社区小组类型,用户之间没有明确的关系,但来至于同一个“社区”并拥有某些相似的特征[8]。
传统的个性化推荐方法假设用户是独立、恒等分布的,它忽略了用户之间基于社会关系的信任。
社交网络是人们在线交流的平台,也是信息传播的媒介,激发了对社交网络个性化推荐的研究和发展[9][10]。
2010年在文献[11]中,Song等提出了基于“信息扩散”理论的个性化推荐方法,将社交网络中的朋友关系看成是信息传播的路径,并从理论上证明了该信息传播模型的收敛性,还提出了社会相似度的概念。
在实际应用中,该推荐方法产生的推荐结果优越传统推荐方法的推荐结果。
2011年在文献[12]中,张光卫等针对传统相似性度量方法存在的不足,利用云模型在定性知识表示及定性、定量知识转换时的桥梁作用,提出一种在知识层面比较用户相似度的个性化推荐方法,该方法克服了传统基于向量的相似度比较方法严格匹配对象属性的不足。
2012年在文献[13]中,EytanBakshy等分析了推荐网络和社交网络中常见的传播模式,根据概率图模型,给出了推荐网络中传播路径的算法。
并提出社交网络相似度可以用评分相似度和社会相似度共同表示。
2013年在文献[14]中,朱锐等提出了一种基于偏好推荐的服务选择方法,该方法首先搜索一组偏好相似的推荐用户,通过皮尔逊相关系数计算用户的评价相似度,然后基于用户的推荐等级、领域相关度和评价相似度等对用户的推荐信息进行过滤,使推荐信息更为可靠,实验表明该方法能够有效地解决推荐算法中冷启动、推荐信息不准确等问题。
2013年在文献[15]中,Ma等人提出运用VSS和PCC来计算用户之间的相似度,从而进行相应的社会化推荐。
由于这两个相似度计算方法均基于用户之间的共同评分项目集,而在现实世界中可能存在两个用户各自都有很多评分项,但这两个用户之间没有共同评分项目集,因此不能运用这两个函数来计算相应的用户间的相似度,从而导致这两个用户之间的社交网络信息丢失。
为了解决该问题,李改[16]等,于2014年提出了一种新的社会化相似度计算函数NSS使其能计算没有共同评分的用户间的相似度。
2014年在文献[17]中,荣辉桂等提出了用户相似度。
该相似度由两部分构成:
一部分是由用户属性决定的用户属性相似度,通过计算用户间的距离DAB,距离值越小,用户间的属性相似程度越高;另一部分由用户间的互动信息决定互动相似度,其计算与目标用户有相似发件人和收件人的用户数,值越大,用户间的互动相似程度越高。
最后将两部分相似度进行线性拟合,计算得出用户间总相似度。
2014年在文献[18]中,张星等提出了用户之间的相似度,可以通过他们基于网站的强关联操作和弱关联操作体现。
强关联操作指的是用户之间较为直接的交互关系,如转发、评论、分享等操作。
弱关联操作指的是用户之间不太明显的交互关系,如关注同一个公共页面,经常到达相同的地理位置或共同使用同一个网站应用等等。
并用公式
来计算两个用户的相似度。
其中,
表示用户
和用户
的相似度,
表示用户
对用户
的评论次数,
表示用户
对用户
的转发次数,
表示用户
对用户
的分享次数。
分别表示评论、转发、分享这3种操作的权限。
2.2群体推荐系统的研究现状表示
群体推荐是为由两个或两个以上的用户组成的群体提供项目推荐。
群体推荐是建立在个体推荐的基础之上,但并不是个体推荐的简单叠加。
由于群体推荐涉及群体决策,而基于群体决策的本质,决策的结果可能会因为群体成员在群体中所拥有的地位与发言权不同而不同。
简而言之,在构建群体推荐系统时必须考虑到群体中的每个用户可能具有不同权重的实际情况,而这使得群体推荐的过程更为复杂。
现有的群体推荐系统研究策略主要有以下两种:
第一,聚合个体结果法;如图1,此方法首先面向群体内各个体进行推荐,再将个体推荐结果聚合成群体推荐结果,如电影群体推荐系统PolyLens。
这种方法的缺陷在于不能较好地最大化群体成员对于推荐结果的满意程度;同时当群体规模较大时,该算法的复杂度也相对较高。
第二,聚合个体模型法;如图2,此方法的主要思想是将个体模型聚合成群体模型,再基于群体模型进行推荐,如Ardissono等[19]设计开发的旅游推荐系统。
由于群体中每个用户可能偏好于不同的聚合方法,因此这种单一的组合模式可能会产生不合理的群体推荐意见,扭曲群体用户的兴趣偏好概貌,进而降低群体用户对于推荐结果的满意程度。
群体列表N
图1聚合个体结果法
群体推荐列表
图2聚合个体模型法
在研究群体推荐系统时,不管采用以上所述的两种策略中的任何一种都需要使用适当的聚合策略,不同的聚合策略适用于不同的应用场景,具体情况视系统和群体要求而定。
群体推荐系统作为个人推荐系统的应用延伸,是推荐系统领域技术不断成熟与扩大的标识之一。
作为推荐系统的一个全新分支,群体推荐涉及群体决策的复杂性与群体用户社会关系的多样性,因此有关群体推荐系统算法的研究比较复杂,目前的研究也尚不充分与深入[20][21][22]。
针对以上两种群体推荐方法:
a)聚合个体结果法,O’Connor等[23]先对群体内所有个体用协同过滤技术进行推荐,之后从中寻找共同的项目形成群体推荐列表;b)聚合个体模型法,Chen等[24]先利用遗传算法预测用户对于未评价过项目的评分,再建立群体模型进行推荐。
方法a的优点是简单,推荐结果直观,但缺点是最终可能不会产生共同推荐项目;方法b在实际中更为常用,但其缺点是在建立群体模型时会丢失成员用户的个体偏好信息。
2011年在文献[25]中,KebinMcCarthy等提出了三种针对群体用户的推荐策略:
1)群体代理,利用机器学习的方法来获取用户偏好进而提供推荐;2)通过融合群体中每个用户的推荐列表来为整个群体提供推荐;3)通过融合不同用户的概貌信息将群体转换为单个虚拟用户,进而为该虚拟用户提供推荐。
2012年在文献[26]中,朱国玮等提出了一种方法来为群体成员进行商品推荐。
这种方法考虑到群体成员对商品的评分会受到群体成员间的交互作用的影响,不同的意见在群体中的重要性也存在着差异。
而要作出群体推荐,应该整合群体对商品的评分意见。
此方法基于商品的协同过滤算法,同时考虑到群体对商品的评分并不总是可获得的,通过使用GA方法用来学习群体偏好解决子群体的未知评分问题。
2013年在文献[27]中,夏秀峰等在Web客户信任网络的基础上,引入影响度的概念及相应的计算方法,提出了节点网络影响集的构建原则与构建方法,并在此基础上挖掘核心群体,提出了基于网络影响集的核心群体推荐模型以及相应的推荐算法,核心群体推荐模型充分考虑了Web病毒式营销中核心节点在Web客户信任网络中的地位及作用方式,将核心群体的推荐历史作为其进行推荐的主要因素。
2013年在文献[28]中,徐选华等提出了基于群体成员所提供信息量的多少来去除群体中不重要用户的熵权方法,形成群体关于决策方案的效用矩阵,然后利用聚类方法来确定成员权重,以此来提高群体推荐系统结果的正确性与可靠性。
2013年在文献[29]中,刘旭东等针对用户评分数据极端稀疏的情况,在分析传统用户相似性度量方法的基础上,提出了一种基于群体兴趣偏好度的协同过滤推荐算法,该算法通过计算群体兴趣偏好度,来预测用户-项目评分矩阵的空缺值,使得到的未评分项预测评分更有差异性,从而提高了用户最近邻的搜寻准确度,同时也缓解了用户评分数据稀疏性问题。
2014年在文献[30]中,AndriyShepitsen等利用两种主要的通信与协作工具(MobileMoneyOperator和Outlet)来为目标群体提供商品推荐列表,前者旨在记录顾客的历史移动消费记录,后者用于顾客的细分。
2014年在文献[31]中,郭均鹏等针对现有关于群体推荐的研究没有分析在线社区群体特点的问题,以及群体意见偏差没有在算法中体现的问题,他提出了一种新的群体模型构建方法,对现有两种群体推荐算法进行改进和融合,并将差异度因素融入推荐模型;另外通过分析互动度与推荐精度之间的关系,证实其对推荐效果的影响,即鼓励群体内部的互动有利于获得更好的推荐效果。
将差异度因素融入推荐模型,既保留了个体用户的态度,又能够修正群体成员间的不同意见,将对优化群体模型及协调群体意见作出贡献。
2014年在文献[32]中,梁昌勇等提出了一种结合领域专家法的群体用户推荐算法,该算法根据群体成员间的相互作用确定群体偏好,在群体偏好的基础上,采用基于项目的协同过滤技术为群体产生推荐。
推荐过程中如果成员评分值为空项,则采用领域专家法进行预测填充。
3研究的内容及预期目标
3.1研究内容
本论文旨在融合社交网络的评分相似度和社交相似度,并把融合后的相似度用于群体推荐系统。
研究的内容主要包括以下两个个方面:
(1)在现实的推荐系统中数据量巨大,对某一个用户来说,他能够评分的物品个数是非常少的。
在如此稀疏的评分矩阵下,两个用户之间打分出现重叠可能性非常小。
所以两个用户之间的相似度大部分情况下等于0,即使相似度计算的结果不为0,也会存在大量不准确的情况。
在以上的文献中他们都没有利用社交网络的特性来计算相似度。
虽然社交网络矩阵可能也很稀疏,但社交关系的传递性允许我们利用并不直接认识的用户信息,间接地衡量社交关系。
也就是说A关注B,B关注E,虽然A和E之间没有直接关注关系,但我们也认为A在一定程度上关注了E,从而A与E之间存在社会相似度。
我们按某种关系(如:
线性关系)把评分相似度和社会相似度融合起来得到社交网络的相似度。
(2)现在的研究人员对群体系统的研究主要采用的策略是聚合个体模型法。
他们先把群体按照某种方法(如:
用户共同评价过的项目数目达到一定的阈值为一组)分为n个组,每个组虚拟为一个用户
,共n个虚拟的用户。
然后在根据传统的方法来计算两个虚拟用户的相似度,却没有人利用计算社交网络相似度的方法来计算虚拟用户之间的相似度。
我们可以把融合社交网络相似度的方法引入群体推荐系统,来计算两个虚拟用户之间的相似度。
从而提高群体推荐系统的可靠性与准确性。
3.2预期目标
本课题预期达到的目标是:
(1)认真分析经典计算评分相似度的方法,如:
普通的余弦法,皮尔逊系数法,修正的余弦法。
分析和研究社交网络,总结其结构特性,寻求计算社会相似度的方法。
最后把评分相似与社会相似度按某种关系(如:
线性关系)融合在一处。
提高相似度计算的准确性。
(2)把融合社交网络评分相似度和社会相似度的方法引入群体推荐系统,计算群体推荐系统中两个虚列用户的相似度。
最终提高群体推荐算法的质量。
(3)利用VisualStudio作为开发工具,使用C/C++语言编写基于融合社交网络相似度的群体推荐算法的程序,和现有的成果做比较,总结优缺点,得出结论。
4关键技术、技术方案及研究成果
4.1关键技术
本课题涉及到的关键技术主要有以下两点:
(1)如何计算社交网络的社会相似度:
社交网络中的社交关系存在传递性,允许我们利用并不直接认识的用户信息,间接地衡量社交关系。
也就是说A关注B,B关注E,虽然A和E之间没有直接关注关系,但我们也认为A在一定程度上关注了E,从而A与E之间存在社会相似度。
但是如何来衡量和计算A与E之间的这种社会相似度是一项关键技术。
(2)用什么关系来融合社交网络的社会相似度和评分相似度:
当用一定的方法计算出社交网络的评分相似度和社会相似度。
这两种相似度在实际的社交网络中到底存在什么的关系,将他们用何种关系融合起来是我研究的重点。
4.2技术方案
针对以上关键技术,本课题拟采用以下技术方案:
(1)计算社会相似度:
用
表示用户的社交关系网,
表示用户数。
若用户
关注了用户
,则
否则
。
对于关系矩阵
,设传播衰减系数为
,传播衰减系数指用户之间的亲密度每增加一层的衰减比例。
假设用户
的信息传播到用户
需要
次,那么用户新的社交关系矩阵
可表示为:
在式子1中
,当
时,
;当
时,
。
通过式子1得到了用户新的社交关系矩阵后,我们可以使用余弦相似度来计算用户
和用户
的社交相似度,公式如下:
(2)融合社交网络相似度:
用皮尔逊系数计算两个用户之间的评分相似度可以表示为如下形式:
其中
为用户
和
的评分相似度,
为用户
对物品
的评分,
为用户
对他评过分的所以物品评分的平均值。
可以用最简单的线性关系来融合评分相似度和社会相似度:
其中
。
当
时社会相似度起主要作用,当
时评分相似度起主要作用,当
时评分相似度和社会相似度起相等的作用。
4.2研究成果
(1)融合社交网络的评分相似度和社会相似度,并把融合后的相似度应用于群体推荐系统,进而提高群体推荐系统的质量。
(2)在国内外会议或期刊上发表学术论文1篇。
5开发环境
硬件设备:
个人单台PC机
操作系统:
Windows7
编程语言:
C/C++
编程工具:
VisualStudio2010,Matlab
6课题设备及人员分工
6.1课题设备
课题实验环境主要依托校园网和实验室环境。
实验室现有硬件设备及网络环境有:
(1)带有CUDA架构显卡的PC服务器一台;
(2)带有CUDA架构显卡的PC机多台;
(3)交换机华为H3CS1016一台;
(4)无线路由器TL-WR541G+一台
6.2人员分工
根据课题情况,主要成员有:
指导老师:
…..
成员:
……..
7研究进展计划
本课题拟采用理论分析和实验相结合的研究方法,其具体研究计划安排如下:
(1)2014年3月至2014年6月:
收集相关资料,进行理论上的准备;
(2)2014年6月至2014年11月:
确定技术方案,进行理论研究并确定程序框架;
(3)2014年11月至2015年6月:
建立数学模型并进行程序设计和调试;
(4)2015年6月至2016年6月:
发表一篇学术论文并撰写毕业论文,毕业论文答辩。
参考文献
[1]Jameson,A.,MorethantheSumofitsMembers:
ChallengesforGroupRecommenderSystems.InternationalWorkingConferenceonAdvancedVisualInterfaces,Gallipoli,Italy,2006:
48-54
[2]Masthoff,J.,Modelingthemultiplepeoplethatareme.In:
P.Brusilovsky,A.Corbett,andF.deRosis(eds.)Proceedingsofthe2003UserModelingConference,Johnstown,PA.SpringerVerlag,Berlin,2003:
258-262
[3]Masthoff,J.,GroupModeling:
SelectingaSequenceofTelevisionItemstoSuitaGroupofViewers.UserModelingandUser-AdaptedInteraction,2008,14:
37-85
[4]Masthoff,J.,Theuseraswizard:
Amethodforearlyinvolvementinthedesignandevaluationofadaptivesystems.FifthWorkshoponUser-CentredDesignandEvaluationofAdaptiveSystems2008:
387-396
[5]Masthoff,J.,Vasconcelos,W.W.,Aitken,C.,CorreadaSilva,F.S.:
Agent-BasedGroupModelingforAmbientIntelligence.AISBsymposiumonAffectiveSmartEnvironments,Newcastle,U,2009:
215-226
[6]McCarthy,J.,Anagnost,T.:
MusicFX:
AnArbiterofGroupPreferencesforComputerSupportedCollaborativeWorkouts.CSCW,Seattle,WA.1998:
363-372
[7]D.M.BoydandN.B.Ellison,Socialnetworksites:
Definition,history,andscholarship,JournalofComputer-MediatedCommunication.2009:
11-13
[8]项亮.推荐系统实践[M].北京:
人民邮电出版社,2012
[9]D.0'doherty,S.Jouili,andP.VanRoy,Trust-basedrecommendation:
anempiricalanalysis,2013
[10]EytanBakshy,ItamarRosenn,CameronMarlow,ctal.,Theroleofsocialnetworksininformationdiffusion,Proceedingsofthe21stinternationalconferenceonWorldWideWeb,Lyon,Franco,2012
[11]XiaodanSong,BelleL.Tseng,Ching-YungLin,etal.,Personalizedrecommendationdrivenbyinformationflow,Proceedingsofthe29thannualinternationalACMSIGIRconferenceonResearchanddevelopmentininformationretrieval,Seattle,Washington,USA,2010
[12]张光卫,李德毅,李鹏等,基于云模型的协同过滤推荐算法,软件学报,2403-2411,2012
[13]EytanBakshy,ItamarRosenn,CameronMarlow,ctal.,Theroleofsocialnetworksininformationdiffusion,Proceedingsofthe21stinternationalconferenceonWorldWideWeb,Lyon,Franco,2012
[14]朱锐,王怀民,冯大为,基丁偏好推荐的可信服务选择,软件学报,852-864,2013
[15]MAHao,ZHOUDeng-yong,LIUChao,eta1,Recommendersystemswithsocialregularlzation[C]Procofthe4thInternationalConferenceonWSDM.NewYork:
ACMPress,2013:
287-296.
[16]李改,李章凤等,一种新的社会化相似度计算方法[A],计算机应用研究,2014,30(9),2616-2621.
[17]荣辉桂,火生旭等,基于用户相似度的协同过滤推荐算法[A],通信学报,2014,35
(2)