社区划分方法及装置与流程

文档序号:12906759阅读:786来源:国知局
社区划分方法及装置与流程

本发明涉及计算机领域,尤其涉及一种社区划分方法及装置。



背景技术:

社团结构是社会网络具有的一个共同的性质,满足同一社团内部节点连接相对紧密、不同社团节点连接相对稀疏的特点。社团划分的本质是对社会网络进行划分使之成为一个较小的社团,社团内部的成员关系比较紧密,社团与社团之间的成员关系比较稀疏,这与聚类分析的本质很相似。

现有社团划分的研究算法凝聚算法的典型代表是newman快速算法,其思想是从空网络开始,逐步添加相似性的边,同时在计算相似性的时候通过模块度来标示社团分割的质量,具体为,去掉网络中所有的边,网络的每个结点都单独作为一个社区;网络中的每个连通部分作为一个社区,将还未加入网络的边分别重新加回网络,每次加入一条边,如果加入网络的边连接了两个不同的社区,则合并两个社区,并计算形成新社区划分的模块度增量,选择使模块度增量最大或者减小最少的两个社区进行合并。上述newman快速算法仅仅考虑复杂网络的局部属性,且只考虑节点自身的信息以及其邻居的信息,而忽略了邻居的邻域信息会对节点与邻居的连接强度产生大的影响。



技术实现要素:

本发明实施例的目的是提供一种社区划分方法及装置,能有效解决现有社区划分方法忽略邻居的邻域信息问题,实现在特定数据下大幅度提高社区划分的效率和精度。

为实现上述目的,本发明实施例提供了一种社区划分方法,包括步骤:

接收若干个待划分用户的信息,根据所述待划分用户的信息建立拓扑结构图;

计算所述拓扑结构图中各个节点的度,将所述拓扑结构图中度数最大的节点作为种子节点,获取所述种子节点的邻居节点;

根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比;

根据所述种子节点对每一所述邻居节点的投入精力占比,通过结构洞的网格约束算法获取所述种子节点对每一所述邻居节点的约束系数;

将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除。

与现有技术相比,本发明公开的社区划分方法通过基于所述待划分用户的信息建立拓扑结构图,然后将所述拓扑结构图中度数最大的节点作为种子节点,获取所述种子节点的邻居节点,根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比,再通过结构洞的网格约束算法获取所述种子节点对每一所述邻居节点的约束系数,将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除,本方案将邻居节点的邻域属性引入结构洞的网格约束系数算法中,充分考虑了邻居节点的邻域信息对种子节点与邻居节点的连接强度的影响,解决现有社区划分方法仅仅考虑自身节点和邻居节点的关系而忽略邻居节点的邻域信息问题,实现在特定数据下大幅度提高社区划分的效率和精度。

作为上述方案的改进,所述根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比具体为:

获取每一所述邻居节点的邻接度,分别计算每一所述邻居节点的邻接度占所述每一所述邻居节点的邻接度的总和的比例,从而获得所述种子节点对每一所述邻居节点的投入精力占比;其中,任一节点的邻接度为所述节点的邻居节点的度数总和。利用邻居节点的邻接度计算所述种子节点对每一所述邻居节点的投入精力占比,当存在任一邻居节点的邻接度较大时,所述种子节点向该邻居节点投入更多精力,从而有利于稳定社团的结构。

作为上述方案的改进,所述根据所述种子节点对每一所述邻居节点的投入精力占比,通过结构洞的网格约束算法获取所述种子节点对每一所述邻居节点的约束系数具体为:

通过以下公式获取所述种子节点对每一所述邻居节点的约束系数:

其中,cij为所述种子节点i对任一所述邻居节点j的约束系数,pij所述种子节点i对所述邻居节点j的投入精力占比,q为所述种子节点i和邻居节点j的共同邻居节点,piq和pqj分别是所述种子节点i对节点q的投入精力占比和节点q对所述邻居节点j的投入精力占比。上述式子是结构洞的研究机制中用于表征个体网络的闭合性,同时也表示所述种子节点和每一所述邻居节点的紧密程度。

作为上述方案的改进,所述预设的关系阈值为最优关系阈值,所述最优关系阈值通过以下步骤获得:

接收若干个训练数据,以预设的步长设立若干个关系阈值,基于每一所述关系阈值采用上述任一项所述的社区划分方法对所述训练数据进行社区划分;

计算每一所述阈值下社区划分的模块度值,通过优化所述模块度值从而获取所述最优关系阈值。其中,所述模块度值是目前最常用的衡量社区结构稳定性的方法。

作为上述方案的改进,所述预设的关系阈值为最优关系阈值,所述最优关系阈值通过以下步骤获得:

接收若干个已标记社区划分的训练数据,以预设的步长设立若干个关系阈值,基于每一所述关系阈值采用上述任一项所述的社区划分方法对所述训练数据进行社区划分;

计算每一所述阈值下社区划分的标准互信息,通过优化所述标准互信息从而获取所述最优关系阈值;其中,所述标准互信息根据所述训练数据的已标记社区划分和采用上述任一项所述的社区划分方法的社区划分获得。

作为上述方案的改进,所述预设的关系阈值为最优关系阈值,所述最优关系阈值通过以下步骤获得:

接收若干个已标记社区划分的训练数据,以预设的步长设立若干个关系阈值,基于每一所述阈值采用上述任一项所述的社区划分方法对所述训练数据进行社区划分;

计算每一所述阈值下社区划分的社区划分精度,通过优化所述社区划分精度从而获取所述最优关系阈值;其中,所述社区划分精度根据所述训练数据的已标记社区划分和采用上述任一项所述的社区划分方法的社区划分获得。

作为上述方案的改进,通过以下公式计算每一所述阈值下社区划分的模块度值:

其中,q为模块度值,ei是所划分的社团i内部的边数,m是所述拓扑结构图的总边数,为所划分的社团i内部所有节点的度数之和。

作为上述方案的改进,通过以下公式计算每一所述阈值下社区划分的模块度值:

其中,q为模块度值,aij为节点i和节点j之间边的个数,ki和kj分别是节点i和节点j的度,m是所述拓扑结构图的总边数,δ(i,j)表示当社区划分结果中节点i和节点j属于同一社区时,δ(i,j)=1,当当社区划分结果中节点i和节点j不属于同一社区时,δ(i,j)=0。

作为上述方案的改进,所述待划分用户为移动运营商的用户。其中,移动运营商的用户信息具有动态性和多样化的特点,利用本方案进行社区划分有利于运营商进行市场推广。

本发明实施例还提供了一种社区划分装置,包括:

拓扑结构图建立模块,用于接收若干个待划分用户的信息,根据所述待划分用户的信息建立拓扑结构图;

种子节点获取模块,用于计算所述拓扑结构图中各个节点的度,将所述拓扑结构图中度数最大的节点作为种子节点,获取所述种子节点的邻居节点;

投入精力比计算模块,用于根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比;

约束系数获取模块,用于根据所述种子节点对每一所述邻居节点的投入精力占比,通过结构洞的结构约束算法获取所述种子节点对每一所述邻居节点的约束系数;

社区划分模块,用于将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除。

与现有技术相比,本发明公开的社区划分装置通过基于所述待划分用户的信息建立拓扑结构图,然后将所述拓扑结构图中度数最大的节点作为种子节点,获取所述种子节点的邻居节点,根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比,再通过结构洞的网格约束算法获取所述种子节点对每一所述邻居节点的约束系数,将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除,本方案将邻居节点的邻域属性引入结构洞的网格约束系数算法中,充分考虑了邻居节点的邻域信息对种子节点与邻居节点的连接强度的影响,解决现有社区划分方法仅仅考虑自身节点和邻居节点的关系而忽略邻居节点的邻域信息问题,实现在特定数据下大幅度提高社区划分的效率和精度。

附图说明

图1是本发明实施例1中一种社区划分方法的流程示意图。

图2是拓扑结构图中结构洞的示意图。

图3是本发明实施例2中一种社区划分方法的流程示意图。

图4是本发明实施例采用的用于说明的拓扑结构图。

图5是本发明实施例3中一种社区划分方法的流程示意图。

图6是本发明实施例中一种获取最优关系阈值的流程示意图。

图7是本发明实施例中另一种获取最优关系阈值的流程示意图。

图8是本发明实施例中另一种获取最优关系阈值的流程示意图。

图9是本发明实施例采用三个网络数据集获取的关系阈值和模块度值的关系示意图。

图10是本发明实施例4中一种社区划分装置的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参见图1,是本发明实施例1提供的一种社区划分方法的流程示意图,包括步骤:

s1、接收若干个待划分用户的信息,根据所述待划分用户的信息建立拓扑结构图;

优选地,所述待划分用户为移动运营商的用户。移动运营商的信息具有容易获取、动态性和多样化的特点,对其进行社区的准确划分,有利于运营商进行市场推广。

s2、计算所述拓扑结构图中各个节点的度,将所述拓扑结构图中度数最大的节点作为种子节点,获取所述种子节点的邻居节点;

其中,本方案中拓扑结构图将每一用户看作一个节点,当用户之间存在直接联系时,为对应的点增加一条边,所述节点的度为该节点存在的邻居节点的个数。因为本方案采用结构洞的分析方式进行社区划分,因此,只有选取度数最高的点作为种子节点才能为社区划分带来实质的价值;

s3、根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比;

在结构洞的优化分析中,应使种子节点的时间和精力更多地投入到更有价值的邻居节点上,因此,本方案通过在计算种子节点对每一邻居节点的投入精力占比中的过程中,充分考虑邻居节点的邻域信息,可以实现种子节点对投入精力更准确的分配,更能维持社区结构的稳定性。

s4、根据所述种子节点对每一所述邻居节点的投入精力占比,通过结构洞的网格约束算法获取所述种子节点对每一所述邻居节点的约束系数;

其中,在结构洞的网格约束算法中,所述种子节点对每一所述邻居节点的约束系数代表了种子节点与所述邻居节点的紧密程度,这可以成为社区划分的一个重要标准。

s5、将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除。

在该步骤中,应该说明的是,当判断邻居节点与所述种子节点的关系较为紧密时,将所述邻居节点归为以所述种子节点为中心的同一社区,并将其从原始的拓扑结构图中删除,再继续寻找新的种子节点,以新的种子节点为中心划分新的社区。

应该说明的是,在绝大多数研究中,社区的定义是从功能角度上给出的,研究者们利用网络节点的拓扑结构试图找出社区的功能模块,并从拓扑结构给出了社区的定义,即:社区是一组内部连接紧密与组外其他结点连接稀疏的结点的集合。但是高度重叠的社团违背了上述的定义,因此,ahn于2010年将社团定义为一组紧密相关的链接,让结点继承与之相连接的社区的隶属关系,从划分链接的角度来解释复杂网络的重叠结构。本方案是在参考ahn划分社团思路的基础上,通过评价节点间的关系强度进行社区划分,在提升同类别数据社区划分效率的同时,也符合复杂网络重叠社区划分的原则。

另外,为了方便理解,下面先对结构洞的概念进行简单说明。结构洞是学者burt在研究社会网络的竞争关系时提出的经典社会学理论,结构洞是指非冗余联系人之间存在的缺口,一旦结构洞存在,那么结构洞两边的联系人可以带来累加而非重叠的网络收益。如图2所示,节点a和节点b之间、节点a和节点c以及节点b和节点c之间存在结构洞,而作为充当联系角色的中间人“e”获得了更多的网络收益,因为节点a和节点b之间、节点a和节点c以及节点b和节点c之间的信息传播必须由中间人“e”来完成,因此在该网络中,中间人“e”的重要性大于其他节点。在评价一个网络结构的效率时,当两个网络结构的规模一样时,那么存在更多非冗余联系人的网络将提供更多的利益。在结构洞的理论分析中,存在多种对网络结构的衡量指标。例如,通过计算网络中一个节点的有效规模时,有效规模越大,说明网络的重复性越小,存在结构洞的可能性越大。还有测量结构洞时一个节点的效率,个体效率越高,说明它在网络中行动效率越高效,对其他个体的影响程度越大。本方案采用的衡量结构洞时一个节点对其他节点的约束系数,当约束系数越高时,网络闭合性越好,结构洞越少。

上述方案具体实施时,先接收待划分用户的信息,根据待划分用户的信息建立拓扑结构图,再将拓扑结构图中度数最大的节点作为种子节点,根据种子节点每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比,再通过结构洞的网格约束算法获取所述种子节点对每一所述邻居节点的约束系数,将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除,不同于现有社区划分技术仅仅考虑种子节点和邻居节点的关系,本方案将邻居节点的邻域属性引入结构洞的网格约束系数算法中,深层次考虑了邻居节点的邻域信息对种子节点与邻居节点的连接强度的影响,能更准确描述种子节点和邻居节点的关系,实现在特定数据下大幅度提高社区划分的效率和精度。

在一优选实施例中,如图3所示,该实施例在实施例1的基础上,步骤s3具体为:

s31、获取每一所述邻居节点的邻接度,分别计算每一所述邻居节点的邻接度占所述每一所述邻居节点的邻接度的总和的比例,从而获得所述种子节点对每一所述邻居节点的投入精力占比;其中,任一节点的邻接度为所述节点的邻居节点的度数总和。

在该步骤中,引入了邻接度的概念,为了便于理解,以下用公式对邻接度和投入精力占比进行具体的说明。假设节点i的度表示为k(i),那么节点i的邻接度定义为:

其中,q(i)为节点i的邻接度,q∈γ(i)表示节点i的任一邻居节点,k(q)表示邻居节点q的度;

而节点i维持与节点j邻居关系所投入的精力占比为:

其中,pij为节点i对邻居节点j的投入精力占比,q(j)是节点j的邻接度,q(q)是节点i的邻居节点的邻接度。

采用上述方式将邻居节点的邻域信息考虑进种子节点对邻居节点的投入精力占比中,能更准确描述种子节点和邻居节点的关系,从而维持稳定的社区结构。为了便于说明,以图4所示的拓扑结构图对本方案采用的方法进行进一步地解释。由图4可知,i作为网络中度数最多的节点,以i为种子节点,计算它与各邻居节点的关系,以便划分以i为中心的社团。节点i的邻居数量为г(i)={a,b,c,d,e,f,g,h},pij表示节点i为维持节点j的人邻居关系所投入的精力占总精力的占比,piq和pqj分别是指节点i和节点j与共同邻居q维持关系投入的精力占总精力的占比。现有的计算投入占比并没有考虑邻居节点的邻域属性,具体公式为:

其中,zij为节点i和节点j之间的边。上述公式仅衡量了节点和最邻近节点的关系,并未考虑邻居节点和其他节点相连的拓扑结构会对社区结构的影响,当存在一些重要的桥接节点,种子节点需向桥接节点投入更多的精力,才能维持社团的稳定性。比如节点g相对与节点f为更重要桥接节点,但是按照现有的投入精力占比的计算公式,种子节点对邻居节点g和f的投入精力占比均为pif=pig=1/8,因此现有的不考虑邻居节点的邻域属性计算投入精力占比的方法并不能反映真实的节点之间关系。本方案通过引入邻接度的概念计算入精力占比更能准确描述节点与节点之间的关系,计算得到的种子节点对邻居节点f和g的投入精力占比分别为:

其中,

通过上述结果可以看出,种子节点i向对邻居节点g投入的精力比对邻居节点f多,更有利于维持社区结构的稳定性。

上述步骤描述种子节点对邻居节点的投入精力占比的具体公式后,需将该投入精力占比进一步应用于结构洞研究理论的约束关系中,以进一步描述种子节点和邻居节点的亲密程度,如图5所示,在上述实施例的基础上,步骤s4具体为:

s41、通过以下公式获取所述种子节点对每一所述邻居节点的约束系数:

其中,cij为所述种子节点i对任一所述邻居节点j的约束系数,pij所述种子节点i对所述邻居节点j的投入精力占比,q为所述种子节点i和邻居节点j的共同邻居节点,piq和pqj分别是所述种子节点i对节点q的投入精力占比和节点q对所述邻居节点j的投入精力占比。

上述公式在结构洞的分析研究中用来表征节点与节点之间相连受到的约束程度,当约束程度越低时,表明网络越开放,结构洞的数量也越多,当约束程度越高,表明网络闭合性越高,结构洞的数量也越少。上述步骤应用投入精力占比和结构洞的分析,可以更为准确地描述节点与节点之间的关系。同样,也图4所示的拓扑结构图为例进行进一步地说明,具体为:

cif=(pif+pihphf)2=(12/95+14/95*12/44)2

cig=(pig+pihphg)2=(15/95+14/95*15/44)2

由上述公式可知,相对于邻居节点f,种子节点i和邻居节点g的紧密程度更深。

在上述实施例中,步骤s5中的预设的关系阈值中,通过特定的训练数据对所述关系阈值进行训练,可以获得最优关系阈值从而对待划分用户进行准确的社区划分,其中,根据不同的社区结构评价机制,训练方式有所不同。常用的社区划分评价标准主要有三种,分别是标准互信息、模块度、社团划分精度。

标准互信息是需要事先知道真实社团划分的结构,当社团发现算法得到的社团划分结构与真实社团划分结构越接近时,他们之间的标准互信息越接近1,该值的取值范围在0-1之间。

模块度是当前社团发现领域最认可的评价社团结构好坏的指标,它表示社团划分后社团内部的紧凑程度,当社团越紧凑时,模块度的取值越接近1。当然,模块度的取值与社团划分的精度没有必然的关系。

社团划分精度与标准互信息类似,需要事先知道真实社团划分的结构。它等于正确划分准确的节点个数与节点总数的占比。

当采用模块度值对关系阈值进行训练时,如图6所示,获取最优关系阈值包括步骤:

s100、接收若干个已标记社区划分的训练数据,以预设的步长设立若干个关系阈值,基于每一所述关系阈值采用上述实施例所述的社区划分方法对所述训练数据进行社区划分;

s101、计算每一所述阈值下社区划分的标准互信息,通过优化所述标准互信息从而获取所述最优关系阈值;其中,所述标准互信息根据所述训练数据的已标记社区划分和采用上述实施例所述的社区划分方法的社区划分获得。

其中,计算模块度值最常用的公式为:

其中,q为模块度值,ei是所划分的社团i内部的边数,m是所述拓扑结构图的总边数,为所划分的社团i内部所有节点的度数之和。

另一种计算模块度值的公式为:

其中,q为模块度值,aij为节点i和节点j之间边的个数,ki和kj分别是节点i和节点j的度,m是所述拓扑结构图的总边数,δ(i,j)表示当社区划分结果中节点i和节点j属于同一社区时,δ(i,j)=1,当当社区划分结果中节点i和节点j不属于同一社区时,δ(i,j)=0。表示在随机放置边的情况下,社区内部边数的期望值的2倍。在这种方式中,模块度可以看做是在社区内部边的比例,键区边随机放置时社区内部期望边数的比例。

实际上,上述两种计算模块度值的方式是从不同的角度定义了模块度,但是其实两者是等同的。

当采用标准互信息对关系阈值进行训练时,如图7所示,获取最优关系阈值包括步骤:

s100’、接收若干个已标记社区划分的训练数据,以预设的步长设立若干个关系阈值,基于每一所述关系阈值采用上述实施例所述的社区划分方法对所述训练数据进行社区划分;

s101’、计算每一所述阈值下社区划分的标准互信息,通过优化所述标准互信息从而获取所述最优关系阈值;其中,所述标准互信息根据所述训练数据的已标记社区划分和采用上述实施例所述的社区划分方法的社区划分获得。

当采用社区划分精度对关系阈值进行训练时,如图8所示,所述最优关系阈值通过以下步骤获得:

s100”、接收若干个已标记社区划分的训练数据,以预设的步长设立若干个关系阈值,基于每一所述阈值采用上述实施例所述的社区划分方法对所述训练数据进行社区划分;

s101”、计算每一所述阈值下社区划分的社区划分精度,通过优化所述社区划分精度从而获取所述最优关系阈值;其中,所述社区划分精度根据所述训练数据的已标记社区划分和采用上述实施例所述的社区划分方法的社区划分获得。

下面以采集到的某地市3个村960名移动用户的通话数据对关系阈值进行训练,按照用户是否有通话关系分别建立三个无向通信网络,如果用户i和j之间有联系,那么i和j之间有边相连,否则,无边相连。其中,关系阈值的设定由模块度值决定,也就是每一个阈值都需要计算一个对应的模块度值,然后选取最大的模块度值对应的关系值作为最优关系阈值。根据约束系数的定义可知,关系阈值取值在0-1之间,因此,本方案在设定关系阈值的过程中从0到1,步长为0.005,逐渐增大,计算201个关系阈值对应的模块度,根据模块度值的变化来确定最优关系阈值的取值范围。如图9所示,分别为三个网络数据集中,关系阈值与社团划分模块度值对应关系,从图9可知,第一个数据集的最优关系阈值为0.06,第二个数据集的最优关系为阈值为0.065,第三个数据集的最优关系为0.055。对图形进一步分析可知,阈值是先单调递增后单调递减,最优关系阈值出现在拐点位置,因此获得的最优关系阈值在0.055~0.07之间。

本发明实施例还对应提供了一种社区划分装置,如图10所示,包括:

拓扑结构图建立模块101,用于接收若干个待划分用户的信息,根据所述待划分用户的信息建立拓扑结构图;

种子节点获取模块102,用于计算所述拓扑结构图中各个节点的度,将所述拓扑结构图中度数最大的节点作为种子节点,获取所述种子节点的邻居节点;

投入精力比计算模块103,用于根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比;

约束系数获取模块104,用于根据所述种子节点对每一所述邻居节点的投入精力占比,通过结构洞的结构约束算法获取所述种子节点对每一所述邻居节点的约束系数;

社区划分模块105,用于将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除。

优选地,所述投入精力比计算模块103具体用于,获取每一所述邻居节点的邻接度,分别计算每一所述邻居节点的邻接度占所述每一所述邻居节点的邻接度的总和的比例,从而获得所述种子节点对每一所述邻居节点的投入精力占比;其中,任一节点的邻接度为所述节点的邻居节点的度数总和。

优选地,约束系数获取模块104通过以下公式获取所述种子节点对每一所述邻居节点的约束系数:

其中,cij为所述种子节点i对任一所述邻居节点j的约束系数,pij所述种子节点i对所述邻居节点j的投入精力占比,q为所述种子节点i和邻居节点j的共同邻居节点,piq和pqj分别是所述种子节点i对节点q的投入精力占比和节点q对所述邻居节点j的投入精力占比。

当所述关系阈值为最优关系阈值时,最优关系阈值通过以下三种方式中的一种获得,方式一:

接收若干个训练数据,以预设的步长设立若干个关系阈值,基于每一所述关系阈值采用以上所述的社区划分方法对所述训练数据进行社区划分;

计算每一所述阈值下社区划分的模块度值,通过优化所述模块度值从而获取所述最优关系阈值。

方式二:

接收若干个已标记社区划分的训练数据,以预设的步长设立若干个关系阈值,基于每一所述关系阈值采用以上所述的社区划分方法对所述训练数据进行社区划分;

计算每一所述阈值下社区划分的标准互信息,通过优化所述标准互信息从而获取所述最优关系阈值;其中,所述标准互信息根据所述训练数据的已标记社区划分和采用以上所述的社区划分方法的社区划分获得。

方式三:

接收若干个已标记社区划分的训练数据,以预设的步长设立若干个关系阈值,基于每一所述阈值采用以上所述的社区划分方法对所述训练数据进行社区划分;

计算每一所述阈值下社区划分的社区划分精度,通过优化所述社区划分精度从而获取所述最优关系阈值;其中,所述社区划分精度根据所述训练数据的已标记社区划分和采用以上所述的社区划分方法的社区划分获得。

在其中一个优选实施例中,通过以下公式计算每一所述阈值下社区划分的模块度值:

其中,q为模块度值,ei是所划分的社团i内部的边数,m是所述拓扑结构图的总边数,为所划分的社团i内部所有节点的度数之和。

在另一优选实施例中,通过以下公式计算每一所述阈值下社区划分的模块度值:

其中,q为模块度值,aij为节点i和节点j之间边的个数,ki和kj分别是节点i和节点j的度,m是所述拓扑结构图的总边数,δ(i,j)表示当社区划分结果中节点i和节点j属于同一社区时,δ(i,j)=1,当当社区划分结果中节点i和节点j不属于同一社区时,δ(i,j)=0。

本发明实施例提供的社区划分装置可用于对移动运营商的用户的社区划分,移动运营商的信息具有容易获取、动态性和多样化的特点,对其进行社区的准确划分,有利于运营商进行市场推广。

上述实施例提供的社区划分装置的具体实施过程可参考上述对社区划分方法的描述,在此不再赘述。

综上,本发明实施例公开了一种社区划分方法及装置,通过基于所述待划分用户的信息建立拓扑结构图,然后将所述拓扑结构图中度数最大的节点作为种子节点,获取所述种子节点的邻居节点,根据每一所述邻居节点的邻域属性,计算所述种子节点对每一所述邻居节点的投入精力占比,再通过结构洞的网格约束算法获取所述种子节点对每一所述邻居节点的约束系数,将所述约束系数大于预设的关系阈值的邻居节点和所述种子节点划分为同一社团,并将所述约束系数大于预设的阈值的邻居节点和所述种子节点从所述拓扑结构图中删除,本方案将邻居节点的邻域属性引入结构洞的网格约束系数算法中,充分考虑了邻居节点的邻域信息对种子节点与邻居节点的连接强度的影响,解决现有社区划分方法仅仅考虑自身节点和邻居节点的关系而忽略邻居节点的邻域信息问题,实现在特定数据下大幅度提高社区划分的效率和精度。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1