当前位置: 首页 > 专利查询>山西大学专利>正文

一种面向社交网络的社区检测方法技术

技术编号:22167101 阅读:31 留言:0更新日期:2019-09-21 10:40
本发明专利技术一种面向社交网络的社区检测方法,属于互联网数据挖掘技术领域;提供一种面向社交网络的社区检测方法,能够准确检测出社交网络中的社区结构,且社区检测结果稳定;技术方案为:获取社交网络数据,建立邻接矩阵用来存储用户之间的关联关系,以此构成网络;根据网络构造模体,计算得到用户节点的密集度;根据网络计算得到用户节点的间隔度;计算每个非中心用户节点关于不同社区的隶属度,将这些非中心用户节点分配到隶属度最大的社区;输出最终的社区检测结果,将结果反馈给社交网络分析人员,用于社交网络的舆情监控和推荐系统构建。

A Social Network-Oriented Community Detection Method

【技术实现步骤摘要】
一种面向社交网络的社区检测方法
本专利技术一种面向社交网络的社区检测方法,属于互联网数据挖掘

技术介绍
随着信息技术的快速发展,Facebook等虚拟社交平台变得更加普及,由于越来越多的人开始使用社交平台,社交网络变得更加庞大与复杂,其中蕴含着大量有价值的信息。通常将社交网络建模为复杂网络,其中将用户抽象为网络节点,将用户之间的联系抽象为节点之间的连边。社区结构作为一种数据组织形式广泛存在于各种复杂网络中,如:在社交网络中拥有相同兴趣的用户往往形成同一社区,从中挖掘出这些信息对于商业运营和科学研究都具有非常重要的应用价值。传统的社区检测方法认为每个节点只能归属于一个社区,即社区之间是相互独立的。近年来一些学者围绕这个问题展开了深入研究,形成了大量的研究成果,其中具有代表性的方法包括以下几类:基于模块性优化的社区挖掘方法、基于标签传播的社区挖掘方法、基于划分的社区挖掘方法和基于动力学的社区挖掘方法。社交网络含有丰富的属性信息,社区的形成除了与节点间拓扑结构相关外,还受到节点的属性信息的影响,如:有相似背景信息的用户往往构成同一社区。然而传统的社区检测方法仅依赖拓扑关系进行社区结构的检测,忽略了节点的属性信息在社区形成中的作用。有的方法虽然考虑到了节点的属性信息,也是独立运用拓扑结构和节点属性两类信息进行社区检测,忽略了两类信息在网络社区形成过程中的共同作用。这都导致了社区检测结果可靠性不高。
技术实现思路
本专利技术一种面向社交网络的社区检测方法,克服了现有技术存在的不足,提供一种面向社交网络的社区检测方法,能够准确检测出社交网络中的社区结构,且社区检测结果稳定。为了解决上述技术问题,本专利技术采用的技术方案为:一种面向社交网络的社区检测方法,包括以下步骤:S1:获取社交网络数据,建立邻接矩阵用来存储用户之间的关联关系,以此构成网络G=<V,E,F>;S2:根据网络G=<V,E,F>构造模体,并计算模体中与每条边相连的两个用户节点间的属性同质值HG(i,j)、模体的属性同质值Ht和用户节点间的属性-结构连接强度aij,从而得到用户节点的密集度Deni;S3:根据网络G=<V,E,F>,计算相邻用户节点间的直接相似度DT(i,j)、不相邻用户节点间的间接相似度IT(i,j)、边ei,j相对于节点邻域Fi的边适应度边ei,j相对于节点邻域Fj的边适应度边ei,j的边适应度Fitij,从而得到用户节点的间隔度Inti;S4:选择密集度Deni和间隔度Inti乘积最大的K个用户节点作为网络中K个社区的社区中心;S5:计算每个非中心用户节点关于不同社区的隶属度,将这些非中心用户节点分配到隶属度最大的社区;S6:输出最终的社区检测结果,将结果反馈给社交网络分析人员,用于社交网络的舆情监控和推荐系统构建。进一步的,所述步骤S1具体为:获取社交网络数据,依据社交网络中用户间的关联关系建立社交网络的邻接矩阵其中uij表示第i个用户与第j个用户之间的关联关系;若两个用户之间有关联,则uij=1,否则uij=0;以此构成网络G=<V,E,F>,其中表示由网络中的n个用户组成的集合,vi是用于表示第i个社交网络用户的节点;表示由社交网络中用户间关联关系对应的边组成的集合,其中ei,j表示第i个用户与第j个用户之间的一条连边;表示社交网络中的属性集合,其中fi表示第i个用户的属性向量,每个用户的属性向量包含d个维度。进一步的,所述步骤S2具体为:S21:利用相邻用户节点构造模体结构,记为其中α表示模体中包含的边的总数,β表示模体中包含的用户节点的总数;S22:计算用户节点间的属性同质值,用于表示对应的两个社交网络用户间的属性相似程度,其取值越大,表示两个用户之间的属性相似程度越高;用户节点vi和vj之间的属性同质值的计算公式如下:其中HG(i,j)表示用户节点vi和vj之间的属性同质值,fi和fj分别表示用户节点vi和vj的属性向量,fid和分别表示用户节点vi和vj的第d个属性,表示用户节点vi和vj在第d个属性上的一致强度;若则否则S23:计算第t个模体的属性同质值,计算公式如下:其中Ht表示第t个模体的属性同质值,mt表示第t个模体中边的总数,uw和vw表示模体中由第w条边相连的两个用户节点;S24:计算包含在模体中的任意两个用户节点之间的属性-结构连接强度,计算公式如下:其中aij表示包含在模体中的用户节点vi和vj之间的属性-结构连接强度,Zt表示网络G=<V,E,F>中的第t个模体,{i,j}∈Zt表示用户节点vi和vj同时被包含在Zt中;S25:对于用户节点vi,通过遍历网络中所有的用户节点计算用户节点vi的密集度,计算公式如下:其中Deni表示用户节点vi的密集度,n为网络中的节点总数,用户节点vi的密集度定义为该用户节点与社区内其它用户节点间的属性-结构连接强度之和。进一步的,所述步骤S3具体为:S31:设Fi=N(i)+{vi}-{vj}和Fj=N(j)+{vj}-{vi}表示由边ei,j连接的两个节点邻域,其中{vi}表示只包含用户节点vi的集合,{vj}表示只包含用户节点vj的集合,N(i)和N(j)分别表示用户节点vi和用户节点vj的邻居节点;S32:计算两个相邻用户节点间的直接相似度,计算公式如下:其中DT(i,j)为用户节点vi与vj之间的直接相似度;l(i,j)为用户节点vi与vj之间的属性相似度;l(i)为用户节点vi与所有邻居节点的属性相似度总和;Y(t)为用户节点vt的度;S33:计算两个不相邻用户节点间的间接相似度,计算公式如下:其中IT(i,j)为用户节点vi与用户节点vj间的间接相似度,m=min(DT(i,i1),DT(i1,i2),...,DT(in,j)),dmax为设定的阈值,di,j为用户节点vi与用户节点vj之间的路径长度;S34:计算网络G=<V,E,F>中两个用户节点vi和vj之间的相似度T(i,j),计算公式如下:其中T(i,j)表示用户节点vi与vj间的相似度,DT(i,j)为用户节点vi与vj之间的直接相似度,IT(i,j)为用户节点vi与vj间的间接相似度;S35:计算每条边的边适应度用于表示两个用户节点联系的紧密程度,其取值越大,两个用户联系越紧密,计算公式如下:其中,Fitij表示边ei,j的边适应度,和分别表示边ei,j相对于节点邻域Fi和Fj的边适应度;S36:计算边ei,j相对于节点邻域Fi的边适应度,计算公式如下:其中表示边ei,j相对于节点邻域Fi的边适应度,表示节点邻域Fj内用户节点间相似度总和,vp和vq是节点邻域Fj内的任意两个不同的用户节点,表示节点邻域Fj内用户节点与节点邻域Fi内用户节点间相似度总和,vp是节点邻域Fi内的用户节点,vq是节点邻域Fj内的用户节点,表示用户节点vi与节点邻域Fj内用户节点间相似度总和,vp是节点邻域Fj内的用户节点,表示用户节点vi与节点邻域Fi内用户节点间相似度总和,vq是节点邻域Fi内不同于用户节点vi的用户节点,T(p,q)表示用户节点vp和vq之间的相似度;S37:计算边ei,j相对于节点邻域Fj的边适应度,计算公式如本文档来自技高网...

【技术保护点】
1.一种面向社交网络的社区检测方法,其特征在于,包括以下步骤:S1:获取社交网络数据,建立邻接矩阵用来存储用户之间的关联关系,以此构成网络G=<V,E,F>;S2:根据网络G=<V,E,F>构造模体,并计算模体中与每条边相连的两个用户节点间的属性同质值HG(i,j)、模体的属性同质值Ht和用户节点间的属性‑结构连接强度aij,从而得到用户节点的密集度Deni;S3:根据网络G=<V,E,F>,计算相邻用户节点间的直接相似度DT(i,j)、不相邻用户节点间的间接相似度IT(i,j)、边ei,j相对于节点邻域Fi的边适应度

【技术特征摘要】
1.一种面向社交网络的社区检测方法,其特征在于,包括以下步骤:S1:获取社交网络数据,建立邻接矩阵用来存储用户之间的关联关系,以此构成网络G=<V,E,F>;S2:根据网络G=<V,E,F>构造模体,并计算模体中与每条边相连的两个用户节点间的属性同质值HG(i,j)、模体的属性同质值Ht和用户节点间的属性-结构连接强度aij,从而得到用户节点的密集度Deni;S3:根据网络G=<V,E,F>,计算相邻用户节点间的直接相似度DT(i,j)、不相邻用户节点间的间接相似度IT(i,j)、边ei,j相对于节点邻域Fi的边适应度边ei,j相对于节点邻域Fj的边适应度边ei,j的边适应度Fitij,从而得到用户节点的间隔度Inti;S4:选择密集度Deni和间隔度Ihti乘积最大的K个用户节点作为网络中K个社区的社区中心;S5:计算每个非中心用户节点关于不同社区的隶属度,将这些非中心用户节点分配到隶属度最大的社区;S6:输出最终的社区检测结果,将结果反馈给社交网络分析人员,用于社交网络的舆情监控和推荐系统构建。2.根据权利要求1所述的面向社交网络的社区检测方法,其特征在于,所述步骤S1具体为:获取社交网络数据,依据社交网络中用户间的关联关系建立社交网络的邻接矩阵其中uij表示第i个用户与第j个用户之间的关联关系;若两个用户之间有关联,则uij=1,否则uij=0;以此构成网络G=<V,E,F>,其中表示由网络中的n个用户组成的集合,vi是用于表示第i个社交网络用户的节点;表示由社交网络中用户间关联关系对应的边组成的集合,其中ei,j表示第i个用户与第j个用户之间的一条连边;表示社交网络中的属性集合,其中fi表示第i个用户的属性向量,每个用户的属性向量包含d个维度。3.根据权利要求2所述的面向社交网络的社区检测方法,其特征在于,所述步骤S2具体为:S21:利用相邻用户节点构造模体结构,记为其中α表示模体中包含的边的总数,β表示模体中包含的用户节点的总数;S22:计算用户节点间的属性同质值,用于表示对应的两个社交网络用户间的属性相似程度,其取值越大,表示两个用户之间的属性相似程度越高;用户节点vi和vj之间的属性同质值的计算公式如下:其中HG(i,j)表示用户节点vi和vj之间的属性同质值,fi和fj分别表示用户节点vi和vj的属性向量,fid和分别表示用户节点vi和vj的第d个属性,表示用户节点vi和vj在第d个属性上的一致强度;若则否则S23:计算第t个模体的属性同质值,计算公式如下:其中Ht表示第t个模体的属性同质值,mt表示第t个模体中边的总数,uw和vw表示模体中由第w条边相连的两个用户节点;S24:计算包含在模体中的任意两个用户节点之间的属性-结构连接强度,计算公式如下:其中aij表示包含在模体中的用户节点vi和vj之间的属性-结构连接强度,Zt表示网络G=<V,E,F>中的第t个模体,{i,j}∈Zt表示用户节点vi和vj同时被包含在Zt中;S25:对于用户节点vi,通过遍历网络中所有的用户节点计算用户节点vi的密集度,计算公式如下:其中Deni表示用户节点vi的密集度,n为网络中的节点总数,用户节点vi的密集度定义为该用户节点与社区内其它用户节点间的属性-结构连接强度之和。4.根据权利要求3所述的面向社交网络的社区检测方法,其特征在于,所述步骤S3具体为:S31:设Fi=N(i)+{vi}-{vj}和Fj=N(j)+{vj}-{vi}表示由边ei,j连接的两个节点邻域,其中{vi}表示只包含用户节点vi的集合,{vj}表示只包含用户节点vj的集合,N(i)和N(j)分别表示用户节点vi和用户节点vj的邻居节点;S32:计算两个相邻用户节点间的直接相似度,计算公式如下:其中DT(i,j)为用户节点vi与vj之间的直接相似度;l(i,j)为用户节点vi与vj之间的属性相似度;l(i)为用户节点vi与所有...

【专利技术属性】
技术研发人员:杜航原裴希亚
申请(专利权)人:山西大学
类型:发明
国别省市:山西,14

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

1