1.一种基于标签传播的拓扑势社区检测方法,其特征在于,具体按照以下步骤实施:步骤1,根据节点间的链接属性和节点的信息属性,利用标签传播的思想,计算节点间的链接权重R;
步骤2,将步骤1得到的链接权重加入拓扑势域公式中,计算每个节点的拓扑势值;
步骤3,利用步骤2计算的每个节点拓扑势值进行社区划分,以局部最高拓扑势值的节点作为社区的核心节点,从核心节点出发进行社区的划分;
步骤4,对步骤3划分好的子群社区根据核心节点间的距离以及属性特征,将子群社区进行合并;
所述步骤1具体为:
步骤1.1,利用LeaderRank算法计算网络G=(V,E)中每个节点的LR值,其中,aji表示节点vj到节点vi是否有链接,有为1,无为0; 表示节点vj的出度个数,N表示节点的总个数,LRi(t)表示vi节点在t时刻的得分,LRi(t+1)表示vi节点在t+1时刻的得分,LRi(tc)表示tc时刻节点vi的得分,g为LeaderRank算法中引入的背景节点,LRg(tc)为节点g在tc时刻的得分,LRi表示vi节点最终的得分;
步骤1.2,设传播特性为k,计算标签从节点vj到节点vi的传播特性度量值ki←j,其中,LRi表示vi节点最终的得分,LRj表示vj节点最终的得分;
步骤1.3,计算节点间的标签传播概率,即就是边的权值,节点vj到节点vi的标签传播概率P(i←j)为:
P(i←j)=Si,j×ki←j×δ(i,j)其中,Si,j为节点vi和vj的相似性度量,ki←j为标签从节点vj到节点vi的传播特性度量,δ(i,j)为邻接矩阵;
节点j到节点i的标签传播概率体现了标签从节点j传播到节点i的能力,即就是节点j到节点i的有向边的权值,即节点间的链接权重,即Rij=P(j←i);
所述步骤2中每个节点的拓扑势值计算公式如下:其中,n为节点数,dij表示节点vi与节点vj之间的网络距离或跳数,σ为影响因子,用于控制每个节点的影响范围,m(j)表示节点vj的质量,用来描述每个节点的固有属性,P(j→i)为标签从节点vj传播到节点vi的概率,rij为节点vi和节点vj的环境影响因子;
所述步骤3具体为:
步骤3.1,将每个节点与其邻居节点的拓扑势值作比较,将拓扑势局部最大值的节点作为子群社区的核心节点;
步骤3.2,将步骤3.1确定的核心节点的邻居节点进行节点的划分,划分为该子群的重叠节点、内部节点、边缘节点;
步骤3.3,对所有内部节点的邻居节点进行节点的划分;
步骤3.4,重复步骤3.3,直到内部节点的所有邻居节点都被划分或不满足重叠节点、内部节点、边缘节点的定义为止,完成社区的划分;
所述步骤3.1的核心节点确定方法为:在一个社交网络G=(V,E)中,存在节点vi,其邻居节点的集合为Ni, 若φ(i)>φ(j),则节点vi是拓扑势域的局部最高点,拓扑势局部的最高点,也就是当前子群社区的核心节点,即节点vi为子群社区的核心节点;
所述重叠节点的确定方法为:
在一个社交网络G=(V,E)中,存在节点vi,其邻居节点的集合为Ni, 如果φ(i)<φ(j),且节点vi处在两个不同核心节点的社区的山谷的位置,则节点vi是拓扑势域的重叠节点,也就是山谷节点;
所述边缘节点的确定方法为:
在一个社交网络G=(V,E)中,某节点vi的邻居节点为Ni,Coverlap是重叠节点的集合,Cno‑overlap是不重叠节点的集合;
(1)如果vi∈Coverlap,则节点vi是边缘节点;
(2) 如果vi∈Cno‑overlap,而 并且 则节点vi是边缘节点;
所述步骤4具体为:
步骤4.1,计算核心节点间的距离在子群社区划分中,拓扑势值为局部最大值的节点核心节点视为山峰节点,而一个山峰节点对应一个社区;
(1)若两个子群社区不重叠但边缘节点相连接当两个子群社区没有重叠节点,但它们之间的边缘节点是相互连接的时,选取边缘节点到到其自身归属的子群社区的核心节点的最短距离为两个子群社区不重叠但边缘节点相连接的距离CCD;
(2)若子群社区不重叠并且边缘节点相也不连接采用边缘节点探测方法进行计算不重叠且边缘节点不相连的两个子群社区的核心节点间的距离,具体为:利用当前子群社区的边缘节点,根据设置的步长向子群社区外部进行跳转,每当跳到下一个节点,首先判断当前节点是否归属于其他子群社区,若是,根据跳转的步长已及初始节点和当前节点的信息计算两个社区的距离,若否,跳转到下一个节点,跳转即在原步长的基础上加上跳转步长,其中,探测的步长设置为当前边缘节点到达子群社区核心节点的欧式距离的1/2;
(3)若子群社区间重叠,则根据子群社区间的重叠节点到达核心节点的距离进行加和,最终取其最短的路径长度作为两个子群社区核心节点间的距离;
对于子群社区间的距离的计算,首先分别对上述三种情况进行处理和计算得到社区的最短距离,然后将三种情况的结果进行比较取其最小值,最终得到相近两两社区的最短距离,即核心节点间的距离;
步骤4.2,子群社区合并
在子群社区划分后,需要将子群社区根据稀疏分布情况进行划分,若和其他社区之间没有连接关系则为稀疏子群社区,所以子群社区合并分为邻子群社区合并和稀疏子群社区合并两种:
(1)相邻子群社区合并
相邻的两个社区之间核心节点的最短路径存放在CCD中,计算d=max(CCD),设置 为合并参数取值0‑1, 为合并距离,当 时,将两个社区进行合并,随机将两个子群社区中的一个核心节点设置为合并后社区的核心节点,其中CCDij为相邻的两个社区核心节点i和j之间的最短路径;
(2)稀疏子群社区合并
稀疏子群社区为和其他社区之间没有连接关系的子群社区,因此稀疏的子群社区通过其核心节点的信息属性进行合并,即核心节点所具有的所有属性信息进行合并,将核心节点的信息属性相同的稀疏子群社区合并成为一个大社区。
2.根据权利要求1所述的一种基于标签传播的拓扑势社区检测方法,其特征在于,所述内部节点的确定方法为:
在一个社交网络G=(V,E)中,某节点vi的邻居节点为Ni,内部节点满足下面任意一种情况成立:
(1) 如果φ(vi)<φ(vj)并且 如果φ(vi)>φ(vj),则节点vi处于斜波位置,也就是拓扑势域的内部节点;
(2)如果φ(vi)<φ(vj)并且节点vi处在两个同核心节点的社区的山谷的位置,这该节点是社区的内部节点。