CN107194818A - 基于节点重要度的标签传播社区发现算法 - Google Patents
基于节点重要度的标签传播社区发现算法 Download PDFInfo
- Publication number
- CN107194818A CN107194818A CN201710238093.5A CN201710238093A CN107194818A CN 107194818 A CN107194818 A CN 107194818A CN 201710238093 A CN201710238093 A CN 201710238093A CN 107194818 A CN107194818 A CN 107194818A
- Authority
- CN
- China
- Prior art keywords
- node
- label
- importance
- pitch point
- point importance
- 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
- 238000012163 sequencing technique Methods 0.000 claims abstract description 4
- 238000012545 processing Methods 0.000 claims abstract description 3
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000000644 propagated effect Effects 0.000 abstract description 2
- 238000000034 method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 2
- 230000006854 communication Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于节点重要度的标签传播社区发现算法,其主要技术特点是:初始化每个节点的唯一标签;计算每个节点重要度,并按节点重要度从高到低对节点排序,生成有序序列;设置迭代次数t=1;对有序序列中的任意节点,根据标签选择方法和标签更新规则将该节点的标签更新为其邻接节点标签集中影响力最大的标签;若迭代次数t==max Iter或每个节点的标签为影响力最大的标签,则将具有同样标签的节点归入相同社区,处理结束;否则,迭代次数t加1,继续更新。本发明设计合理,在复杂度相似的情况下能够显著提高社区发现的质量,缩短迭代周期,具有较高的准确性和稳定性,可广泛用于社区发现、社交网络等领域。
Description
技术领域
本发明属于智能信息处理技术领域,尤其是一种基于节点重要度的标签传播社区发现算法。
背景技术
社会网络中的社区发现对于社会网络分析具有重要意义。近10年来,已有很多社会网络社区发现方法被提出,依据采用的求解策略不同,主要可以分为基于优化的社区发现方法和基于启发式的社区发现方法,基于优化的方法通过设置目标函数并迭代逼近函数最优值实现社区发现,具有代表性的方法包括谱方法和模块度最大化方法。基于启发式策略的方法通过设置启发规则来寻找最优社区划分,代表性的算法如GN(Girvan-Newman)算法和WH(Wu-Huberman)算法。
标签传播算法是一种基于图的半监督学习方法,其基本思路是用已标记节点的标签信息去预测未标记节点的标签信息。其利用样本间的关系建立关系完全图模型,在完全图中,节点包括已标注和未标注数据,其边表示两个节点的相似度,节点的标签按相似度传递给其他节点。标签数据就像是一个源头,可以对无标签数据进行标注,节点的相似度越大,标签越容易传播。
2007年,Raghavan等人提出了一种基于标签传播思想的快速社区发现算法LPA(Label Propagation Algorithm),LPA算法在迭代更新节点标签的过程中存在不确定性和随机性,导致其结果准确性和稳定性常常不能达到预期。之后又有学者分别从不同角度对LPA算法进行改进,但是这些算法仅根据标签的个数评判标签的影响力,没有考虑标签更新的顺序和节点自身重要度对标签选择的影响。在大规模社交网络中,比如微博社会网络,如果考虑节点先验属性对节点重要度的影响。
综上所述,现有的标签传播算法在准确性和稳定性上都存在很大的提升空间。
发明内容
本发明的目的在于克服现有技术的不足,提供基于节点重要度的标签传播社区发现算法,能够在复杂度相似的情况下能够显著提高社区发现的质量,缩短迭代周期,从而提高社区发现的准确性和稳定性。
本发明解决其技术问题是采取以下技术方案实现的:
一种基于节点重要度的标签传播社区发现算法,包括以下步骤:
步骤1:初始化每个节点的唯一标签;
步骤2:计算每个节点重要度,并按节点重要度从高到低对节点排序,生成有序序列;
步骤3:设置迭代次数t=1;
步骤4:对有序序列中的任意节点,根据标签选择方法和标签更新规则将该节点的标签更新为其邻接节点标签集中影响力最大的标签;
步骤5:设置最大迭代次数为max Iter,若迭代次数t==max Iter或每个节点的标签为影响力最大的标签,则将具有同样标签的节点归入相同社区,处理结束;否则,迭代次数t加1,返回步骤4;
进一步,所述步骤2节点重要度的计算公式为:
其中,NI(i)表示节点i的重要度,Inf(i)表示节点i的先验重要度,α表示衡量邻接节点重要度对节点i影响力的系数,α取值从0到1,N(i)表示节点i的邻接节点集,d(j)表示节点i的邻接节点j的度数。
进一步,所述步骤4标签选择方法的计算公式如下:
其中,LI(i,l)表示标签l对节点i的影响力,Nl(i)表示节点i周围标签为l的集合,d(j)表示节点i的邻接节点j的度数,NI(j)表示节点i的相邻节点j的重要度。
进一步,所述步骤4标签更新规则的计算公式如下:
其中,ci表示节点i的邻接标签出现多个标签的数量同为最大值时选择的标签,lmax表示标签数量为最大值的标签集合,LI(i,l)表示标签l对节点i的影响力。
本发明的优点和积极效果是:
本发明通过计算每个节点重要度并按节点重要度从高到低对节点排序,同时采用标签选择方法和标签更新规则进行节点标签更新,能够在复杂度相似的情况下能够显著提高社区发现的质量,缩短迭代周期,能够准确并稳定地发现网络中的社区,可广泛用于社区发现、社交网络等领域。
附图说明
图1a为本发明更新节点4的示意图;
图1b为本发明更新节点6的示意图;
图1c为本发明更新节点2的示意图;
图2为本发明与NIBLPA、LPA在不同参数α得到的模块度对比图;
图3为本发明与NIBLPA、LPA在参数α=0.4时的50次重复试验对比图;
图4为本发明与NIBLPA、LPA在不同参数α得到的迭代次数对比图;
图5为本发明与NIBLPA、LPA在不同参数α得到的运行时间对比图。
具体实施方式
以下结合附图对本发明实施例做进一步详述:
一种基于节点重要度的标签传播社区发现算法,包括以下步骤:
步骤1:初始化每个节点v∈V的唯一标签,ci=i。
在本实施例中,初始化六个节点1、2、3、4、5、6的标签分别为a、b、c、d、e、f,如图1a所示。
步骤2:根据重要度计算方法计算每个节点重要度,并按节点重要度从高到低对节点排序,生成有序序列V'={vl,vs,···,vn},其中NI(vl)≥NI(vs)≥···≥NI(vn)。
在本步骤中,计算每个节点重要度是基于先验属性得到的重要度而提出的一种新的重要度计算方法,其计算公式如下:
其中,NI(i)表示节点i的重要度,Inf(i)表示节点i的先验重要度,α表示衡量邻接节点重要度对节点i影响力的系数,取值从0到1,N(i)表示节点i的邻接节点集,d(j)表示节点i的邻接节点j的度数。
通过上述重要度计算公式,计算得到节点1-6新的重要度分别为:1.3302、0.943、1.3132、1.3702、0.9793、1.3662,如图1a所示;然后按照新的节点重要度按照从大到小的顺序进行排序,得到标签更新序列为4-6-1-3-5-2。
步骤3:设置迭代次数t=1。
步骤4:对任意节点v∈V',根据标签选择方法和标签更新规则将vi的标签更新为其邻接节点标签集中影响力最大的标签。
标签选择方法是一种基于标签影响力的标签选择方法,即计算各标签的影响力,取影响力最大的标签赋予节点,其计算公式如下:
其中LI(i,l)表示标签l对节点i的影响力,Nl(i)表示节点i周围标签为l的集合。
标签更新规则是一种新的标签更新规则,其计算公式如下:
其中ci表示节点i的邻接标签出现多个标签的数量同为最大值时选择的标签,lmax表示标签数量为最大值的标签集合,即节点i的邻接节点出现多个标签的数量同为最大值时,根据公式重新计算数量为最大值的标签对节点i的影响力,选择具有最大标签影响力的标签赋给节点i。
本步骤的具体实现方法为:(1)更新节点4,使用(l,n,LI(l))形式来表达节点4的邻接标签信息,其中l表示标签,n表示该标签的数量,LI(l)表示标签l的影响力。如图1a所示,节点4有3个邻接节点,且邻接节点分别拥有不同的标签,所以节点4的邻接标签信息为:{(a,1,0.4434),(e,1,0.4897),(f,1,0.4554)},因此,选择标签e作为节点4的新标签;(2)更新节点6,在更新节点4的标签为e之后,节点6的邻接标签信息为{(e,2),(c,1)},由于邻接节点的标签最大值只有一个,因此不再计算标签影响力,并选择标签e更新节点6,其过程如图1b所示;节点1和3的标签传播过程和节点4、6的相似,均被更新为标签b,具体过程不再赘述;(3)节点5和节点2由于其邻接标签信息的标签都是其自身的标签,因此不再更新,其过程如图1c所示。
从上述标签传播过程中可以看出,仅仅通过一次迭代,本发明的算法就获得了包含两个社区的结果,并且完全符合正确的社区划分情况。因此,算法具有良好的稳定性和准确性。
步骤5:设置最大迭代次数为max Iter,若迭代次数t==max Iter或每个节点的标签为影响力最大的标签,将具有同样标签的节点归入相同社区,算法处理结束;否则t=t+1,返回步骤4。
通过实现结果可以对本发明做进一步验证。如图2所示,本发明(LPA_NI算法)在参数α=0.4时取得的模块度明显高于NIBLPA算法和LPA算法,而且随着邻接节点重要度对节点i的影响力逐渐增大的过程中,LPA_NI算法的社区划分质量先开始提高,后逐渐降低,因此,邻接节点重要度适量的影响会显著提高算法LPA_NI图1b为的准确性,同时获取最优的划分结果。
如图3所示,LPA_NI算法和NIBLPA算法在50次重复试验中得到的模块度Q值都是0.6995和0.6197,由于这两种算法都改进了更新序列和标签选择过程中的随机性,因此可以得到很好的稳定性,而LPA算法因为其算法存在随机性,导致每次得到的模块度都会变化,因此稳定性较差,而本发明在得到较高的模块度的同时依然具备很好的稳定性。
从图4和图5中可以看出,随着参数α的增大,LPA_NI算法和LPA算法的迭代次数比较稳定,分别都稳定在7次和14次,而NIBLPA算法有较大波动,迭代次数在前期稳定在8次左右,之后次数会激增到17、21、13次。实验结果表明,LPA_NI算法的迭代次数明显小于LPA算法和NIBLPA算法,自然运算时间也会明显优于其他算法,而且仅依靠k-shell值计算得到节点重要度并能完全描述节点在大规模社交网络中的影响力,因此在参数α≥0.8时,社区的迭代次数和运行时间会明显增高,而LPA_NI算法利用先验知识计算得到的重要度更准确,因此其迭代次数和运行时间都会更少,而且稳定性要明显好于其他两种算法。
需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。
Claims (4)
1.一种基于节点重要度的标签传播社区发现算法,其特征在于包括以下步骤:
步骤1:初始化每个节点的唯一标签;
步骤2:计算每个节点重要度,并按节点重要度从高到低对节点排序,生成有序序列;
步骤3:设置迭代次数t=1;
步骤4:对有序序列中的任意节点,根据标签选择方法和标签更新规则将该节点的标签更新为其邻接节点标签集中影响力最大的标签;
步骤5:设置最大迭代次数为maxIter,若迭代次数t==maxIter或每个节点的标签为影响力最大的标签,则将具有同样标签的节点归入相同社区,处理结束;否则,迭代次数t加1,返回步骤4。
2.根据权利要求1所述的基于节点重要度的标签传播社区发现算法,其特征在于:所述步骤2节点重要度的计算公式为:
其中,NI(i)表示节点i的重要度,Inf(i)表示节点i的先验重要度,α表示衡量邻接节点重要度对节点i影响力的系数,α取值从0到1,N(i)表示节点i的邻接节点集,d(j)表示节点i的邻接节点j的度数。
3.根据权利要求1所述的基于节点重要度的标签传播社区发现算法,其特征在于:所述步骤4标签选择方法的计算公式如下:
其中,LI(i,l)表示标签l对节点i的影响力,Nl(i)表示节点i周围标签为l的集合,d(j)表示节点i的邻接节点j的度数,NI(j)表示节点i的相邻节点j的重要度。
4.根据权利要求1所述的基于节点重要度的标签传播社区发现算法,其特征在于:所述步骤4标签更新规则的计算公式如下:
其中,ci表示节点i的邻接标签出现多个标签的数量同为最大值时选择的标签,lmax表示标签数量为最大值的标签集合,LI(i,l)表示标签l对节点i的影响力。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710238093.5A CN107194818A (zh) | 2017-04-13 | 2017-04-13 | 基于节点重要度的标签传播社区发现算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710238093.5A CN107194818A (zh) | 2017-04-13 | 2017-04-13 | 基于节点重要度的标签传播社区发现算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107194818A true CN107194818A (zh) | 2017-09-22 |
Family
ID=59872032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710238093.5A Pending CN107194818A (zh) | 2017-04-13 | 2017-04-13 | 基于节点重要度的标签传播社区发现算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107194818A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704572A (zh) * | 2017-09-30 | 2018-02-16 | 北京奇虎科技有限公司 | 人物实体的创作角度挖掘方法及装置 |
CN107862073A (zh) * | 2017-11-24 | 2018-03-30 | 山西大学 | 一种基于节点重要度和分离度的Web社区划分方法 |
CN107862617A (zh) * | 2017-10-20 | 2018-03-30 | 江苏大学 | 一种基于用户综合相似度的微博社区划分方法 |
CN108364234A (zh) * | 2018-03-08 | 2018-08-03 | 重庆邮电大学 | 一种基于节点影响力标签传播的微博社区发现方法 |
CN108804582A (zh) * | 2018-05-24 | 2018-11-13 | 天津大学 | 基于大数据间复杂关系的图数据库优化的方法 |
CN109063156A (zh) * | 2018-08-12 | 2018-12-21 | 海南大学 | 个性化社交网络资源集成与展示系统 |
CN110909173A (zh) * | 2019-11-13 | 2020-03-24 | 河海大学 | 一种基于标签传播的非重叠社区发现方法 |
CN114513426A (zh) * | 2022-03-02 | 2022-05-17 | 郑州轻工业大学 | 基于节点相似度和影响力的ccn社区划分方法 |
-
2017
- 2017-04-13 CN CN201710238093.5A patent/CN107194818A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704572A (zh) * | 2017-09-30 | 2018-02-16 | 北京奇虎科技有限公司 | 人物实体的创作角度挖掘方法及装置 |
CN107862617A (zh) * | 2017-10-20 | 2018-03-30 | 江苏大学 | 一种基于用户综合相似度的微博社区划分方法 |
CN107862073A (zh) * | 2017-11-24 | 2018-03-30 | 山西大学 | 一种基于节点重要度和分离度的Web社区划分方法 |
CN107862073B (zh) * | 2017-11-24 | 2021-03-30 | 山西大学 | 一种基于节点重要度和分离度的Web社区划分方法 |
CN108364234A (zh) * | 2018-03-08 | 2018-08-03 | 重庆邮电大学 | 一种基于节点影响力标签传播的微博社区发现方法 |
CN108804582A (zh) * | 2018-05-24 | 2018-11-13 | 天津大学 | 基于大数据间复杂关系的图数据库优化的方法 |
CN109063156A (zh) * | 2018-08-12 | 2018-12-21 | 海南大学 | 个性化社交网络资源集成与展示系统 |
CN110909173A (zh) * | 2019-11-13 | 2020-03-24 | 河海大学 | 一种基于标签传播的非重叠社区发现方法 |
CN114513426A (zh) * | 2022-03-02 | 2022-05-17 | 郑州轻工业大学 | 基于节点相似度和影响力的ccn社区划分方法 |
CN114513426B (zh) * | 2022-03-02 | 2023-09-15 | 郑州轻工业大学 | 基于节点相似度和影响力的ccn社区划分方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107194818A (zh) | 基于节点重要度的标签传播社区发现算法 | |
CN104346629B (zh) | 一种模型参数训练方法、装置及系统 | |
Zhang et al. | Mapping Koch curves into scale-free small-world networks | |
CN105653689B (zh) | 一种用户传播影响力的确定方法和装置 | |
Xue et al. | Optimizing ontology alignment through memetic algorithm based on partial reference alignment | |
CN112491096B (zh) | 一种用于生成电网仿真分析算例的方法及系统 | |
CN103327092A (zh) | 一种信息网络上的社区发现方法和系统 | |
CN110909172B (zh) | 一种基于实体距离的知识表示学习方法 | |
CN105978711B (zh) | 一种基于最小生成树的最佳交换边查找方法 | |
CN105069290B (zh) | 一种面向寄递数据的并行化关键节点发现方法 | |
CN104268629A (zh) | 一种基于先验信息和网络固有信息的复杂网络社区检测方法 | |
CN104143161A (zh) | 一种基于广度优先搜索配电网回路的搜索方法 | |
CN106355091B (zh) | 基于生物智能的传播源定位方法 | |
CN107145934A (zh) | 一种基于增强局部搜索能力的人工蜂群优化方法 | |
CN113254669A (zh) | 基于知识图谱的配电网cim模型信息补全方法及系统 | |
CN104156462B (zh) | 基于元胞自动学习机的复杂网络社团挖掘方法 | |
CN104657901A (zh) | 一种基于随机游走的标签传播社区发现方法 | |
CN112905906B (zh) | 一种融合局部协同与特征交叉的推荐方法及系统 | |
Roos et al. | Analysis of textual variation by latent tree structures | |
CN112016622B (zh) | 模型训练的方法、电子设备和计算机可读存储介质 | |
Van Gelder | Generalized conflict-clause strengthening for satisfiability solvers | |
CN116611527B (zh) | 量子电路处理方法、装置及电子设备 | |
CN108712278A (zh) | 一种基于集成学习的网络社区发现方法 | |
CN109635183A (zh) | 一种基于社区的合作者推荐方法 | |
CN112837739B (zh) | 基于自编码器与蒙特卡洛树的层次化特征系统发育模型 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170922 |