CN110838072A - 一种基于社区发现的社交网络影响力最大化方法及系统 - Google Patents
一种基于社区发现的社交网络影响力最大化方法及系统 Download PDFInfo
- Publication number
- CN110838072A CN110838072A CN201911015056.3A CN201911015056A CN110838072A CN 110838072 A CN110838072 A CN 110838072A CN 201911015056 A CN201911015056 A CN 201911015056A CN 110838072 A CN110838072 A CN 110838072A
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- social network
- community
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 36
- 238000012216 screening Methods 0.000 claims abstract description 32
- 230000008569 process Effects 0.000 claims description 21
- 238000005065 mining Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000007480 spreading Effects 0.000 claims description 12
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 241000287196 Asthenes Species 0.000 claims description 3
- 238000013016 damping Methods 0.000 claims description 3
- 238000005286 illumination Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims 5
- 238000007418 data mining Methods 0.000 abstract description 2
- 230000008901 benefit Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000009194 climbing Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于社区发现的社交网络影响力最大化方法及系统,属于数据挖掘领域,包括:(1)对待分析的社交网络进行社区发现,将社交网络划分为多个社区;(2)在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合,并识别社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合;(3)将第一候选集合和第二候选集合的并集作为候选种子节点集合,并利用贪心算法从候选种子节点集合中筛选出带来最大边际增益的K节点作为种子节点,构成使得社交网络影响力最大化的种子节点集合。本发明能够在降低社交网络影响力最大化的时间复杂度的同时,扩大种子节点集合的影响范围。
Description
技术领域
本发明属于数据挖掘领域,更具体地,涉及一种基于社区发现的社交网络影响力最大化方法及系统。
背景技术
社交媒体中的用户、用户之间的关系构成了社交网络。社交网络是实际社会中的人以及人和人直接的复杂交互关系的一种映射,同时当前的社交网络规模巨大,承载着大量的信息,因此值得对此进行研究。社交网络的影响力最大化的分析是社交网络相关研究中的一个热点问题。影响力,指的是社交网络中,用户和用户之间通过信息的交流传递,使得彼此的观点、行为都可以受到影响,并且这种影响可以在网络中的用户之间级联扩散,从而影响到其他的用户的一种能力。而社交网络影响力最大化问题可以简单的表述为,给定一个社交网络,从中找到一小部分最具有影响力的节点作为种子节点,在一定的传播模型下,通过这些种子节点去影响网络中的其他节点,并尽可能到达最大的影响范围。这里的影响范围一般使用影响节点的数量来衡量。影响的种子节点数量越大,影响的范围即越广。针对社交网络的影响力最大化问题的研究具有很强的实际意义,对于广告营销、舆情监测和预测等实际场景有种重要的作用。
当前的社交网络影响力最大化算法大多分为两类:一类是基于贪心思路的算法,比较经典的是Kempe等人提出的贪心爬山算法;另一类是基于启发式思路的算法,通过启发式的规则来选择种子节点,比较典型的是基于度的启发规则。贪心爬山算法每一次都选择具有最大边际增益的当前节点作为种子节点加入种子节点集合,最终得到种子集合,Kempe等人对于贪心算法给出了理论上的性能保证,即根据贪心算法得到的种子节点能够保证最终的影响范围达到最优解的1-1/e;但是,由于该算法每次都是选择局部最优解,因此而得到的种子节点集合并不是全局上的最优解,而且由于贪心算法的执行过程中,找到每一个节点都需要对网络中所有节点计算边际增益,而每个节点的边际增益的计算都需要多次的蒙特卡洛模拟过程,因此时间复杂度非常大,对于当前节点规模在上百万的社交网络上,并不实用。基于度的启发规则选择度比较大的节点作为种子节点,这类算法的时间复杂度比较低,但是种子节点最终的影响范围是没有理论上的保证,最终的影响范围因社交网络的结构的不同而不同。
社区结构是普遍存在于社交网络中的现象。在社交网络中,存在着部分节点之间连接边比较多,形成一个相对密集的节点聚簇,而这些节点和外部节点的连接则相对稀疏,整个网络可以划分为一个个的社区。将社区结构引入影响力最大化问题的分析中,可以有效降低时间复杂度,但是现有的基于社区划分的社交网络影响力最大化方法把划分后的各个社区视为独立的社区,大多数只考虑节点在社区内部的影响力传播,而没有考虑影响力在社区之间的影响力传播现象,从而导致最终寻找到的种子节点的影响范围不够广。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种基于社区划分的社交网络影响力最大化方法,其目的在于,在降低社交网络影响力最大化的时间复杂度的同时,扩大种子节点集合的影响范围。
为实现上述目的,按照本发明的第一方面,提供了一种基于社区划分的社交网络影响力最大化方法,包括:
(1)对待分析的社交网络进行社区发现,将社交网络划分为多个社区;
(2)在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合,并识别社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合;
(3)将第一候选集合和第二候选集合的并集作为候选种子节点集合,并利用贪心算法从候选种子节点集合中筛选出带来最大边际增益的K节点作为种子节点,构成使得社交网络影响力最大化的种子节点集合;
其中,K为预设的种子节点集合大小。
本发明将社区结构引入社交网络影响力分析,能够有效降低时间复杂度,在挖掘种子节点时考虑了连接多个社区的边界节点在社区间信息沟通的媒介作用,从而所确定的种子节点集合使得社交网络影响力既能够在社区内传播,也能够在社区之间传播,扩大影响范围。总的来说,本发明在降低时间复杂度的同时,扩大种子节点集合的影响范围。
进一步地,步骤(1)包括:
(11)计算社交网络中每个节点的度,并按照度降序的顺序对节点进行排序,对于度相同的节点,则按照度的计算顺序排序,将排序后的节点顺序作为节点的更新顺序;
(12)给每个节点赋予一个初始标签;
(13)按照节点的更新顺序循环获取下一个待更新的节点N;
(14)获得节点N的邻居节点中出现次数最多的标签L,并将节点N的标签更新为标签L;
(15)重复执行步骤(13)~(14),直至达到指定的迭代次数,或者各节点的标签都不再变化;
(16)将具有相同标签的节点划分到同一个社区中,从而将社交网络划分为多个社区。
标签传播算法(LPA算法)具有思想简单,时间复杂度接近线性的优点,但是标签传播算法中存在节点更新顺序的随机性等问题,导致社区发现的结果不够稳定,本发明对传统的标签传播算法进行了改进,利用节点的度来确定节点的更新顺序,能够得到稳定的社区划分结果。
进一步地,步骤(14)中,若出现次数最多的标签唯一,则将该标签确定为用于对节点N进行更新标签L;否则,获得出现次数最多的多个标签后,分别计算各标签对于节点N的标签相似度,将其中标签相似度最大的标签确定为用于对节点N进行更新标签L;
其中,任意一个标签l对于任意一个节点v的标签相似度LJ(l,v),反映了节点v的邻居节点中,标签为l的各节点与节点v之间的局部相似度之和;节点之间的局部相似度反映了节点的局部结构之间的相似程度。
在社区划分的过程中,具体是利用邻居节点的标签来更新当前节点的标签;本发明在存在多个标签可选时,根据标签相似度确定具体用于节点更新的标签,由于本发明所计算的标签相似度反映了在特定标签下,节点与其邻居节点之间的局部结构相似程度,因此本发明能够使得各节点的标签更快地达到稳定状态,降低时间复杂度。
进一步地,标签相似度LJ(l,v)的计算方法包括:
获得节点v的所有邻居节点中标签为l的节点,构成节点集合Nl(v),并获得节点v的局部边集合EN(v);
计算节点集合Nl(v)中各节点与节点v之间的局部相似度并求和,得到标签l对于节点v的标签相似度LJ(l,v)为:
其中,节点的局部边集合中的任意一条边满足:至少有一个端点是该节点的邻居节点。
本发明所计算的节点的局部边集合反映了节点的局部结构,在此基础上计算的标签相似度能够准确地反映在特定标签下,节点与其邻居节点之间的局部结构相似程度。
进一步地,步骤(2)中,在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合,包括:
(211)若划分所得社区数m>k1,则筛选出规模最大的前k1个社区作为待挖掘的目标社区,并计算所有目标社区的总规模为之后转入步骤(212);否则,将划分所得的m个社区作为待挖掘的目标社区,并计算所有目标社区的总规模为|V′|=|V|,之后转入步骤(212);
(214)利用贪心算法从集合St1中筛选出带来最大边际增益的k1个节点作为候选种子节点,得到第一候选集合;
其中,节点在社区内的潜在影响力反映了社交网络影响力在社区内传播的过程中该节点的重要程度;|V|表示社交网络中的节点总数,|Ci|和|Cj|分别表示第i个目标社区Ci和第j个目标社区Cj的节点总数,表示向上取整,h1为预设的启发因子,h1>1。
本发明按照社区规模(即社区所包含的节点数)给各社区分配种子节点名额,并在划分所的社区数过多时,舍弃一部分小规模社区,能够根据社交网络本身的结构特点,在社区内挖掘出具有较大影响力的种子节点;在种子节点名额分配完成后,根据启发因子h1和分配的种子节点名额在社区内筛选出潜在影响力较大的节点,能够快速完成种子节点的初步筛选,在此基础上,利用贪心算法作进一步的筛选,能够保证得到的候选种子节点有较大的影响范围。
进一步地,对于任意第i个目标社区Ci,计算其中任意一个节点v的潜在影响力NPI(v),其方法包括:
获得节点v的入边邻居集合Nin(v)之后,计算节点v的潜在影响力NPI(v)为:
其中,q表示阻尼系数,NPI(u)表示节点u的潜在影响力,OutDeg(u)表示节点u的出度。
本发明利用PageRank算法完成节点在社区内的潜在影响力计算,能够准确地反映社交网络影响力在社区内传播的过程中该节点的重要程度。
进一步地,步骤(2)中,识别社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合,包括:
获得社交网络中各节点所连接的社区个数,将其中连接社区个数大于1的节点识别为边界节点;
在所有边界节点中,筛选出连接社区个数大于h2的边界节点,构成集合St2;
计算集合St2中各边界节点的潜在影响力后,筛选出其中潜在影响力最大的前k2个边界节点作为候选种子节点,得到第二候选集合;
其中,边界节点的潜在影响力反映了社交网络影响力在社区间传播的过程中该边界节点的重要程度,h2为预设的启发因子,h2≥1。
在划分社区结构之后,会存在很多边界节点,本发明在识别出边界节点后,先根据启发因子h2筛选出边邻居集合所覆盖的标签较多的边界节点,能够避免直接在所有边界节点中挖掘候选种子节点,从而提高效率;之后进一步筛选潜在影响力较大的边界节点作为候选种子节点,保证了挖掘出的候选种子节点有较大的影响范围。
进一步地,计算任意一个边界节点b的潜在影响力BNI(b),其方法包括:
获得边界节点b的出边邻居集合Nout(b)以及边界节点b的标签lb;
获得出边邻居集合Nout(b)中标签不为lb的节点,并计算这些节点的出度之和,作为边界节点b的潜在影响力BNI(b)。
直观来看,边界节点连接的社区数目越多,则边界节点的枢纽作用越加突出;从影响力传播的角度来看,计算边界节点的潜在影响力时不单要考虑连接社区的个数,还应当考察连接的社区的规模以及边界节点的邻居节点的影响力。一个边界节点虽然连接的社区个数较多,但都是小社区,那么即使把边界节点作为种子节点,影响力传播的范围也有限。同时,如果边界节点的邻居节点的影响力不大,那么把边界节点作为初始种子节点,最终得到的影响力收益也不会有太太的提升。基于以上考虑,本发明将边界节点的出邻居集合中,与该边界节点具有不同标签的所有节点的出度之和作为该边界节点的潜在影响力,使得所计算的边界节点的潜在影响力能够准确地反应社交网络影响力在社区间传播的过程中该边界节点的重要程度。
按照本发明的第二方面,提供了一种基于社区划分的社交网络影响力最大化系统,包括:社区发现模块、第一种子节点挖掘模块、第二种子节点挖掘模块以及种子节点筛选模块;
社区发现模块,用于对待分析的社交网络进行社区发现,将社交网络划分为多个社区;
第一种子节点挖掘模块,用于在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合;
第二种子节点挖掘模块,用于识别社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合;
种子节点筛选模块,用于将第一候选集合和第二候选集合的并集作为候选种子节点集合,并利用贪心算法从候选种子节点集合中筛选出带来最大边际增益的K节点作为种子节点,构成使得社交网络影响力最大化的种子节点集合;
其中,K为预设的种子节点集合大小。
按照本发明的第三方面,提供了一种系统,包括计算机可读存储介质和处理器,计算机可读存储介质用于存储可执行代码;
处理器用于读取计算机可读存储介质中存储的可执行程序,执行本发明第一方面提供的基于社区划分的社交网络影响力最大化方法。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明所提供的基于社区发现的社交网络影响力最大化方法及系统,将社区结构引入社交网络影响力分析,能够有效降低时间复杂度,在挖掘种子节点时考虑了连接多个社区的边界节点在社区间信息沟通的媒介作用,从而所确定的种子节点集合使得社交网络影响力既能够在社区内传播,也能够在社区之间传播,扩大影响范围。总的来说,本发明在降低时间复杂度的同时,扩大种子节点集合的影响范围。
(2)本发明所提供的基于社区发现的社交网络影响力最大化方法及系统,在对社交网络进行社区划分时,在标签传播算法的基础上,利用节点的度来确定节点的更新顺序,能够得到稳定的社区划分结果。
(3)本发明所提供的基于社区发现的社交网络影响力最大化方法及系统,在划分社区结构的过程中,在存在多个标签可选时,根据标签相似度确定具体用于节点更新的标签,由于本发明所计算的标签相似度反映了在特定标签下,节点与其邻居节点之间的局部结构相似程度,因此本发明能够使得各节点的标签更快地达到稳定状态,降低时间复杂度。
(4)本发明所提供的基于社区发现的社交网络影响力最大化方法及系统,按照社区规模给各社区分配种子节点名额,并在划分所的社区数过多时,舍弃一部分小规模社区,能够根据社交网络本身的结构特点,在社区内挖掘出具有较大影响力的种子节点;在种子节点名额分配完成后,根据启发因子h1和分配的种子节点名额在社区内筛选出潜在影响力较大的节点,能够快速完成种子节点的初步筛选,在此基础上,利用贪心算法作进一步的筛选,能够保证得到的候选种子节点有较大的影响范围。
(5)本发明所提供的基于社区发现的社交网络影响力最大化方法及系统,在识别出边界节点后,先根据启发因子h2筛选出边邻居集合所覆盖的标签较多的边界节点,能够避免直接在所有边界节点中挖掘候选种子节点,从而提高效率;之后进一步筛选潜在影响力较大的边界节点作为候选种子节点,保证了挖掘出的候选种子节点有较大的影响范围。
(6)本发明所提供的基于社区发现的社交网络影响力最大化方法及系统,利用PageRank算法完成节点在社区内的潜在影响力计算,能够准确地反映社交网络影响力在社区内传播的过程中该节点的重要程度;将边界节点的出邻居集合中,与该边界节点具有不同标签的所有节点的出度之和作为该边界节点的潜在影响力,使得所计算的边界节点的潜在影响力能够准确地反应社交网络影响力在社区间传播的过程中该边界节点的重要程度。
附图说明
图1为本发明实施例提供的基于社区发现的社交网络影响力最大化方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
在本发明中,本发明及附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
为了更好地解释本发明的技术方案,在详细解释本发明的技术方案之前,先对相关的技术术语解释如下:
边际增益:给定社交网络G=(V,E),函数f为影响力函数,是从节点集合到正整数的一个映射,影响力函数f的值表示输入的节点集合最终影响的节点数;给定一个节点集合S,对于任意一个不属于集合S的节点v,其边际增益定义为:f(S∪{v})-f(S)。
贪心算法:贪心算法的核心思想在于,每一次迭代过程中,都寻找带来最大边际增益的节点,作为种子节点,加入到种子节点集合中,直到找完指定数量的种子节点;这是一种局部最优策略,能够保证一定的影响范围,但通常不是最优解;贪心算法保证至少达到最优解的1-1/e,e为似然对数的底数。
线性阈值传播模型:社交网络中的影响力传播依赖于一定的传播模型;在线性阈值传播模型中,假定网络中的节点存在两种状态,即激活状态和非激活状态,被影响的节点为激活状态的节点,而未被影响的节点为非激活状态的节点;节点的状态只能从非激活状态转变为激活状态,并且只有激活状态的节点才能对它的邻居节点施加影响;
线性阈值模型中,对于任意一个节点v,系统赋予了一个影响阈值θ(v),该阈值一般由系统利用随机值获取,θ(v)∈[0,1];节点的阈值越大,表明节点越难被影响,节点的阈值越小,则容易被其邻居影响;当节点v受到激活状态的邻居的给与的影响之和大于节点自身的阈值时,节点从非激活状态转变为激活状态。
线性阈值模型下,每条边也被关联一个影响权值,记为buv,表示节点u对节点v的影响权值,并且满足:∑u∈N(v)buv≤1;
线性阈值的传播过程如下:
传播初始阶段,即t=0时刻,网络中的种子节点集合内的节点处于激活状态,而所有其他节点则处于非激活状态;
在t时刻,对处于非激活状态的节点v,将受处于激活状态的邻居影响,所有激活的邻居节点对于节点v的影响总和为∑u∈N+(v)buv,其中N+(v)表示v的邻居节点中,处于激活状态的节点;若满足∑u∈N+(v)buv≥θ(v),则节点v成功被激活;当节点v被激活之后,在下一个时刻t+1时刻开始,就能给其非激活状态的邻居节点施加影响力;
重复上述过程,当网络中没有新的激活节点产生时,传播过程结束。
以下对本发明的技术方案进行详细解释。为了在降低时间复杂度的同时扩大种子节点集合的影响范围,本发明所提供的基于社区发现的社交网网络影响力最大化方法,如图1所示,包括:
(1)对待分析的社交网络进行社区发现,将社交网络划分为多个社区;
在一个可选的实施方式中,步骤(1)具体包括:
(11)计算社交网络中每个节点的度,并按照度降序的顺序对节点进行排序,对于度相同的节点,则按照度的计算顺序排序,将排序后的节点顺序作为节点的更新顺序;利用节点的度来确定节点的更新顺序,能够得到稳定的社区划分结果;
(12)给每个节点赋予一个初始标签;
(13)按照节点的更新顺序循环获取下一个待更新的节点N;
(14)获得节点N的邻居节点中出现次数最多的标签L,并将节点N的标签更新为标签L;
(15)重复执行步骤(13)~(14),直至达到指定的迭代次数,或者各节点的标签都不再变化(即标签达到稳定状态);
(16)将具有相同标签的节点划分到同一个社区中,从而将社交网络划分为多个社区;
(2)在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合,并识别社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合;
在一个可选的实施方式中,步骤(2)中,在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合,包括:
(211)若划分所得社区数m>k1,则筛选出规模最大的前k1个社区作为待挖掘的目标社区,并计算所有目标社区的总规模为之后转入步骤(212);否则,将划分所得的m个社区作为待挖掘的目标社区,并计算所有目标社区的总规模为|V′|=|V|,之后转入步骤(212);
(213)对于任意第i个目标社区Ci,计算其中各节点在社区内的潜在影响力后,选取其中潜在影响力最大的个节点,在所有目标社区内的节点选取完成后,由所选取的节点构成集合St1,并转入步骤(214);
(214)利用贪心算法从集合St1中筛选出带来最大边际增益的k1个节点作为候选种子节点,得到第一候选集合;
其中,节点在社区内的潜在影响力反映了社交网络影响力在社区内传播的过程中该节点的重要程度;社区规模即社区中包含的节点总数;|V|表示社交网络中的节点总数,|Ci|和|Cj|分别表示第i个目标社区Ci和第j个目标社区Cj的节点总数,表示向上取整,h1为预设的启发因子,h1>1;
上述方法按照社区规模给各社区分配种子节点名额,并在划分所的社区数过多时,舍弃一部分小规模社区,能够根据社交网络本身的结构特点,在社区内挖掘出具有较大影响力的种子节点;在种子节点名额分配完成后,根据启发因子h1和分配的种子节点名额在社区内筛选出潜在影响力较大的节点,能够快速完成种子节点的初步筛选,在此基础上,利用贪心算法作进一步的筛选,能够保证得到的候选种子节点有较大的影响范围;
在一个可选的实施方式中,步骤(2)中,识别社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合,包括:
获得社交网络中各节点所连接的社区个数,将其中连接社区个数大于1的节点识别为边界节点;对于任意一个节点v,获得其出边邻居集合Nout(v),以及出边邻居集合Nout(v)所覆盖的标签集合标签集合的大小即为节点v所连接的社区个数;相应地,满足的节点将被识别为边界节点;
计算集合St2中各边界节点的潜在影响力后,筛选出其中潜在影响力最大的前k2个边界节点作为候选种子节点,得到第二候选集合;
其中,边界节点的潜在影响力反映了社交网络影响力在社区间传播的过程中该边界节点的重要程度,h2为预设的启发因子,h2≥1;
在划分社区结构之后,会存在很多边界节点,如果将全部边界节点都纳入筛选的范围,效率会十分低下;上述方法在识别出边界节点后,先根据启发因子h2筛选出边邻居集合所覆盖的标签较多的边界节点,能够避免直接在所有边界节点中挖掘候选种子节点,从而提高效率;之后进一步筛选潜在影响力较大的边界节点作为候选种子节点,保证了挖掘出的候选种子节点有较大的影响范围;
(3)将第一候选集合和第二候选集合的并集作为候选种子节点集合,并利用贪心算法从候选种子节点集合中筛选出带来最大边际增益的K节点作为种子节点,构成使得社交网络影响力最大化的种子节点集合;
其中,K为预设的种子节点集合大小。
上述基于社区划分的社交网络影响力最大化方法,将社区结构引入社交网络影响力分析,能够有效降低时间复杂度,在挖掘种子节点时考虑了连接多个社区的边界节点在社区间信息沟通的媒介作用,从而所确定的种子节点集合使得社交网络影响力既能够在社区内传播,也能够在社区之间传播,扩大影响范围。总的来说,上述基于社区划分的社交网络影响力最大化方法,在降低时间复杂度的同时,扩大种子节点集合的影响范围。
为了进一步降低时间复杂度,在上述基于社区划分的社交网络影响力最大化方法的步骤(14)中,若出现次数最多的标签唯一,则将该标签确定为用于对节点N进行更新标签L;否则,获得出现次数最多的多个标签后,分别计算各标签对于节点N的标签相似度,将其中标签相似度最大的标签确定为用于对节点N进行更新标签L;
其中,任意一个标签l对于任意一个节点v的标签相似度LJ(l,v),反映了节点v的邻居节点中,标签为l的各节点与节点v之间的局部相似度之和;节点之间的局部相似度反映了节点的局部结构之间的相似程度;标签相似度LJ(l,v)的具体计算方法包括:
获得节点v的所有邻居节点中标签为l的节点,构成节点集合Nl(v),并获得节点v的局部边集合EN(v);
节点的局部边集合中的任意一条边满足:至少有一个端点是该节点的邻居节点;节点的局部边集合反映了节点的局部结构,节点v的局部边集合可表达如下:
EN(v)={(u,w)|u∈N(v)or w∈N(v)};N(v)表示以节点u和w为端点的边,N(v)表示节点v的邻居节点集合;
对于任意一个节点u∈Nl(v),获得其局部边集合EN(u)后,按照计算节点u与节点v之间的局部相似度;
计算节点集合Nl(v)中各节点与节点v之间的局部相似度并求和,得到标签l对于节点v的标签相似度LJ(l,v)为:
由于节点的局部边集合反映了节点的局部结构,在此基础上计算的标签相似度能够准确地反映在特定标签下,节点与其邻居节点之间的局部结构相似程度;存在多个标签可选时,根据标签相似度确定具体用于节点更新的标签,能够使得各节点的标签更快地达到稳定状态,降低时间复杂度。
在一个可选的实施方式中,对于任意第i个目标社区Ci,计算其中任意一个节点v的潜在影响力NPI(v),其方法包括:
获得节点v的入边邻居集合Nin(v)之后,计算节点v的潜在影响力NPI(v)为:
其中,q表示阻尼系数,用于修正计算模型,一般取0.85;NPI(u)表示节点u的潜在影响力,OutDeg(u)表示节点u的出度;
上述计算过程实际上是利用PageRank算法完成节点在社区内的潜在影响力计算,在计算时,将社交网络中的节点为PageRank算法中的页面,将社交网络中用户与用户之间的边连接关系类比为PageRank算法中页面与页面之间的连接关系,从而能够计算得到社交网络中节点的PageRank值,将该值作为社区内节点的潜在影响力,能够准确地反映社交网络影响力在社区内传播的过程中该节点的重要程度。
直观来看,边界节点连接的社区数目越多,则边界节点的枢纽作用越加突出;从影响力传播的角度来看,计算边界节点的潜在影响力时不单要考虑连接社区的个数,还应当考察连接的社区的规模以及边界节点的邻居节点的影响力;一个边界节点虽然连接的社区个数较多,但都是小社区,那么即使把边界节点作为种子节点,影响力传播的范围也有限;同时,如果边界节点的邻居节点的影响力不大,那么把边界节点作为初始种子节点,最终得到的影响力收益也不会有太太的提升;基于以上考虑,在一个可选的实施方式中,计算任意一个边界节点b的潜在影响力BNI(b),其方法包括:
获得边界节点b的出边邻居集合Nout(b)以及边界节点b的标签lb;
获得出边邻居集合Nout(b)中标签不为lb的节点,并计算这些节点的出度之和,作为边界节点b的潜在影响力BNI(b),即
通过上述计算方法,将边界节点的出邻居集合中,与该边界节点具有不同标签的所有节点的出度之和作为该边界节点的潜在影响力,使得所计算的边界节点的潜在影响力能够准确地反应社交网络影响力在社区间传播的过程中该边界节点的重要程度。
上述基于社区发现的社交网络影响力最大化方法,是基于线性阈值传播模型的,根据线性阈值传播模型的定义可知,线性阈值模型是一种以信息接收者为中心的传播模型,该模型考虑到影响力的累加效应,一个节点会同时被多个邻居节点影响。本发明以线性阈值传播模型作为社交网络中影响力的传播模型,保证了其中影响力累积的情况和实际中的信息传播相契合;比如,一个人可能在多个朋友的建议下,才会尝试新的产品。
与上述基于社区的社交网络影响力最大化方法相对应地,本发明还提供了一种基于社区划分的社交网络影响力最大化系统,包括:社区发现模块、第一种子节点挖掘模块、第二种子节点挖掘模块以及种子节点筛选模块;
社区发现模块,用于对待分析的社交网络进行社区发现,将社交网络划分为多个社区;
第一种子节点挖掘模块,用于在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合;
第二种子节点挖掘模块,用于识别社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合;
种子节点筛选模块,用于将第一候选集合和第二候选集合的并集作为候选种子节点集合,并利用贪心算法从候选种子节点集合中筛选出带来最大边际增益的K节点作为种子节点,构成使得社交网络影响力最大化的种子节点集合;
其中,K为预设的种子节点集合大小;
在本实施例中,各模块的具体实施方式可参考上述方法实施例中的描述,在此将不再复述。
本发明还提供了一种系统,包括计算机可读存储介质和处理器,计算机可读存储介质用于存储可执行代码;
处理器用于读取计算机可读存储介质中存储的可执行程序,执行上述基于社区划分的社交网络影响力最大化方法。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于社区划分的社交网络影响力最大化方法,其特征在于,包括:
(1)对待分析的社交网络进行社区发现,将所述社交网络划分为多个社区;
(2)在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合,并识别所述社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合;
(3)将所述第一候选集合和所述第二候选集合的并集作为候选种子节点集合,并利用贪心算法从所述候选种子节点集合中筛选出带来最大边际增益的K节点作为种子节点,构成使得社交网络影响力最大化的种子节点集合;
其中,K为预设的种子节点集合大小。
2.如权利要求1所述的基于社区划分的社交网络影响力最大化方法,其特征在于,所述步骤(1)包括:
(11)计算所述社交网络中每个节点的度,并按照度降序的顺序对节点进行排序,对于度相同的节点,则按照度的计算顺序排序,将排序后的节点顺序作为节点的更新顺序;
(12)给每个节点赋予一个初始标签;
(13)按照节点的更新顺序循环获取下一个待更新的节点N;
(14)获得所述节点N的邻居节点中出现次数最多的标签L,并将所述节点N的标签更新为所述标签L;
(15)重复执行步骤(13)~(14),直至达到指定的迭代次数,或者各节点的标签都不再变化;
(16)将具有相同标签的节点划分到同一个社区中,从而将所述社交网络划分为多个社区。
3.如权利要求2所述的基于社区划分的社交网络影响力最大化方法,其特征在于,所述步骤(14)中,若出现次数最多的标签唯一,则将该标签确定为用于对所述节点N进行更新标签L;否则,获得出现次数最多的多个标签后,分别计算各标签对于节点N的标签相似度,将其中标签相似度最大的标签确定为用于对所述节点N进行更新标签L;
其中,任意一个标签l对于任意一个节点v的标签相似度LJ(l,v),反映了节点v的邻居节点中,标签为l的各节点与节点v之间的局部相似度之和;节点之间的局部相似度反映了节点的局部结构之间的相似程度。
5.如权利要求1所述的基于社区划分的社交网络影响力最大化方法,其特征在于,所述步骤(2)中,在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合,包括:
(211)若划分所得社区数m>k1,则筛选出规模最大的前k1个社区作为待挖掘的目标社区,并计算所有目标社区的总规模为之后转入步骤(212);否则,将划分所得的m个社区作为待挖掘的目标社区,并计算所有目标社区的总规模为|V′|=|V|,之后转入步骤(212);
(214)利用贪心算法从所述集合St1中筛选出带来最大边际增益的k1个节点作为候选种子节点,得到第一候选集合;
7.如权利要求1所述的基于社区划分的社交网络影响力最大化方法,其特征在于,所述步骤(2)中,识别所述社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合,包括:
获得所述社交网络中各节点所连接的社区个数,将其中连接社区个数大于1的节点识别为边界节点;
在所有边界节点中,筛选出连接社区个数大于h2的边界节点,构成集合St2;
计算所述集合St2中各边界节点的潜在影响力后,筛选出其中潜在影响力最大的前k2个边界节点作为候选种子节点,得到第二候选集合;
其中,边界节点的潜在影响力反映了社交网络影响力在社区间传播的过程中该边界节点的重要程度,h2为预设的启发因子,h2≥1。
8.如权利要求7所述的基于社区划分的社交网络影响力最大化方法,其特征在于,计算任意一个边界节点b的潜在影响力BNI(b),其方法包括:
获得边界节点b的出边邻居集合Nout(b)以及边界节点b的标签lb;
获得出边邻居集合Nout(b)中标签不为lb的节点,并计算这些节点的出度之和,作为边界节点b的潜在影响力BNI(b)。
9.一种基于社区划分的社交网络影响力最大化系统,其特征在于,包括:社区发现模块、第一种子节点挖掘模块、第二种子节点挖掘模块以及种子节点筛选模块;
所述社区发现模块,用于对待分析的社交网络进行社区发现,将所述社交网络划分为多个社区;
所述第一种子节点挖掘模块,用于在社区内部挖掘出k1个节点作为候选种子节点,得到第一候选集合;
所述第二种子节点挖掘模块,用于识别所述社交网络中的边界节点,从中挖掘出k2个作为候选种子节点,得到第二候选集合;
所述种子节点筛选模块,用于将所述第一候选集合和所述第二候选集合的并集作为候选种子节点集合,并利用贪心算法从所述候选种子节点集合中筛选出带来最大边际增益的K节点作为种子节点,构成使得社交网络影响力最大化的种子节点集合;
其中,K为预设的种子节点集合大小。
10.一种系统,包括计算机可读存储介质和处理器,其特征在于,所述计算机可读存储介质用于存储可执行代码;
所述处理器用于读取所述计算机可读存储介质中存储的可执行程序,执行权利要求1-8任一项所述的基于社区划分的社交网络影响力最大化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911015056.3A CN110838072A (zh) | 2019-10-24 | 2019-10-24 | 一种基于社区发现的社交网络影响力最大化方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911015056.3A CN110838072A (zh) | 2019-10-24 | 2019-10-24 | 一种基于社区发现的社交网络影响力最大化方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110838072A true CN110838072A (zh) | 2020-02-25 |
Family
ID=69575523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911015056.3A Pending CN110838072A (zh) | 2019-10-24 | 2019-10-24 | 一种基于社区发现的社交网络影响力最大化方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110838072A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112148989A (zh) * | 2020-10-16 | 2020-12-29 | 重庆理工大学 | 基于局部节点以及度折扣的社交网络节点影响力推荐系统 |
CN112214689A (zh) * | 2020-10-22 | 2021-01-12 | 上海交通大学 | 基于社交网络中群体的影响力最大化方法及系统 |
CN112269922A (zh) * | 2020-10-14 | 2021-01-26 | 西华大学 | 一种基于网络表示学习的社区舆论关键人物发现方法 |
CN112508725A (zh) * | 2020-12-04 | 2021-03-16 | 首都师范大学 | 一种基于社区结构的位置感知影响力最大化方法 |
CN114553818A (zh) * | 2022-02-23 | 2022-05-27 | 中国矿业大学 | 社交网络影响力最大化节点识别方法及系统 |
CN114880584A (zh) * | 2022-05-16 | 2022-08-09 | 华能澜沧江水电股份有限公司 | 一种基于社区发现的发电机组故障分析方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678669A (zh) * | 2013-12-25 | 2014-03-26 | 福州大学 | 一种社交网络中的社区影响力评估系统及方法 |
US20140095689A1 (en) * | 2012-09-28 | 2014-04-03 | Microsoft Corporation | Determining influence in a network |
CN105608194A (zh) * | 2015-12-24 | 2016-05-25 | 成都陌云科技有限公司 | 社交媒体中用于主体特征分析的方法 |
CN105938608A (zh) * | 2016-04-12 | 2016-09-14 | 福建师范大学 | 一种基于标签影响力的半同步社区发现方法 |
CN106355506A (zh) * | 2016-08-15 | 2017-01-25 | 中南大学 | 一种在线社会网络中影响力最大化初始节点选取方法 |
CN107909496A (zh) * | 2017-07-28 | 2018-04-13 | 北京百分点信息科技有限公司 | 社交网络中用户影响力分析方法、装置及电子设备 |
CN108230169A (zh) * | 2017-12-20 | 2018-06-29 | 重庆邮电大学 | 基于社交影响力的信息传播模型及态势感知系统及方法 |
-
2019
- 2019-10-24 CN CN201911015056.3A patent/CN110838072A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140095689A1 (en) * | 2012-09-28 | 2014-04-03 | Microsoft Corporation | Determining influence in a network |
CN103678669A (zh) * | 2013-12-25 | 2014-03-26 | 福州大学 | 一种社交网络中的社区影响力评估系统及方法 |
CN105608194A (zh) * | 2015-12-24 | 2016-05-25 | 成都陌云科技有限公司 | 社交媒体中用于主体特征分析的方法 |
CN105938608A (zh) * | 2016-04-12 | 2016-09-14 | 福建师范大学 | 一种基于标签影响力的半同步社区发现方法 |
CN106355506A (zh) * | 2016-08-15 | 2017-01-25 | 中南大学 | 一种在线社会网络中影响力最大化初始节点选取方法 |
CN107909496A (zh) * | 2017-07-28 | 2018-04-13 | 北京百分点信息科技有限公司 | 社交网络中用户影响力分析方法、装置及电子设备 |
CN108230169A (zh) * | 2017-12-20 | 2018-06-29 | 重庆邮电大学 | 基于社交影响力的信息传播模型及态势感知系统及方法 |
Non-Patent Citations (2)
Title |
---|
赵倩: "基于社区结构的Top-K影响力节点发现算法研究", 《中国优秀博硕士学位论文全文数据库(硕士)基础科学辑》 * |
赵铨: "基于社区发现的社交网络影响力最大化算法研究", 《中国优秀硕士学位论文全文数据库 基础科学辑》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112269922A (zh) * | 2020-10-14 | 2021-01-26 | 西华大学 | 一种基于网络表示学习的社区舆论关键人物发现方法 |
CN112148989A (zh) * | 2020-10-16 | 2020-12-29 | 重庆理工大学 | 基于局部节点以及度折扣的社交网络节点影响力推荐系统 |
CN112148989B (zh) * | 2020-10-16 | 2021-08-24 | 重庆理工大学 | 基于局部节点以及度折扣的社交网络节点影响力推荐系统 |
CN112214689A (zh) * | 2020-10-22 | 2021-01-12 | 上海交通大学 | 基于社交网络中群体的影响力最大化方法及系统 |
CN112508725A (zh) * | 2020-12-04 | 2021-03-16 | 首都师范大学 | 一种基于社区结构的位置感知影响力最大化方法 |
CN112508725B (zh) * | 2020-12-04 | 2023-02-17 | 首都师范大学 | 一种基于社区结构的位置感知影响力最大化方法 |
CN114553818A (zh) * | 2022-02-23 | 2022-05-27 | 中国矿业大学 | 社交网络影响力最大化节点识别方法及系统 |
CN114880584A (zh) * | 2022-05-16 | 2022-08-09 | 华能澜沧江水电股份有限公司 | 一种基于社区发现的发电机组故障分析方法 |
CN114880584B (zh) * | 2022-05-16 | 2024-05-28 | 华能澜沧江水电股份有限公司 | 一种基于社区发现的发电机组故障分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110838072A (zh) | 一种基于社区发现的社交网络影响力最大化方法及系统 | |
Halappanavar et al. | Scalable static and dynamic community detection using grappolo | |
Noack et al. | Multi-level algorithms for modularity clustering | |
US7627542B2 (en) | Group identification in large-scaled networks via hierarchical clustering through refraction over edges of networks | |
CN107784598A (zh) | 一种网络社区发现方法 | |
CN110719106B (zh) | 一种基于节点分类排序的社交网络图压缩方法及系统 | |
CN109376544B (zh) | 一种防止复杂网络中的社团结构被深度挖掘的方法 | |
CN108809697B (zh) | 基于影响力最大化的社交网络关键节点识别方法及系统 | |
CN110909173A (zh) | 一种基于标签传播的非重叠社区发现方法 | |
CN113515672A (zh) | 数据处理方法、装置、计算机可读介质及电子设备 | |
CN110809066A (zh) | IPv6地址生成模型创建方法、装置及地址生成方法 | |
CN102244872B (zh) | 一种td-scdma小区的频率规划方法 | |
Carnivali et al. | CoVeC: Coarse-grained vertex clustering for efficient community detection in sparse complex networks | |
Wu et al. | HY-DBSCAN: A hybrid parallel DBSCAN clustering algorithm scalable on distributed-memory computers | |
CN112819157B (zh) | 神经网络训练的方法及装置、智能行驶控制的方法及装置 | |
Wang et al. | A two phase removing algorithm for minimum independent dominating set problem | |
CN111178678B (zh) | 基于社团影响力的网络节点重要性评估方法 | |
US20160292300A1 (en) | System and method for fast network queries | |
Xie et al. | Detecting an overlapping community structure by using clique-to-clique similarity based label propagation | |
CN113592663A (zh) | 一种基于社区度和结构洞的影响力最大化方法 | |
Yang et al. | Seeking community structure in networks via biogeography-based optimization with consensus dynamics | |
Kaur et al. | On solving partition driven standard cell placement problem using firefly-based metaheuristic approach | |
CN114640643A (zh) | 基于群体智能的信息跨社群传播最大化方法及系统 | |
Oliveira et al. | High quality multi-core multi-level algorithm for community detection | |
CN113436674B (zh) | 一种基于topsis种子扩张的增量式社团检测方法—tseia |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200225 |
|
RJ01 | Rejection of invention patent application after publication |