一种基于关注关系和多用户行为的图推荐方法技术

技术编号:11077016 阅读:107 留言:1更新日期:2015-02-25 15:15
本发明专利技术公开一种基于关注关系和多用户行为的图推荐方法,目的是为网络系统用户提供感兴趣的物品和用户推荐。首先,根据用户对物品的行为数据建立用户行为图;根据用户的关注关系建立关注图;然后,在用户行为图上进行一轮随机游走,计算游走后每个用户节点对图中节点的访问概率;并以该访问概率为基础,计算经过关注关系扩散后,每个用户节点对用户行为图中节点的访问概率;将上述两个访问概率进行综合得到新的访问概率;重复执行游走及扩散过程,直到每个用户节点对用户行为图中节点的访问概率收敛到稳定值;最后,根据每个用户节点对其他节点的访问概率,生成该用户的物品推荐列表和用户推荐列表。

【技术实现步骤摘要】
一种基于关注关系和多用户行为的图推荐方法
本专利技术属于互联网
,特别涉及一种基于关注关系和多用户行为的图推荐方法。
技术介绍
随着互联网数据的爆炸式增长,如何从海量数据中提取有效信息提供给用户是当前互联网应用亟待解决的问题。个性化信息推荐是解决这一问题的有效方法,它通过跟踪用户的历史信息,计算用户的兴趣特征,从而给用户推荐可能感兴趣的资源。目前个性化信息推荐已经被各大互联网平台广泛采用,例如Facebook、腾讯QQ等社交平台向用户推荐好友和圈子,YouTube、优酷等视频网站向用户推荐视频,淘宝、京东等电子商城向用户推荐商家和商品等。已有的推荐算法主要分为:利用用户行为数据进行推荐、利用用户标签数据进行推荐、利用时间、位置等上下文信息进行推荐、利用社交网络数据进行推荐等。其中应用最为广泛的是基于物品的协同推荐算法,其基本思路是分析用户的行为数据,计算物品之间的相似度,从而给用户推荐和他们之前喜欢的物品相似的物品。该算法的前提是认为物品之间的相似度与同时喜欢它们的用户数有关,系统中共同喜欢两个物品的用户数越多,则两个物品的相似度越高。协同推荐算法的问题是只能推荐物品,不易于推荐其他类型的信息。图推荐算法是一种更为灵活的利用用户行为数据的推荐算法。其基本思路是将用户对物品的行为转化为图模型表示,通过计算任意两个节点间的相似度,从而为用户节点推荐与其相似度最高的其他节点。因此图推荐算法能够同时提供多样化的推荐,不仅可以给用户推荐物品,也可以推荐具有共同兴趣的用户,甚至可以给用户推荐兴趣标签。基于用户行为数据的推荐算法存在一个共同问题,即当系统中用户行为非常稀疏时,推荐的准确率和召回率会大幅下降。目前,越来越多的网络平台支持用户之间建立关注关系,例如微博粉丝功能、视频分享站点的用户关注功能、电子商城中用户对商家的关注功能等。本专利技术利用这种关注关系提高推荐算法的性能,特别是解决用户行为稀疏的问题。另一方面,用户在网络平台的行为越来越多样化,例如视频分享站点,用户的行为包括观看、评价、打分、收藏、分享等。本专利技术利用多行为来提高推荐性能,其中的关键是如何将多种用户行为归一化为统一的行为表示。
技术实现思路
本专利技术的目的是提供一种基于关注关系和多用户行为的图推荐方法,该方法能够在用户行为稀疏的情况下,为用户提供高质量的个性化信息推荐,包括物品和具有共同兴趣的用户。为实现上述专利技术目的,本专利技术提供的图推荐方法,其特征在于,包括以下步骤:步骤1、根据用户对物品的行为记录,构建用户行为图,具体为:1.1)、构建用户行为图,图中的节点由用户节点集合和物品节点集合组成,图中的边有两类:一类“用户-物品”边表示用户对物品存在行为,即在用户节点和该用户存在行为的物品节点之间建立一条边;一类“用户-用户”边表示两个用户有相似行为,即如果两个用户存在行为的相同物品个数超过设定阈值,则认为两个用户行为具有相似性,在两个用户节点之间建立一条边;用户行为图是一个无向有权图;1.2)、计算用户行为图中每条边的权值:对于“用户-物品”边,首先统计系统中N种用户行为各自发生的总次数,记为(B1,B2,…,BN),然后按照公式(1)计算每种用户行为归一化时的比重,记为(pb1,pb2,…,pbN),pb1+pb2+…+pbN=1;最后根据用户i对物品j的行为记录,按照公式(2)计算边的权值,记为wij;对于图中的“用户-用户”边,权值wij按照公式(3)计算,其中α为系统设定的参数;其中其中bm表示用户i对物品j执行第m种行为的次数(2)步骤2、根据用户的关注关系,构建关注图,图中的节点是有关注关系的系统用户,即用户i关注了用户j,则建立一条从用户节点j指向用户节点i的边,关注图是一个有向无权图,用户节点对用户行为图中每个节点的访问概率可沿着关注图中的边向其关注节点扩散;步骤3、基于用户行为图,分别以每个用户节点作为起始点,在图上进行一轮随机游走,计算一轮随机游走后用户节点u对图中每个节点i的访问概率,第n轮游走后的访问概率记为计算如公式(4)所示:初始时设置:上述公式的含义为当游走到任何一个节点时,首先按照概率β决定是继续游走,还是停止这次游走并从起始点开始重新游走;如果继续游走,那么就从与当前节点相连的节点中按照边的权值比例,随机选择一个节点作为游走节点;步骤4、基于关注图,将按照关注关系进行扩散,每个用户节点u可从其关注节点v处,获得v节点对用户行为图上每个节点的访问概率,每个用户节点u从关注图上获得的对用户行为图上每个节点的访问概率可采用公式(5)所述方法进行计算,这里in(u)表示节点u的关注节点集合,|in(u)|表示关注节点的个数;步骤5、将基于用户行为图得到的访问概率和基于关注图得到的访问概率进行综合计算,得到第n轮游走和扩散后,每个用户节点对用户行为图上每个节点的访问概率,计算方法如公式(6)所示,其中γ是设定参数,用于调整两种访问概率对综合值的影响比重;步骤6、判断每个用户对用户行为图中每个节点的访问概率是否收敛到稳定值,如果收敛,则结束游走执行步骤7;如果没有收敛,则执行公式(7)、(8)然后返回步骤3,重复执行游走和扩散过程;n=n+1(8)步骤7、根据每个用户节点对用户行为图中节点的访问概率,生成每个用户的用户推荐列表和物品推荐列表。用户推荐列表的生成方法是:对于用户u,首先排除该用户已经关注过的用户节点,然后将剩余用户节点按照u节点对剩余用户节点的访问概率降序排列,选择访问概率最大的若干用户节点生成推荐列表;物品推荐列表的方法是:对于用户u,首先排除该用户已经存在行为物品节点,然后将剩余物品节点按照u节点对剩余物品节点的访问概率降序排列,选择访问概率最大的若干物品节点生成推荐列表。通过本专利技术提供的基于关注关系和多用户行为的图推荐方法得到的推荐结果,能够一次计算同时为用户推荐物品和感兴趣的用户,且能在一定程度上解决用户行为稀疏问题。实验证明,本专利技术提供的推荐方法不仅在一定程度上提高了推荐结果的准确度,而且对推荐结果的新颖度和惊喜度有一定改善。附图说明图1是本专利技术提供的基于关注关系和多用户行为的图推荐方法的整体流程图图2是本专利技术实施例提供的只包含“用户-物品”边的用户行为图图3是本专利技术实施例提供的完整的用户行为图图4是本专利技术实施例提供的关注图具体实施方式下面结合附图对本专利技术的具体实施方式进行描述,以便本领域的技术人员更好地理解本专利技术。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本专利技术的主要内容时,这些描述在这里将被忽略。图1是本专利技术提供的基于关注关系和多用户行为的图推荐方法的整体流程,步骤包括:步骤1、根据用户对物品的行为记录,构建用户行为图,具体为:1.1)、构建用户行为图,图中的节点由用户节点集合和物品节点集合组成,图中的边有两类:一类“用户-物品”边表示用户对物品存在行为;一类“用户-用户”边表示两个用户有相似行为;用户行为图是一个无向有权图;1.2)、计算用户行为图中每条边的权值:对于“用户-物品”边,首先统计系统中N种用户行为各自发生的总次数,记为(B1,B2,…,BN),然后按照
技术实现思路
中的公式(1)计算每种用户行为归一化时的比重;最后根据用户对物品的行为记录,按照专利技术本文档来自技高网
...
一种基于关注关系和多用户行为的图推荐方法

【技术保护点】
一种基于关注关系和多用户行为的图推荐方法,其特征在于,包括以下步骤:步骤1、根据用户对物品的行为记录,构建用户行为图,具体为:1.1)、构建用户行为图,图中的节点由用户节点集合和物品节点集合组成,图中的边有两类:一类“用户‑物品”边表示用户对物品存在行为,即在用户节点和该用户存在行为的物品节点之间建立一条边;一类“用户‑用户”边表示两个用户有相似行为,即如果两个用户存在行为的相同物品个数超过设定阈值,则认为两个用户行为具有相似性,在两个用户节点之间建立一条边;1.2)、计算用户行为图中每条边的权值:对于“用户‑物品”边,首先统计系统中N种用户行为各自发生的总次数,记为(B1,B2,…,BN),然后按照公式(1)计算每种用户行为归一化时的比重,记为(pb1,pb2,…,pbN),pb1+pb2+…+pbN=1;最后根据用户i对物品j的行为记录,按照公式(2)计算边的权值,记为wij;对于图中的“用户‑用户”边,权值按照公式(3)计算,其中α为系统设定的参数;pbi=tmpi/Σj=1Ntmpj,]]>其中tmpi=Σj=1NlogBj/logBi---(1)]]>其中bm表示用户i对物品j执行第m种行为的次数   (2)步骤2、根据用户的关注关系,构建关注图,图中的节点是有关注关系的系统用户,即用户i关注了用户j,则建立一条从用户节点j指向用户节点i的边,关注图是一个有向无权图,用户节点对用户行为图中每个节点的访问概率可沿着关注图的边向其关注节点扩散;步骤3、基于用户行为图,分别以每个用户节点作为起始点,在图上进行一轮随机游走,计算一轮随机游走后用户节点u对图中每个节点i的访问概率,第n轮游走后的访问概率记为按照公式(4)进行计算;初始时设置:rankI0(u,i)=1(i=u)0(i≠u)]]>rankIn(u,i)=(1-β)+β*Σv∈link(i)rankIn-1(u,v)wivΣv′∈link(v)wvv′(i=u)β*Σv∈link(i)rankIn-1(u,v)*wivΣv′∈link(v)wvv′(i≠u)---(4)]]>步骤4、基于关注图,将按照关注关系进行扩散,每个用户节点u可从其关注节点v处,获得v节点对用户行为图上每个节点的访问概率,每个用户节点u从关注图上获得的对用户行为图上每个节点的访问概率可采用公式(5)所述方法进行计算,这里in(u)表示节点u的关注节点集合,|in(u)|表示关注节点的个数;rankAn(u,i)=1|in(u)|*Σv∈in(u)rankIn(v,i)---(5)]]>步骤5、将基于用户行为图得到的访问概率和基于关注图得到的访问概率进行综合计算,得到第n轮游走和扩散后,每个用户节点对用户行为图上每个节点的访问概率,计算方法如公式(6)所示,其中γ是设定参数,用于调整两种访问概率对综合值的影响比重;rankn(u,i)=γ*rankIn(u,i)+(1-γ)*rankAn(u,i)---(6)]]>步骤6、判断每个用户对用户行为图中每个节点的访问概率是否收敛到稳定值,如果收敛,则结束游走扩散过程,执行步骤7;如果没有收敛,则执行公式(7)、(8),然后返回步骤3,重复执行游走和扩散过程。rankIn(u,i)=rankn(u,i)---(7)]]>n=n+1     (8)步骤7、根据每个用户节点对用户行为图中节点的访问概率,生成每个用户的用户推荐列表和物品推荐列表,生成用户推荐列表的方法包括:对于用户u,首先排除该用户已经关注过的用户节点,然后将剩余用户节点按照u节点对剩余用户节点的访问概率降序排列,选择访问概率最大的若干用户节点生成推荐列表;生成物品推荐列表的方法包括:对于用户u,首先排除该用户已经存在行为物品节点,然后将剩余物品节点按照u节点对剩余物品节点的访问概率降序排列,选择访问概率最大的若干物品节点生成物品推荐列表。...

【技术特征摘要】
1.一种基于关注关系和多用户行为的图推荐方法,其特征在于,包括以下步骤:步骤1、根据用户对物品的行为记录,构建用户行为图,具体为:1.1)、构建用户行为图,图中的节点由用户节点集合和物品节点集合组成,图中的边有两类:一类“用户-物品”边表示用户对物品存在行为,即在用户节点和该用户存在行为的物品节点之间建立一条边;一类“用户-用户”边表示两个用户有相似行为,即如果两个用户存在行为的相同物品个数超过设定阈值,则认为两个用户行为具有相似性,在两个用户节点之间建立一条边;1.2)、计算用户行为图中每条边的权值:对于“用户-物品”边,首先统计系统中N种用户行为各自发生的总次数,记为(B1,B2,…,BN),然后按照公式(1)计算每种用户行为归一化时的比重,记为(pb1,pb2,…,pbN),pb1+pb2+…+pbN=1;最后根据用户i对物品j的行为记录,按照公式(2)计算边的权值,记为wij;对于图中的“用户-用户”边,权值按照公式(3)计算,其中α为系统设定的参数;其中其中bm表示用户i对物品j执行第m种行为的次数(2)步骤2、根据用户的关注关系,构建关注图,图中的节点是有关注关系的系统用户,即用户i关注了用户j,则建立一条从用户节点j指向用户节点i的边,关注图是一个有向无权图,用户节点对用户行为图中每个节点的访问概率可沿着关注图的边向其关注节点扩散;步骤3、基于用户行为图,分别以每个用户节点作为起始点,在图上进行一轮随机游走,计算一轮随机游走后用户节点u对图中每个节点i的访问概率,第n轮游走后的访问概率记为按照公式(4)进行计算;初始时设置:

【专利技术属性】
技术研发人员:刘梦娟李杨曦王巍罗绪成赖凌
申请(专利权)人:电子科技大学
类型:发明
国别省市:川;51

网友询问留言 已有1条评论
  • 来自[重庆市西南大学] 2016年01月26日 10:27
    在社交网络越来越发达的现代社会,基于用户关系的社会化推荐将会越来越重要。
    0
1