CN108122168A - 社交活动网络中种子节点筛选方法和装置 - Google Patents

社交活动网络中种子节点筛选方法和装置 Download PDF

Info

Publication number
CN108122168A
CN108122168A CN201611069792.3A CN201611069792A CN108122168A CN 108122168 A CN108122168 A CN 108122168A CN 201611069792 A CN201611069792 A CN 201611069792A CN 108122168 A CN108122168 A CN 108122168A
Authority
CN
China
Prior art keywords
user
candidate nodes
node
activity
influence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201611069792.3A
Other languages
English (en)
Other versions
CN108122168B (zh
Inventor
赵鹏鹏
吴志勇
李永坤
殷俊
邓大付
孙龙君
王巨宏
陈伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Institute of Advanced Technology University of Science and Technology of China
Original Assignee
Tencent Technology Shenzhen Co Ltd
Institute of Advanced Technology University of Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd, Institute of Advanced Technology University of Science and Technology of China filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201611069792.3A priority Critical patent/CN108122168B/zh
Publication of CN108122168A publication Critical patent/CN108122168A/zh
Application granted granted Critical
Publication of CN108122168B publication Critical patent/CN108122168B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种社交活动网络中种子节点筛选方法和装置。所述方法包括:获取表示社交活动网络的用户集合、活动集合、用户间的关系集合和用户与活动间的关系集合;根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算所述候选节点集合的影响力值;通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合。上述社交活动网络中种子节点筛选方法和装置,在进行种子节点筛选时将用户活动考虑在内,其筛选的种子节点更加准确,且更加适合应用于社交活动网络中。

Description

社交活动网络中种子节点筛选方法和装置
技术领域
本发明涉及计算机应用领域,特别是涉及一种社交活动网络中种子节点筛选方法和装置。
背景技术
随着网络技术的发展,用户通过网络从事社交活动越频繁,用户在社交网络中会产生一定的影响力,为此可利用用户的影响力传播信息。
为了刻画在线社交网络中影响力的传播过程,传统的方式是采用独立级联模型和线性阈值模型求取影响力最大化问题,主要是通过直接利用随机模拟的方法来近似影响力的传播过程,从而估算出节点集合的影响范围,在此估算的基础上利用子模的性质设计贪心算法寻找影响力最大的节点集合。然而传统的方式筛选的种子节点准确度低。
发明内容
基于此,有必要针对传统的社交网络中筛选种子节点的筛选的种子节点准确度低的问题,提供一种社交活动网络中种子节点筛选方法和装置,能提高筛选准确度。
一种社交活动网络中种子节点筛选方法,包括:
获取表示社交活动网络的集合参数,所述集合参数包括用户集合、活动集合、用户间的关系集合和用户与活动间的关系集合;
根据所述集合参数获取活动类型超边集合、超边中除某用户外的其余用户组成的集合、某用户参加的活动类型对应的超边集合、用户受活动的影响比例、用户好友集合;
根据用户受活动的影响比例得到用户受好友的影响比例,以及根据所述用户受好友的影响比例、用户好友集合、用户受活动的影响比例和超边中除某用户外的其余用户组成的集合和某用户参加的活动类型对应的超边集合得到节点随机游走时的转移概率;
获取候选节点集合及所述候选节点集合的影响力;
获取用户受到的总的影响变量,根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算所述候选节点集合的影响力值;
通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合。
一种社交活动网络中种子节点筛选装置,其特征在于,包括:
第一获取模块,用于获取表示社交活动网络的集合参数,所述集合参数包括用户集合、活动集合、用户间的关系集合和用户与活动间的关系集合;
第二获取模块,用于根据所述集合参数获取活动类型超边集合、超边中除某用户外的其余用户组成的集合、某用户参加的活动类型对应的超边集合、用户受活动的影响比例、用户好友集合;
转移概率获取模块,用于根据用户受活动的影响比例得到用户受好友的影响比例,以及根据所述用户受好友的影响比例、用户好友集合、用户受活动的影响比例和超边中除某用户外的其余用户组成的集合和某用户参加的活动类型对应的超边集合得到节点随机游走时的转移概率;
影响力参数获取模块,用于获取候选节点集合及所述候选节点集合的影响力;
估算模块,用于获取用户受到的总的影响变量,根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算所述候选节点集合的影响力值;
迭代模块,用于通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合。
上述社交活动网络中种子节点筛选方法和装置,通过获取社交活动网络的集合参数,该集合参数包括了用户集合、活动集合、用户间关系集合和用户与活动间的关系集合,在进行种子节点筛选时将用户活动考虑在内,其筛选的种子节点更加准确,且更加适合应用于社交活动网络中。
附图说明
图1为一个实施例中电子设备的内部结构示意图;
图2为一个实施例中社交活动网络中种子节点筛选方法的流程图;
图3为一个实施例中社交活动网络结构的示意图;
图4为一个实施例中集合参数转化为超图的示意图;
图5为一个实施例中节点与活动的关系示意图;
图6为一个实施例中采用所述多项式前L项估算所述候选节点集合的影响力值的具体流程图;
图7为一个实施例中记录随机游走的轨迹信息的具体流程示意图;
图8为一个实施例中社交活动网络中种子节点筛选装置的结构框图;
图9为另一个实施例中社交活动网络中种子节点筛选装置的结构框图;
图10为用户在线活动对影响力传播的影响的示意图;
图11为本发明实施例所提及的算法的时间开销随用户活动所占比例的变化示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。
图1为一个实施例中电子设备的内部结构示意图。如图1所示,该电子设备包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,电子设备的非易失性存储介质存储有操作系统,还包括一种社交活动网络中种子节点筛选装置,该社交活动网络中种子节点筛选装置用于实现一种社交活动网络中种子节点筛选方法。该处理器用于提供计算和控制能力,支撑整个电子设备的运行。电子设备中的内存储器为非易失性存储介质中的社交活动网络中种子节点筛选装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种社交活动网络中种子节点筛选方法。网络接口用于与其他设备进行网络通信。该电子设备可以是手机、平板电脑或者个人数字助理或穿戴式设备等。本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
图2为一个实施例中社交活动网络中种子节点筛选方法的流程图。如图2所示,一种社交活动网络中种子节点筛选方法,包括:
步骤202,获取表示社交活动网络的集合参数,所述集合参数包括用户集合、活动集合、用户间的关系集合和用户与活动间的关系集合。
本实施例中,社交活动网络(Social Activity Networks,简称SAN)是指包含了用户关系和用户活动关系的网络,是对在线社交网络(Online Social Network,OSN)的扩展。在线社交网络是指基于互联网且能够支持用户与其他人相联系的一种平台,例如Facebook、Twitter等。
用户集合是指用于记录用户的集合。活动集合是指用于记录活动的集合。用户间的关系集合是指用于记录用户间关系的集合。用户与活动间的关系集合是指用于记录用户与活动之间的关系的集合。
采用G(V0,V1,…,Vl,E0,E1,…,El)来表示社交活动网络(SAN),其中,V0表示用户集合,Vi表示第i类活动集合,E0表示用户间的好友关系集合,Ei表示用户与第i类活动间的关系集合,即用户参与了第i类活动,其中i=1,2,…,l。约定N(j)表示j的好友集合,即N(j)={i|(i,j)∈E0}。Nt(j)表示j参加的第t类活动的集合,即Nt(j)={a|a∈Vt&(j,a)∈Et}。Na(j)为除了j之外参加了活动a的用户集合。一个用户表示一个节点。
以图3所示的社交活动网络为例,按照上述的定义不难得出:V0={1,2,3,4,5,6},E0={(1,2),(2,1),(2,3),(3,2),(3,4),(4,3),(4,5),(4,6),(5,4),(5,6)},V1={a},V2={b},E1={(1,a),(2,a),(3,a),(5,a)},E2={(1,b),(6,b)}。又假定j=1,则N(j)={2},Nt(j)={a,b},Na(j)={2,3,5}。
步骤204,根据所述集合参数获取活动类型超边集合、超边中除某用户外的其余用户组成的集合、某用户参加的活动类型对应的超边集合、用户受活动的影响比例、用户好友集合。
本实施例中,利用超图表示社交活动网络G,则G(V0,V1,…,Vl,E0,E1,…,El)可表示为超图G(V,E,ε1,…,εk),其中V=V0,E=E0,εi={(j1,…,jk)|j1,…jk∈V0,(a,j1),…,(a,jk)∈Ei,其中a∈Vi}。约定Me(j)={i|i∈e&i≠j},εt(j)={(e|e∈εt&j∈e}。如图4所示,图3对应的超图为G(V,E,ε1,ε2),其中,V={1,2,3,4,5,6},E={(1,2),(2,1),(2,3),(3,2),(3,4),(4,3),(4,5),(4,6),(5,4),(6,4)},ε1={(1,2,3,5)},ε2={(1,6)}。
εi是第i类超边的集合,εi中的一条超边表示共同参加了第i类活动中的某个活动的用户集合,比如图4中,ε1={(1,2,3,5)}是因为第一类活动只有一个活动a,因此ε1只有一条超边,且对应着活动a。
Me(j)表示超边e中除了用户j的其余用户组成的集合,如图4中,对应活动a的超边e=(1,2,3,5),则Me(1)={2,3,5}。
εt(j)表示用户j参加的第t类活动对应的超边集合。如图4中考虑节点1参加的第1类活动,此时ε1(1)={(1,2,3,5)},考虑节点1参加的第2类活动,此时ε2(1)={(1,6)}。超边是指参加某一个活动的用户组成的一个集合,如(1,2,3,5)表示参加活动a的用户构成的超边。
活动类型超边集合εi、超边中除某用户外的其余用户组成的集合Me(j)、某用户参加的活动类型对应的超边集合εt(j)。
假设用户受到的总的影响变量为c(0<c<1),且用户共参加了l类活动,同时定义αjt(0<αjt<1并且)表示用户j受到的来自于第t类活动的影响的比例,那么就表示用户j受到好友影响的比例。则用户受活动的影响比例为αjt。用户好友集合为N(j)。
步骤206,根据用户受活动的影响比例得到用户受好友的影响比例,以及根据所述用户受好友的影响比例、用户好友集合、用户受活动的影响比例和超边中除某用户外的其余用户组成的集合和某用户参加的活动类型对应的超边集合得到节点随机游走时的转移概率。
本实施例中,随机游走是从给定的一个初始节点出发,随机选择它的一个邻居节点去游走,一直重复直到满足终止条件。
对于节点i,在超图上的随机游走分为两步:第一步是选择一条指向i的超边。对于i来自第t类活动的影响的比例为αjt,并且可设置来自同一类型活动的影响相同,因此从节点i出发以αit/|εt(i)|的概率选择一个属于第t类活动的超边e。第二步,设置来自同一活动中的用户影响相同,则以1/Me(i)的概率选择超边e中的一个节点作为下一跳的开始。可以得出随机游走时的转移概率为:
公式(2)中,k为活动的类别数,表示如果用户j是用户i的好友,则取1,否则取0。表示如果用户j和用户i都在超边e对应的活动中则取1,否则取0。
步骤208,获取候选节点集合及所述候选节点集合的影响力。
本实施例中,定义候选节点集合为S,候选节点集合S的影响力为I(S)=∑j∈Vh(j,S)。当时,h(j,S)=∑i∈Vcpjih(i,S);当j∈S时,h(j,S)=1。如此将社交活动网络中的影响力最大化问题可以转变为在超图G(V,E,ε1,…,εk)寻找由k个节点构成的候选节点集合S使I(S)最大。
h(j,S)表示候选节点集合S对用户j的影响力值,物理含义是从节点j出发随机游走碰到S中的节点的概率。I(S)是指候选节点集合S对网络中所有节点的影响力之和。
当j∈S时,h(j,S)=1,表示h(j,S)是从节点j出发随机游走碰到S中的节点的概率为1,或者表示当j∈S时,说明节点j已经是被影响的节点,因此节点j受到S的影响力值为1。
其中,cpjih(i,S)是一个递归表达式,展开后是无数项相加,但表达式是收敛的。
需要说明的是,可采用候选节点集合S作为反映影响力大小的中心性指标。
步骤210,获取用户受到的总的影响变量,根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算所述候选节点集合的影响力值。
本实施例中,利用蒙特卡洛算法的框架来近似计算候选节点集合的影响力值,即近似计算I(S),也就是近似计算h(j,S)。由h(j,S)的定义经过简单的推演可得:当时,其中Q表示(V-S)中节点间的转移概率,Q′表示(V-S)中的节点到S中的节点的转移概率。是列向量ej的转置,ej的第j个元素为1,其余为0,T为转置符,e为列向量,其中元素全为1。(V-S)表示用户集合减去候选节点集合后剩余用户集合。S为候选节点集合。
步骤212,通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合。
本实施例中,通过迭代在超图G(V,E,ε1,…,εk)中寻找由k个节点构成的候选节点集合S使I(S)最大。可以证明该问题是一个NP难题,同时I(S)是一个非递减子模函数,即当时,I(S)≤I(M)且I(S∪{u})-I(S)≥I(M∪{u})-I(M)。根据子模函数的性质,可以设计合理贪心算法来保证得到的用户集合在准确度上满足不小于(1-1/e-ε)的近似比。
上述社交活动网络中种子节点筛选方法,通过获取社交活动网络的集合参数,该集合参数包括了用户集合、活动集合、用户间关系集合和用户与活动间的关系集合,在进行种子节点筛选时将用户活动考虑在内,其筛选的种子节点更加准确,且更加适合应用于社交活动网络中。
在一个实施例中,上述社交活动网络中种子节点筛选方法还包括:获取第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重;根据所述用户受到的总的影响变量、用户受好友的影响比例、第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重得到第一用户对第二用户的影响力大小。
本实施例中,在社交活动网络中,用户受到的影响既可能来自于好友关系,也可能来自于活动关系。假设用户受到的总的影响变量为c(0<c<1),且用户共参加了l类活动,同时定义αjt(0<αjt<1并且)表示用户j受到的来自于第t类活动的影响的比例,那么就表示用户j受到好友影响的比例。对于每个可能影响到用户j的好友i(i∈N(j)),定义uij为i向j施加影响时的权重,其满足∑i∈N(j)uij=1。
对于用户j参加的第t类活动a,定义其对j施加影响时的权重为υaj,类似地,υaj满足考虑到可能有多个用户参与到活动a中,定义活动a中每个用户i通过活动a对j施加影响的权重为同样满足
为了简单起见,采用独立级联模型中的常见设置,即uij=1/|N(j)|,υaj=1/|Nt(j)|,并且需要指出的是的计算框架可以很容易的扩展到其他设置。在此设置下最终可以得到用户i对用户j的影响力大小为:
公式(1)中,表示当i为j的好友时,取1,否则取0。表示当i和j共同参加了活动a时,取1,否则取0。
具体地,第一用户即可为用户i,第二用户即可为用户j。第一用户向第二用户施加影响时的权重可为uij、第一用户通过活动对第二用户施加影响的权重活动对第二用户施加影响的权重υaj,用户受到的总的影响变量c,用户受好友的影响比例用户受到活动的影响比例为αjt
下面计算图5中的节点2对节点1的影响力g21来说明上述过程。设c=4/5,α11=α12=1/4,其中51代表第一类活动,52代表第二类活动。图5中节点1参加的第一类活动只有a,参加的第二类活动只有b,因此N1(1)={a}且N2(1)={b}。又因为a中除了节点1还有2,3,5;b中除了节点1还有2,6,因此Na(1)={2,3,5}且Nb(1)={2,6}。根据公式(1)有:
其中,为通过好友关系的影响,为通过活动a关系的影响,为通过活动b关系的影响。
在一个实施例中,所述获取用户受到的总的影响变量,根据所述用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算估算所述候选节点集合的影响力值的步骤包括:获取用户受到的总的影响变量、根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率构建候选节点集合对所选节点影响力值的多项式;获取所述多项式的前L项,采用所述多项式前L项估算所述候选节点集合的影响力值;且满足多项式与多项式的前L项之差在预设范围内,L为自然数。
本实施例中,当时,其中Q表示(V-S)中节点间的转移概率,Q′表示(V-S)中的节点到S中的节点的转移概率。展开后,因为0<c<1并且取h(j,S)的前L项之和hL(j,S)近似h(j,S),且近似值满足的边界值为0<h(j,S)-hL(j,S)<cL+1/(1-c),即多项式与多项式的前L项之差在预设范围内。考虑超图G(V,E,ε1,…,εk)上从j出发的L步随机游走,在随机游走的每一步中,当其位于节点k时,会以pki的概率选择i作为下一步的起始点,当其遇到S中的节点时就停止随机游走。令jt表示随机游走时第t步所处的节点,定义:当jt∈S时,X(t)=1;否则X(t)=0。X(t)=1表示第t步所处的节点属于候选节点集合S,X(t)=0表示第t步所处的节点不属于候选节点集合S。由此可以得到h(j,S)=cE[X(1)]+c2E[X(2)]+…+cLE[X(L)]。为了计算hL(j,S),可以从j出发进行R次随机游走,这R次随机游走在第t步所处的位置分别表示为则hL(j,S)中的第t项可以近似估计为可以证明,即这种近似计算的有效性具有理论保证。近似计算h(j,S)的时间复杂度为O(RL)。表示第r次随机游走在第t步所处的节点是否属于候选节点集合S,如果属于则取1,否则取0。
如图6所示,在一个实施例中,所述采用所述多项式前L项估算所述候选节点集合的影响力值的步骤包括:
步骤602,从选择的第一节点出发开始随机游走,并记录第一变量。
本实施例中,第一变量可采用σ表示,初始值为0。第一变量的值用于表示随机游走得到的增加值。
步骤604,判断是否达到L步,若是,则执行步骤606,若否执行步骤610。
具体地,L为自然数,即为多项式的前L项,最大游走步数。
步骤606,判断R次随机游走是否结束,若是,则执行步骤608,若否,执行步骤602。
具体地,R为自然数,用于表示随机游走的次数。
步骤608,返回第一变量的值。
步骤610,选择一条超边,再从所述超边中选择一个节点,再执行步骤612。
步骤612,判断所述节点是否属于候选节点集合,若是,则执行步骤614,若否,执行步骤604。
具体地,节点是否属于候选节点集合,若属于候选节点集合,则停止随机游走,若否,则继续。
步骤614,停止随机游走,将第一变量增加用户受到的总的影响变量的步数次幂与R的比值,再执行步骤606。
具体地,每次遇到节点属于候选节点集合时,则将第一变量的值增加相应的增量值,即σ=σ+ct/R。
本实施例中,通过选择节点进行随机游走近似计算候选节点集合的影响力值,计算简单,时间复杂度低。
在一个实施例中,所述通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合的步骤包括:通过贪心算法迭代估算得到影响力值最大的候选节点,在每一次迭代后,将候选节点集合中各候选节点相对于所述候选节点集合的影响力的增量进行更新;记录第一次迭代过程中的随机游走的轨迹,采用第一次迭代的随机游走的轨迹对剩余(k-1)次数迭代进行迭代重用,其中,k为种子节点的个数。
本实施例中,根据增量表达式可以在每一次迭代结束后,同时完成对所有候选节点相对于候选节点集合的影响力I(S)的增量进行更新操作。其中,P(u,S,h)表示从u出发随机游走在第h步碰到S中的节点的概率。PS(j,{u},h)表示从j出发随机游走在第h步碰到{u}中的节点的概率,同时保证随机游走不经过候选节点集合S中的节点。
将第一次迭代过程中的随机游走的轨迹记录下来以供剩下(k-1)次迭代重用。这样(k-1)次迭代的更新操作都是基于第一次迭代的随机游走的轨迹记录进行不必重新开始随机游走,因此总共只需要O(nR)次随机游走,总的时间复杂度降为O(nRL)。
在一个实施例中,如图7所示,记录随机游走的轨迹信息的步骤包括:
步骤702,初始化参数,获取用户集合和用户间好友关系,将候选节点集合设置为空集,增量表达式的第一中间变量和第二中间变量赋值为0。
具体地,定义G(V,E,ε1,…,εk),候选节点集合S为空集φ,增量表达式的第一中间变量为Score[1…n],第二中间变量为P[1…n],将Score[1…n]←0,P[1…n]←0。
Score[1…n]对应增量表达式的P[1…n]对应增量表达式的
步骤704,判断用户集合是否取完,若是,结束,若否,则执行步骤706。
步骤706,从用户集合中取一节点,并将游走次数变量记为0。
具体地,从用户集合V中取一节点j后,将游走次数变量r=0。
步骤708,游走次数变量自增1后,判断记录游走次数变量值是否小于最大游走次数,若是,执行步骤710,若否,执行步骤704。
具体地,游走次数变量自增1,即r++,判断r++<R,R为最大游走次数。
步骤710,将所取的节点赋值给节点变量,将所取的节点在本次随机游走中已访问过的节点集合设置为空集,游走步数变量初始值设置为0。
具体地,将所取的节点j赋值给节点变量i。visited表示在本次随机游走中已访问过的节点集合。游走步数变量t=0。
步骤712,判断游走步数变量自增1后,判断游走步数变量值是否小于最大游走步数值,若是,则执行步骤714,若否,执行步骤708。
步骤714,将节点变量的值添加到在本次随机游走中已访问过的节点集合中。
具体地,将visited←visited∪{i}。
步骤716,根据转移概率选择一个节点变量的值的好友节点赋值给节点变量,执行步骤718。
具体地,根据转移概率选择一个节点变量i的好友节点给节点变量i,作为节点变量i的新的值。
步骤718,存储选择的好友节点,执行步骤720。
具体地,采用RW[j][r][t]存储选择的好友节点,RW[j][r][t]存储从节点j出发的第r个随机游走在第t步所处的节点。
步骤720,判断选择的好友节点是否属于本次随机游走中已访问过的节点集合中,若是,执行步骤724,若否,则执行步骤722。
步骤722,增加好友节点的索引和好友节点目录,再执行步骤724。
具体地,增加好友节点的索引index[i]和好友节点目录add[item(j,r,t)]。
步骤724,增量表达式的第一中间变量增加用户受到的总的影响变量的游走步数变量值次幂与最大游走次数的比值,再执行步骤712。
具体地,增量表达式的第一中间变量Score[i]=Score[i]+ct/R。其中,c为用户受到的总的影响变量,t为游走步数变量值,R为最大游走次数。
图8为一个实施例中社交活动网络中种子节点筛选装置的结构框图。如图8所示,一种社交活动网络中种子节点筛选装置800,为对应于图2的方法所构成的虚拟装置,包括第一获取模块802、第二获取模块804、转移概率获取模块806、影响力参数获取模块808、估算模块810和迭代模块812。其中:
第一获取模块802用于获取表示社交活动网络的集合参数,所述集合参数包括用户集合、活动集合、用户间的关系集合和用户与活动间的关系集合。
第二获取模块804用于根据所述集合参数获取活动类型超边集合、超边中除某用户外的其余用户组成的集合、某用户参加的活动类型对应的超边集合、用户受活动的影响比例、用户好友集合。
转移概率获取模块806用于根据用户受活动的影响比例得到用户受好友的影响比例,以及根据所述用户受好友的影响比例、用户好友集合、用户受活动的影响比例和超边中除某用户外的其余用户组成的集合和某用户参加的活动类型对应的超边集合得到节点随机游走时的转移概率。
影响力参数获取模块808用于获取候选节点集合及所述候选节点集合的影响力。
估算模块810用于获取用户受到的总的影响变量,根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算所述候选节点集合的影响力值。
迭代模块812用于通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合。
在其中一个实施例中,迭代模块812还用于通过贪心算法迭代估算得到影响力值最大的候选节点,在每一次迭代后,将候选节点集合中各候选节点相对于所述候选节点集合的影响力的增量进行更新;以及记录第一次迭代过程中的随机游走的轨迹,采用第一次迭代的随机游走的轨迹对剩余(k-1)次数迭代进行迭代重用,其中,k为种子节点的个数。
在其中一个实施例中,估算模块810还用于获取用户受到的总的影响变量、根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率构建候选节点集合对所选节点影响力值的多项式;以及获取所述多项式的前L项,采用所述多项式前L项估算所述候选节点集合的影响力值;且满足多项式与多项式的前L项之差在预设范围内,L为自然数。
在其中一个实施例中,估算模块810还用于从选择的第一节点出发开始随机游走,并记录第一变量;
判断是否达到L步,若是,则判断R次随机游走是否结束,若R次随机游走结束,则返回第一变量的值,若R次随机游走未结束,则继续执行从选择的第一节点出发开始下一次随机游走;
若未达到L步,则选择一条超边,再从所述超边中选择一个节点;
判断所述节点是否属于候选节点集合,若是,则停止随机游走,将第一变量增加用户受到的总的影响变量的步数次幂与R的比值,再执行判断所述R次随机游走是否结束;
若所述节点不属于候选节点集合,则执行判断是否达到L步,R为自然数。
图9为另一个实施例中社交活动网络中种子节点筛选装置的结构框图。如图9所示,一种社交活动网络中种子节点筛选装置800,为对应于图2的方法所构成的虚拟装置,除了包括第一获取模块802、第二获取模块804、转移概率获取模块806、影响力参数获取模块808、估算模块810和迭代模块812,还包括权重获取模块814和影响力计算模块816。其中:
权重获取模块814用于获取第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重。
影响力计算模块816用于根据所述用户受到的总的影响变量、用户受好友的影响比例、第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重得到第一用户对第二用户的影响力大小。
需要说明的是,在其他实施例中,可将用户活动产生的用户关系当作普通的好友关系进行计算。
下面结合实验设计说明本发明所提供的实施例的社交活动网络中种子节点筛选方法在影响力的传播上有很大提升且开销小。
(1)当考虑用户的在线活动考虑后,所选出的种子在影响力的传播上有很大的提升。
实验设计:在图10涉及的实验中,使用了两个数据集Yelp和Flixster。固定了种子集合的大小为50,也即选择50个初始节点,并且使用三种算法进行种子的选择:一种是本发明实施例所提及的算法(即IM-RW),另一种是影响力最大化问题领域里的算法(IMM,Interactive Multi-tude Model,交互式多模型算法),最后一种是IMM在社交活动网络上的扩展算法(IMM(SAN))。在种子选取结束之后,采用多次模拟取平均的方法估计种子集合的期望影响范围,并将结果分别记为S(IM-RW),S(IMM),S(IMM(SAN))。最后,假定横坐标的α代表用户活动所占比例,纵坐标是按照S(IMM)标准化后的结果,代表标准化后的影响力大小。
实验结果分析:从图10展示的结果中,可以看出当α=0时,三个算法对应的Normalized Influence Spread(影响力)大小相同,这是因为没有考虑用户的在线活动。当α逐渐增大时,标准化后的S(IM-RW),S(IMM(SNA))均不断变大且两者相差不大。这说明影响力的传播会受到用户在线活动的影响,且这种影响随着用户活动所占比重的增加而增加。
(2)考虑了用户活动,本发明实施例中所提及的算法的时间开销仍然很小。
实验设计:图11所涉及的实验设计和图10相同。但此时的纵坐标衡量的是算法的时间开销。
实验结果分析:从图11所示的结果可以看出,虽然算法IM-RW考虑了用户活动,其时间开销仍和没有考虑用户活动的IMM算法的时间开销大致相同,并且不随α的变化而变化,而与同样考虑了用户活动的IMM(SAN)算法相比,算法的时间开销则大大降低了。这是因为算法IM-RW的时间复杂度是O(nRL),即当确定R和L时,只和图的节点n有关,与图的边数m无关,而IMM(SAN)的复杂度与n和m均成正相关。当用户活动被考虑的比重不断增加时,社交活动网络图不断变稠密但节点数目不变,从而导致IMM(SAN)的时间开销逐渐增加,IM-RW却保持不变。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种社交活动网络中种子节点筛选方法,包括:
获取表示社交活动网络的集合参数,所述集合参数包括用户集合、活动集合、用户间的关系集合和用户与活动间的关系集合;
根据所述集合参数获取活动类型超边集合、超边中除某用户外的其余用户组成的集合、某用户参加的活动类型对应的超边集合、用户受活动的影响比例、用户好友集合;
根据用户受活动的影响比例得到用户受好友的影响比例,以及根据所述用户受好友的影响比例、用户好友集合、用户受活动的影响比例和超边中除某用户外的其余用户组成的集合和某用户参加的活动类型对应的超边集合得到节点随机游走时的转移概率;
获取候选节点集合及所述候选节点集合的影响力;
获取用户受到的总的影响变量,根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算所述候选节点集合的影响力值;
通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合。
2.根据权利要求1所述的方法,其特征在于,所述通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合的步骤包括:
通过贪心算法迭代估算得到影响力值最大的候选节点,在每一次迭代后,将候选节点集合中各候选节点相对于所述候选节点集合的影响力的增量进行更新;
记录第一次迭代过程中的随机游走的轨迹,采用第一次迭代的随机游走的轨迹对剩余(k-1)次数迭代进行迭代重用,其中,k为种子节点的个数。
3.根据权利要求1或2所述的方法,其特征在于,所述获取用户受到的总的影响变量,根据所述用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算估算所述候选节点集合的影响力值的步骤包括:
获取用户受到的总的影响变量、根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率构建候选节点集合对所选节点影响力值的多项式;
获取所述多项式的前L项,采用所述多项式前L项估算所述候选节点集合的影响力值;且满足多项式与多项式的前L项之差在预设范围内,L为自然数。
4.根据权利要求3所述的方法,其特征在于,所述采用所述多项式前L项估算所述候选节点集合的影响力值的步骤包括:
从选择的第一节点出发开始随机游走,并记录第一变量;
判断是否达到L步,若是,则判断R次随机游走是否结束,若R次随机游走结束,则返回第一变量的值,若R次随机游走未结束,则继续执行从选择的第一节点出发开始下一次随机游走;
若未达到L步,则选择一条超边,再从所述超边中选择一个节点;
判断所述节点是否属于候选节点集合,若是,则停止随机游走,将第一变量增加用户受到的总的影响变量的步数次幂与R的比值,再执行判断所述R次随机游走是否结束的步骤;
若所述节点不属于候选节点集合,则执行判断是否达到L步的步骤,R为自然数。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重;
根据所述用户受到的总的影响变量、用户受好友的影响比例、第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重得到第一用户对第二用户的影响力大小。
6.一种社交活动网络中种子节点筛选装置,其特征在于,包括:
第一获取模块,用于获取表示社交活动网络的集合参数,所述集合参数包括用户集合、活动集合、用户间的关系集合和用户与活动间的关系集合;
第二获取模块,用于根据所述集合参数获取活动类型超边集合、超边中除某用户外的其余用户组成的集合、某用户参加的活动类型对应的超边集合、用户受活动的影响比例、用户好友集合;
转移概率获取模块,用于根据用户受活动的影响比例得到用户受好友的影响比例,以及根据所述用户受好友的影响比例、用户好友集合、用户受活动的影响比例和超边中除某用户外的其余用户组成的集合和某用户参加的活动类型对应的超边集合得到节点随机游走时的转移概率;
影响力参数获取模块,用于获取候选节点集合及所述候选节点集合的影响力;
估算模块,用于获取用户受到的总的影响变量,根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率估算所述候选节点集合的影响力值;
迭代模块,用于通过迭代估算得到影响力值最大的候选节点集合,将所述影响力最大的候选节点集合作为种子节点集合。
7.根据权利要求6所述的装置,其特征在于,所述迭代模块还用于通过贪心算法迭代估算得到影响力值最大的候选节点,在每一次迭代后,将候选节点集合中各候选节点相对于所述候选节点集合的影响力的增量进行更新;以及记录第一次迭代过程中的随机游走的轨迹,采用第一次迭代的随机游走的轨迹对剩余(k-1)次数迭代进行迭代重用,其中,k为种子节点的个数。
8.根据权利要求6或7所述的装置,其特征在于,所述估算模块还用于获取用户受到的总的影响变量、根据用户受到的总的影响变量、用户集合减去候选节点集合后剩余用户集合中节点间的转移概率、用户集合减去候选节点集合后剩余用户集合中节点到候选节点集合中的节点的转移概率构建候选节点集合对所选节点影响力值的多项式;以及获取所述多项式的前L项,采用所述多项式前L项估算所述候选节点集合的影响力值;且满足多项式与多项式的前L项之差在预设范围内,L为自然数。
9.根据权利要求8所述的装置,其特征在于,所述估算模块还用于从选择的第一节点出发开始随机游走,并记录第一变量;
判断是否达到L步,若是,则判断R次随机游走是否结束,若R次随机游走结束,则返回第一变量的值,若R次随机游走未结束,则继续执行从选择的第一节点出发开始下一次随机游走;
若未达到L步,则选择一条超边,再从所述超边中选择一个节点;
判断所述节点是否属于候选节点集合,若是,则停止随机游走,将第一变量增加用户受到的总的影响变量的步数次幂与R的比值,再执行判断所述R次随机游走是否结束;
若所述节点不属于候选节点集合,则执行判断是否达到L步,R为自然数。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
权重获取模块,用于获取第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重;
影响力计算模块,用于根据所述用户受到的总的影响变量、用户受好友的影响比例、第一用户向第二用户施加影响时的权重、第一用户通过活动对第二用户施加影响的权重、活动对第二用户施加影响的权重得到第一用户对第二用户的影响力大小。
CN201611069792.3A 2016-11-28 2016-11-28 社交活动网络中种子节点筛选方法和装置 Active CN108122168B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611069792.3A CN108122168B (zh) 2016-11-28 2016-11-28 社交活动网络中种子节点筛选方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611069792.3A CN108122168B (zh) 2016-11-28 2016-11-28 社交活动网络中种子节点筛选方法和装置

Publications (2)

Publication Number Publication Date
CN108122168A true CN108122168A (zh) 2018-06-05
CN108122168B CN108122168B (zh) 2020-11-13

Family

ID=62224405

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611069792.3A Active CN108122168B (zh) 2016-11-28 2016-11-28 社交活动网络中种子节点筛选方法和装置

Country Status (1)

Country Link
CN (1) CN108122168B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109614549A (zh) * 2018-12-10 2019-04-12 北京字节跳动网络技术有限公司 用于推送信息的方法和装置
CN110138619A (zh) * 2019-05-28 2019-08-16 湖南大学 一种实现影响力最大化的初始节点选取方法和系统
WO2020062450A1 (zh) * 2018-09-28 2020-04-02 苏州达家迎信息技术有限公司 社交网络中中心顶点的确定方法、装置、设备及存储介质
WO2021103508A1 (zh) * 2019-11-25 2021-06-03 北京三快在线科技有限公司 种子用户的选取方法、装置、设备及存储介质
CN113222774A (zh) * 2021-04-19 2021-08-06 浙江大学 社交网络种子用户选择方法和装置、电子设备、存储介质
CN114417184A (zh) * 2022-03-31 2022-04-29 苏州浪潮智能科技有限公司 一种种子节点筛选方法、装置、设备、存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103024017A (zh) * 2012-12-04 2013-04-03 武汉大学 一种社交网络重要目标及社区群体识别方法
CN103116611A (zh) * 2013-01-25 2013-05-22 西安市烟草专卖局 社交网络意见领袖识别方法
CN103379158A (zh) * 2012-04-24 2013-10-30 中国移动通信集团公司 一种社交网络中推荐好友信息的方法及系统
US20140089400A1 (en) * 2012-09-24 2014-03-27 Facebook, Inc. Inferring target clusters based on social connections
CN105488247A (zh) * 2015-11-16 2016-04-13 中国电子技术标准化研究院 一种k均值社团结构挖掘方法及装置
CN105608194A (zh) * 2015-12-24 2016-05-25 成都陌云科技有限公司 社交媒体中用于主体特征分析的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103379158A (zh) * 2012-04-24 2013-10-30 中国移动通信集团公司 一种社交网络中推荐好友信息的方法及系统
US20140089400A1 (en) * 2012-09-24 2014-03-27 Facebook, Inc. Inferring target clusters based on social connections
CN103024017A (zh) * 2012-12-04 2013-04-03 武汉大学 一种社交网络重要目标及社区群体识别方法
CN103116611A (zh) * 2013-01-25 2013-05-22 西安市烟草专卖局 社交网络意见领袖识别方法
CN105488247A (zh) * 2015-11-16 2016-04-13 中国电子技术标准化研究院 一种k均值社团结构挖掘方法及装置
CN105608194A (zh) * 2015-12-24 2016-05-25 成都陌云科技有限公司 社交媒体中用于主体特征分析的方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020062450A1 (zh) * 2018-09-28 2020-04-02 苏州达家迎信息技术有限公司 社交网络中中心顶点的确定方法、装置、设备及存储介质
US11487818B2 (en) 2018-09-28 2022-11-01 Suzhou Dajiaying Information Technology Co., Ltd Method, apparatus, device and storage medium for determining a central vertex in a social network
CN109614549A (zh) * 2018-12-10 2019-04-12 北京字节跳动网络技术有限公司 用于推送信息的方法和装置
CN110138619A (zh) * 2019-05-28 2019-08-16 湖南大学 一种实现影响力最大化的初始节点选取方法和系统
CN110138619B (zh) * 2019-05-28 2020-05-19 湖南大学 一种实现影响力最大化的初始节点选取方法和系统
WO2021103508A1 (zh) * 2019-11-25 2021-06-03 北京三快在线科技有限公司 种子用户的选取方法、装置、设备及存储介质
CN113222774A (zh) * 2021-04-19 2021-08-06 浙江大学 社交网络种子用户选择方法和装置、电子设备、存储介质
CN114417184A (zh) * 2022-03-31 2022-04-29 苏州浪潮智能科技有限公司 一种种子节点筛选方法、装置、设备、存储介质

Also Published As

Publication number Publication date
CN108122168B (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
CN108122168A (zh) 社交活动网络中种子节点筛选方法和装置
CN108305094B (zh) 一种用户行为预测方法及装置,电子设备
JP2018516404A (ja) 情報推奨方法および装置、ならびにサーバ
Ioannidis et al. Semi-blind inference of topologies and dynamical processes over dynamic graphs
Meng et al. Mathematical models and computational algorithms for probit-based asymmetric stochastic user equilibrium problem with elastic demand
JP6337881B2 (ja) データ予測装置
JP2018536940A (ja) ユーザ信用スコアを最適化するための方法および装置
Hong et al. Efficient minimum cost seed selection with theoretical guarantees for competitive influence maximization
CN108549632B (zh) 一种基于情感分析的社交网络影响力传播模型构建方法
CN106469413B (zh) 一种虚拟资源的数据处理方法及装置
CN112910710B (zh) 网络流量时空预测方法、装置、计算机设备和存储介质
US20090306996A1 (en) Rating computation on social networks
CN106372101A (zh) 一种视频推荐方法和装置
CN107222410B (zh) 链接预测的方法、装置、终端及计算机可读存储介质
CN106919564A (zh) 一种基于移动用户行为的影响力度量方法
US9524481B2 (en) Time series technique for analyzing performance in an online professional network
CN107609717A (zh) 社交网络中一种基于Kalman滤波器的帖子转发量预测方法
US20040236560A1 (en) Power estimation using functional verification
CN103530190A (zh) 一种负载预测方法及装置
Li et al. Analysis of failure time using threshold regression with semi‐parametric varying coefficients
CN115001982B (zh) 基于节点重要性估计的在线社交网络拓扑推断方法
CN113450146B (zh) 多触点广告归因方法、系统、计算机设备和可读存储介质
Hanachi et al. New iterative conjugate gradient method for nonlinear unconstrained optimization
CN113283589B (zh) 事件预测系统的更新方法及装置
Nasir et al. Fast trust computation in online social networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant