基于多目标进化的带属性社交网络社区划分方法技术

技术编号:15823515 阅读:40 留言:0更新日期:2017-07-15 05:28
本发明专利技术公开一种基于多目标进化的带属性社交网络划分方法,其方案为:1)设定参数,初始化种群,初始迭代次数;2)基于局部结构和属性紧密度对种群中染色体进行解码;3)构建属性相似度函数S

【技术实现步骤摘要】
基于多目标进化的带属性社交网络社区划分方法
本专利技术属于数据挖掘
,具体涉及一种带属性社交网络重叠社区划分方法,可用于用户画像、个性化推荐和自动好友分类。
技术介绍
社区结构是复杂网络的一个重要属性,它是指网络可以划分成很多社区,社区内的点紧密相连,社区间的点连接稀疏。同一社区内的点往往具有相似的性质,可以提供重要的信息。社区检测就是发现隐藏在网络中的社区结构,其对理解网络的功能,探索隐藏在网络中的信息,追踪网络的行为有重要意义。近年来,随着Facebook、Twitter、微信、Google+等社交网络的飞速发展,针对社交网络的社区发现方法迫切需求。针对社交网络社区发现问题,已经存在多种不同的优化算法。Girvan等人于2002年提出了基于分割边介数的社区检测方法GN,该方法与类似算法相比其运行速度大为改进。Newman于2004年提出了极大化网络模块度Q函数的算法FN,至此Q成为了评价社区检测的重要指标。上述的这些算法只关注了网络的拓扑结构。然而,与一般网络相比,社交网络拥有更丰富的信息。社交网络中的用户除了拥有丰富的边连接关系之外,还拥有丰富的属性信息,比如:年龄,爱好本文档来自技高网...
基于多目标进化的带属性社交网络社区划分方法

【技术保护点】
基于多目标进化的带属性社交网络社区划分方法,包括如下步骤:(1)设定参数:即设定种群中染色体的个数M为100,最大迭代次数G为1000,种群中染色体的邻居个数Tn为20,染色体中基因的个数表示为n;(2)初始化种群:将迭代次数t的初始设置为1,应用基于排列的编码表示,随机生成M个染色体,记为A(P

【技术特征摘要】
1.基于多目标进化的带属性社交网络社区划分方法,包括如下步骤:(1)设定参数:即设定种群中染色体的个数M为100,最大迭代次数G为1000,种群中染色体的邻居个数Tn为20,染色体中基因的个数表示为n;(2)初始化种群:将迭代次数t的初始设置为1,应用基于排列的编码表示,随机生成M个染色体,记为A(P1),A(P2),…,A(Pj),…A(PM),其中A(Pj)表示种群中第j个染色体,j=1,2……M;(3)基于局部结构和属性紧密度对种群中的染色体A(Pj)进行解码,生成具有重叠的社区划分A(Cj);(4)构建属性相似度函数SA为:其中,z表示第z个社区,s(a,b)表示节点a和节点b的余弦相似度,rz代表社区z中节点的个数;(5)利用拓展模块度函数EQ和属性相似度函数SA,利用如下公式分别计算M个社区划分适应度函数F:F=λT×|EQ-fT|+λA×|SA-fA|,其中,fT代表当前种群中所有个体的拓展模块度函数EQ最优值,fA代表当前种群中所有个体的属性相似度函数SA最优值,fT和fA初始化为无穷小,λT代表结构紧密度权重,λA代表属性相似度权重;(6)产生新的染色体,生成新的种群:(6a)初始化j为1,在A(Pj)邻居内随机选两个染色体作为父代染色体A(Pj1)和A(Pj2),并对这两者进行匹配交叉,生成两个父代新染色体A(Pj3)和A(Pj4);(6b)对两个父代染色体A(Pj1)和A(Pj2)进行解码,生成第1个社区划分A(Cj1)和第2个社区划分A(Cj2),即利用步骤(4)的公式对A(Cj1)和A(Cj2)分别计算其属性相似度,并分别计算其拓展模块度,再利用步骤(5)中的公式分别计算A(Cj1)的适应度,即第1适应度F1和A(Cj2)的适应度,即第2适应度F2;(6c)对两个父代新染色体A(Pj3)和A(Pj4)进行解码,生成第3个社区划分A(Cj3)和第4个社区划分A(Cj4),对这两个新社区划分A(Cj3)和A(Cj4)利用步骤(4)的公式分别计算其属性相似度,并分别计算其拓展模块度,再利用步骤(5)中的公式分别计算A(Cj3)的适应度,即第3适应度F3和A(Cj4)的适应度,即第4适应度F4;(6d)将步骤(6b)与步骤(6c)的结果进行对比:如果F3大于F1,则用A(Pj3)替代A(Pj1),否则不做替代;如果F4大于F2,则用A(Pj4)替代A(Pj2),否则不做替代;(6e)对A(Pj)染色体实施转换基因位变异,生成一个变异后的新染色体A(Pj5);(6f)对A(Pj)进行...

【专利技术属性】
技术研发人员:刘静焦李成李张涛
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1