一种用户社团划分方法及装置与流程

文档序号:19218003发布日期:2019-11-26 01:52阅读:222来源:国知局
一种用户社团划分方法及装置与流程

本申请涉及数据处理领域,尤其涉及一种用户社团划分方法及装置。



背景技术:

目前运营商在进行用户分析的时候,往往只关心某个特定社团的用户。比如某种电子产品的个性化营销,运营商希望帮厂商找到与产品特征最相符的潜在用户;传统技术中采用用户节点的节点度来评价节点的重要性,通过衡量用户节点的节点度多少确定核心用户节点。该种方法仅需获取某些核心的用户节点,然后从该节点出发沿边扩展子图,不断扩大团体便可以得到需要的团体。但是该方法有以下两点缺陷,一是仅从用户与邻居的拓扑结构对用户节点的重要性进行判断,以确认其是否为核心用户节点是不够准确的;二是排除了中间用户节点这种特殊节点,中间用户节点在社团划分中虽然不满足社团划分中针对核心用户节点的划分方法,但是中间用户节点却是两个社团的天然界限,中间用户节点的确定有助于社团边界的确定。因此,现有技术并不能准确的对用户社团进行划分。

如何真实准确的确定用户社团的核心用户节点及中间用户节点,进而准确的对用户社团进行划分,是目前用户社团划分方法亟需解决的问题。



技术实现要素:

本申请提供一种用户社团划分方法及装置,能够提高用户社团划分的准确性。

为达到上述目的,本申请采用如下技术方案:

第一方面,本申请提供一种用户社团划分方法,该方法包括:

获取待划分用户之间的通话特征;通话特征包括通话次数、每次通话时长及通话间隔,通话间隔为每次通话起始时刻与统计周期起始时刻的间隔;

根据待划分用户之间的通话特征构建拓扑结构;拓扑结构包括至少一个节点,节点与待划分用户一一对应;任两个存在通话的待划分用户在拓扑结构中对应的两个节点之间相互连接;

根据拓扑结构,确定节点的节点度;

根据通话特征,依据第一公式计算拓扑结构中任意两个节点之间的链接关系;

根据任意两个节点之间的链接关系,计算任一节点对其任一邻接节点的约束;两个相互连接的节点互为邻接节点;

根据第一邻接节点对第二节点的约束,计算第一节点的邻接精力和;第一邻接节点为拓扑结构中第一节点的任一邻接节点;第二节点为拓扑结构中第一邻接节点的任一邻接节点;第一节点为拓扑结构中第三节点的邻接节点,第三节点为拓扑结构中任一节点;邻接精力和为所有第一邻接节点的资源的和,第一邻接节点的资源为第一邻接节点对第二节点的约束的和;

根据第一节点的邻接精力和计算第三节点的重要度;

若第三节点的重要度大于等于第一阈值且节点度大于等于第二阈值,则确定第三节点为核心节点;

将核心节点及核心节点的邻接节点划分为同一社团。

根据本申请第一方面提供的用户社团的划分方法,首先通过获取用户之间的通话特征来计算用户对应的节点之间的链接关系,用链接关系来反映用户节点间关系的紧密程度;然后根据链接关系及拓扑结构,计算节点的邻接节点的邻接精力和,再根据邻接节点的邻接精力和计算节点的重要度。其中,因为链接关系本身就可以反映节点间的紧密程度,根据链接关系计算的邻接精力和又反映了节点的邻接节点的影响力程度,最后根据节点的邻接节点的邻接精力和得出节点的重要度则必然要比现有技术中根据节点间是否有连接来反映节点间是否有联系更能体现真实的社交情况。由于节点的邻接节点的精力是不同的,邻接节点的精力大小会影响待计算节点的重要度,因此本申请通过计算节点的邻接节点的邻接精力和来计算节点的重要度,更加贴近实际情况,而后根据重要度来确定核心节点,并根据核心节点对用户社团的划分结果也就更加准确。

第二方面,本申请提供一种用户社团划分装置,该装置包括:获取模块、构建模块、确定模块、计算模块、判断模块和执行模块。

其中,获取模块,用于获取待划分用户之间的通话特征;通话特征包括通话次数、每次通话时长及通话间隔,通话间隔为每次通话起始时刻与统计周期起始时刻的间隔;

构建模块,用于根据获取模块获取的待划分用户之间的通话特征构建拓扑结构;拓扑结构包括至少一个节点,节点与待划分用户一一对应;任两个存在通话的待划分用户在拓扑结构中对应的两个节点之间相互连接;

确定模块,用于根据构建模块构建的拓扑结构,确定节点的节点度;

计算模块,用于根据获取模块获取的通话特征,依据第一公式计算拓扑结构中任意两个节点之间的链接关系;

计算模块,还用于根据任意两个节点之间的链接关系,计算任一节点对其任一邻接节点的约束;两个相互连接的节点互为邻接节点;

计算模块,还用于根据第一邻接节点对第二节点的约束,计算第一节点的邻接精力和;第一邻接节点为拓扑结构中第一节点的任一邻接节点;第二节点为拓扑结构中第一邻接节点的任一邻接节点;第一节点为拓扑结构中第三节点的邻接节点,第三节点为拓扑结构中任一节点;邻接精力和为所有第一邻接节点的资源的和,第一邻接节点的资源为第一邻接节点对第二节点的约束的和;

计算模块,还用于根据第一节点的邻接精力和计算第三节点的重要度;

判断模块,用于在计算模块计算的第三节点的重要度大于等于第一阈值且确定模块确定的节点的节点度大于等于第二阈值时,确定第三节点为核心节点;

执行模块,用于将判断模块确定的核心节点及构建模块构建的拓扑结构中核心节点的邻接节点划分为同一社团。

第三方面,本申请提供一种用户社团划分装置,该装置包括:处理器、收发器和存储器;其中,存储器用于存储一个或多个程序,该一个或多个程序包括计算机执行指令,当该装置运行时,处理器执行该存储器存储的该计算机执行指令,以使该用户社团划分装置执行第一方面提供的用户社团划分方法。

第四方面,本申请提供一种计算机存储介质,计算机存储介质包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行第一方面提供的用户社团划分方法。

本申请提供一种用户社团划分方法和装置,该方法包括:获取待划分用户之间的通话特征;根据待划分用户之间的通话特征构建拓扑结构;根据拓扑结构,确定节点的节点度;根据通话特征,依据第一公式计算拓扑结构中任意两个节点之间的链接关系;根据任意两个节点之间的链接关系,计算任一节点对其任一邻接节点的约束;根据第一邻接节点对第二节点的约束,计算第一节点的邻接精力和;根据第一节点的邻接精力和计算第三节点的重要度;若第三节点的重要度大于等于第一阈值且节点度大于等于第二阈值,则确定第三节点为核心节点;将核心节点及核心节点的邻接节点划分为同一社团。本申请实施例提供的技术方案,首先通过获取用户之间的通话特征来计算用户对应的节点间的链接关系,用链接关系来反映用户节点间关系的紧密程度;然后根据链接关系及拓扑结构,计算节点的邻接节点的邻接精力和,再根据邻接节点的邻接精力和计算节点的重要度。其中,因为链接关系本身就可以反映节点间的紧密程度,根据链接关系计算的邻接精力和又反映了节点的邻接节点的影响力程度,最后根据节点的邻接节点的邻接精力和得出节点的重要度则必然要比现有技术中根据节点间是否有连接来反映节点间是否有联系更能体现真实的社交情况。由于节点的邻接节点的精力是不同的,邻接节点的精力大小会影响待计算节点的重要度,因此本申请通过计算节点的邻接节点的邻接精力和来计算节点的重要度,更加贴近实际情况,而后根据重要度来确定核心节点,并根据核心节点对用户社团的划分结果也就更加准确。综上,本申请能更准确真实的计算节点的重要度,根据节点的重要度来确定一个用户社团的核心节点,从而对节点进行分类,进而根据核心节点实现社团的准确划分,所以相比于现有技术,能够提高用户社团划分的准确性。

附图说明

图1为本申请实施例提供的拓扑结构示意图;

图2为本申请实施例提供的用户社团划分方法示意图一;

图3为本申请实施例提供的用户社团划分方法示意图二;

图4为本申请实施例提供的用户社团划分装置的结构示意图一;

图5为本申请实施例提供的用户社团划分装置的结构示意图二。

具体实施方式

下面结合附图对本申请实施例提供的用户社团划分方法、装置及系统进行详细地描述。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。

本申请的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。

此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、系统、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括其他没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。

需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

在本申请的描述中,除非另有说明,“多个”的含义是指两个或两个以上。

目前现有技术中,在计算节点的重要度时,传统的方法仅考虑节点的邻接节点的数量,忽略了邻居间的拓扑关系,因此不能在计算中反映邻居节点间的相互作用;在真实的社交网络中,如图1所示,如果节点i的邻接节点g与节点j相连,节点j拥有很多邻接节点。此种情况下,在节点i的邻接节点中,节点g就具有更高的价值。那么节点i必然会投入更多精力去维系与节点g的关系,而不是像现有技术中那样,认为节点i对其所有邻接节点都分配相同的精力去维护关系。现有技术中对节点的重要度的确定与实际情况存在误差,进而会造成社团划分的不准确。

因此,为了真实准确的筛选出用户网络中最具影响力的节点,即核心节点,本申请提出了一种基于节点及其邻域结构洞的节点重要度确定方法,该方法综合考虑了节点的邻居数量及其与邻居间的拓扑结构,同时根据用户节点间的通话次数、通话时长及通话间隔等属性来衡量节点之间的关联程度。

下面以图1所示的拓扑结构介绍本申请拓扑结构中节点的命名方法,如图1所示,以计算节点i的重要度为例,定义节点i为第三节点;节点i的邻接节点定义为第一节点,如节点g;第一节点的邻接节点定义为第一邻接节点,如节点j;第一邻接节点的邻接节点定义为第二节点,如节点m。由于节点的名称是根据节点间的邻接关系而定义的,因此,如图1中的节点h,由于其与第三节点相连,其可以称为第一节点,同时,由于其又与第一节点g相连,因此其也可以称为第一邻接节点;再如,由于节点i与第一节点g相连,则节点i既是第三节点也是第一邻接节点,进而节点c既可以称为第一节点,也可以称为第二节点。

基于上述技术问题和构思,本申请实施例提供一种用户社团划分方法,如图2所示,该方法包括:

s201、获取待划分用户之间的通话特征。

其中,通话特征包括通话次数、每次通话时长及通话间隔,通话间隔为每次通话起始时刻与统计周期起始时刻的间隔。

通话特征可以从运营商的后台数据库中获取。

s202、根据待划分用户之间的通话特征构建拓扑结构。

如图1所述,拓扑结构包括至少一个节点,每个节点代表一个用户,节点与待划分用户一一对应;任意两个存在通话的待划分用户在拓扑结构中对应的两个节点之间相互连接。

s203、根据拓扑结构,确定节点的节点度。

节点度即为拓扑结构中节点所连接的边的条数,如图1中的节点j连接有4条边,则节点j的节点度为4。

s204、根据通话特征,依据第一公式计算拓扑结构中任意两个节点之间的链接关系。

示例性的,第一公式为:

其中,i为拓扑结构中任一节点,j为拓扑结构中除i以外的任一节点,zij为i与j间的链接关系,γ表示时间衰减系数,t为当前统计周期的起始时刻,tk是当前统计周期内第k次通话的起始通话时刻,lk(i,j)为i和j第k次通话的通话时长。

在现有技术中,zij往往以i与j之间有没有连接而确定,若i与j之间有连接,则zij等于1,若i与j之间没有连接,则zij等于0。相比于现有技术,本申请中的zij计算方法,若节点间没有通话,则没有链接关系,若有通话,则根据通话特征来确定链接关系的大小,因而计算出的zij更能反映真实情况。

s205、根据任意两个节点之间的链接关系,计算任一节点对其任一邻接节点的约束。

具体的,两个相互连接的节点互为邻接节点。

s206、根据第一邻接节点对第二节点的约束,计算第一节点的邻接精力和。

其中,第一邻接节点为拓扑结构中第一节点的任一邻接节点;第二节点为拓扑结构中第一邻接节点的任一邻接节点;第一节点为拓扑结构中第三节点的邻接节点,第三节点为拓扑结构中任一节点;邻接精力和为所有第一邻接节点的资源的和,第一邻接节点的资源为第一邻接节点对第二节点的约束的和。

s207、根据第一节点的邻接精力和计算第三节点的重要度。

根据第三节点的邻接节点,即第一节点,来计算第三节点的重要度。在实际中,第三节点的精力是要完全分配给其邻接节点的,即可以用第三节点的邻接节点确定第三节点的总精力。因此,在本申请中,根据邻接节点来计算第三节点的总的精力大小。但只有从第三节点向外分配精力从而计算第三节点的总精力时,使用第三节点的“总精力”这一描述才合适;由于本申请是根据第三节点的邻接节点来反推确定第三节点的精力总和,因此本申请采用“重要度”来作为衡量第三节点的总精力的描述。

s208、若第三节点的重要度大于等于第一阈值且节点度大于等于第二阈值,则确定第三节点为核心节点。

s209、将核心节点及核心节点的邻接节点划分为同一社团。

当第三节点的重要度大于第一阈值,并且节点度大于等于第二阈值时,才确定第三节点为核心节点。重要度大,说明第三节点的总精力大,对后期推广相关产品时具有很高的价值;节点度大,节点的邻接节点多,说明第三节点的影响力大。由此可知,在实际中,当需要针对社团做推广时,只需将信息投放给核心节点即可,核心节点会通过拓扑结构将推广信息传播至其邻接节点。

上述实施例提供的用户社团的划分方法,首先通过获取用户之间的通话特征来计算用户对应的节点间的链接关系,用链接关系来反映用户节点间关系的紧密程度;然后根据链接关系及拓扑结构,计算节点的邻接节点的邻接精力和,再根据邻接节点的邻接精力和计算节点的重要度。其中,因为链接关系本身就可以反映节点间的紧密程度,根据链接关系计算的邻接精力和又反映了节点的邻接节点的影响力程度,最后根据节点的邻接节点的邻接精力和得出节点的重要度则必然要比现有技术中根据节点间是否有连接来反映节点间是否有联系更能体现真实的社交情况。由于节点的邻接节点的精力是不同的,邻接节点的精力大小会影响待计算节点的重要度,因此本申请通过计算节点的邻接节点的邻接精力和来计算节点的重要度,更加贴近实际情况,而后根据重要度来确定核心节点,并根据核心节点对用户社团的划分结果也就更加准确。

为了得到更好的用户社团划分效果,参照图3所示,本申请实施例还提供了另一种用户社团划分方法作为对上述实施例提供的用户社团划分方法的补充说明,该方法包括:

s301、获取待划分用户之间的通话特征。

s302、根据待划分用户之间的通话特征构建拓扑结构。

s303、根据拓扑结构,确定节点的节点度。

s304、将节点度小于第三阈值的节点从拓扑结构中删除。

在实际的拓扑结构中,有很多节点度很小的点,这类节点往往对社团的依附性不强,也没有多少邻接节点,在做推广时,其推广信息转化率也不高,属于没有太大价值的点。因此可以人为预设一个阈值,在构建拓扑结构之后,将节点度达不到预设阈值的节点从拓扑结构中删除,以减少计算复杂度,节省后期信息推广的成本。

s305、根据通话特征,依据第一公式计算拓扑结构中任意两个节点之间的链接关系。

s306、根据任意两个节点之间的链接关系,依据第二公式计算第一占比。

其中,第一占比为任一节点与其任一邻接节点之间的链接关系占该任一所述节点与其所有邻接节点之间的链接关系的和的比值。

示例性的,第二公式为:

其中,i为任一节点,j为i的任一邻接节点,pij为第一占比,zij为i与j之间的链接关系,γ(i)为i的邻接节点的集合,v为所述γ(i)中任一元素。

s307、根据第一占比,依据第三公式,计算任一节点对其任一邻接节点的约束。

示例性的,第三公式为:

其中,cij为i对j的约束,x为i和j共同的邻接节点。

步骤s306至s307是图2中步骤s205的一种可能的实现方式。

s308、根据第一邻接节点对第二节点的约束,依据第四公式计算第一邻接节点的资源。

示例性的,第四公式为:

k(j)=cjk+cjl+...+cjm;

其中,j为第一邻接节点,k(j)为j的资源,k、l和m为不同的第二节点,cjk为j对k的约束,cjl为j对l的约束,cjm为j对m的约束。

s309、根据第一邻接节点的资源,依据第五公式计算第一节点的邻接精力和。

示例性的,第五公式为:

q(g)=k(j)+k(o)+...+k(p);

其中,g为第一节点,q(g)为g的邻接精力和,j、o和p为不同的第一邻接节点,k(j)为j的资源,k(o)为o的资源,k(p)为p的资源。

步骤s308至s309是图2中步骤s206的一种可能的实现方式。

s310、根据第一节点的邻接精力和,依据第六公式计算第二占比;第二占比为任一第一节点的邻接精力和与所有第一节点的邻接精力和的和的比值。

示例性的,第六公式为:

其中,i为任一第三节点,b为任一第一节点,hib为第二占比,q(b)为b的邻接精力和,γ(i)为i的邻接节点的集合,λ为γ(i)中任一元素。

s311、根据第二占比,依据第七公式计算第三节点对第一节点的最终约束。

示例性的,第七公式为:

其中,eib为i对b的最终约束,y为与i和b均有连接的第一节点。

s312、根据第三节点对第一节点的最终约束,依据第八公式计算第三节点的重要度。

示例性的,第八公式为:

ei=eib+eic+...+ein;

其中,b、c和n为不同的第一节点,ei为i的重要度,eib为i对b的最终约束,eic为i对c的最终约束,ein为i对n的最终约束。

步骤s310至s312是图2中步骤s207的一种可能的实现方式。

s313、若第三节点的重要度大于等于第一阈值且节点度大于等于第二阈值,则确定第三节点为核心节点。

s314、将核心节点及核心节点的邻接节点划分为同一社团。

s315、将中间节点从划分好的社团中删除。

其中,中间节点为重要度大于等于第一阈值且节点度小于第二阈值的节点。

在实际操作中,有一类节点,其重要度很大,但节点度小,原因是,该类节点连接有一个或多个重要度很大的节点,即该类节点连接有一个或多个核心节点。但是其邻接节点很少。因此,该类节点重要度虽然大,但是其并不是真正的社团的核心,其只是核心节点与核心节点间的中间节点。但是此类节点对社团划分并不是没有价值,此类节点可作为社团的边界。比如,假设有节点x既连接核心节点y又连接核心节点z,那么其就处在以节点y为核心的社团和以节点z为核心的社团的边界位置,节点x即受到核心节点y的影响,也受到核心节点z的影响。由于节点x跟两个社团都有联系,因此节点x对社团的专一度不高。由于其即受节点y的影响,也受节点z的影响,因此,无论是节点y向其推广的信息还是节点z向其推广的信息,转化率都没有只受一个核心节点影响的节点的转化率高。因此,将中间节点删除,既能保持社团的独立性,又能去除推广价值不高的节点。

s316、计算社团的划分效果值。

社团划分完成之后,需要对社团划分的效果进行评判,及判断社团划分效果是否明显。

示例性的,s316具体根据第九公式计算社团的划分效果值;

当f大于等于第四阈值时,确定社团划分成功;

第九公式为:

其中,f为划分效果值,eg表示划分后的社团内部节点之间用于连接的边的个数,e'g表示划分后的社团内的节点在社团划分之前,用于与其他节点连接的边的个数。

具体的,s316即根据划分前后社团内的节点的边的个数来判断划分的效果是否明显。当f的值大于第四阈值时,说明社团划分效果明显。在具体实施中,如果f的值不大于第四阈值即划分效果不明显时,则后续不对该社团进行产品推广等后续动作。

本申请提供的用户社团划分方法,具体包括:获取待划分用户之间的通话特征;根据待划分用户之间的通话特征构建拓扑结构;根据拓扑结构,确定节点的节点度;根据通话特征,依据第一公式计算拓扑结构中任意两个节点之间的链接关系;根据任意两个节点之间的链接关系,计算任一节点对其任一邻接节点的约束;根据第一邻接节点对第二节点的约束,计算第一节点的邻接精力和;根据第一节点的邻接精力和计算第三节点的重要度;若第三节点的重要度大于等于第一阈值且节点度大于等于第二阈值,则确定第三节点为核心节点;将核心节点及核心节点的邻接节点划分为同一社团。本申请实施例提供的技术方案,首先通过获取用户之间的通话特征来计算用户对应的节点间的链接关系,用链接关系来反映用户节点间关系的紧密程度;然后根据链接关系及拓扑结构,计算节点的邻接节点的邻接精力和,再根据邻接节点的邻接精力和计算节点的重要度。其中,因为链接关系本身就可以反映节点间的紧密程度,根据链接关系计算的邻接精力和又反映了节点的邻接节点的影响力程度,最后根据节点的邻接节点的邻接精力和得出节点的重要度则必然要比现有技术中根据节点间是否有连接来反映节点间是否有联系更能体现真实的社交情况。由于节点的邻接节点的精力是不同的,邻接节点的精力大小会影响待计算节点的重要度,因此本申请通过计算节点的邻接节点的邻接精力和来计算节点的重要度,更加贴近实际情况,而后根据重要度来确定核心节点,并根据核心节点对用户社团的划分结果也就更加准确。综上,本申请能更准确真实的计算节点的重要度,根据节点的重要度来确定一个用户社团的核心节点,从而对节点进行分类,进而根据核心节点实现社团的准确划分,所以相比于现有技术,能够提高用户社团划分的准确性。

下面以计算图1所示的拓扑结构中节点i的重要度为例,对本申请进行解释:

因为要计算节点i的重要度,所以设定节点i为第三节点,则第一节点为:a、b、c、d、e、f、g。由于g为第一节点,则j为第一邻接节点,m、l、k为第二节点。

步骤1:根据第一公式,可以计算得出:zjm、zjl、zjk、zgj、zgh、zhf、zfn、zih、zig、zif、zie、zid、zic、zib和zia;由于两个节点间链接关系是确定的,所以zjm=zmj,同理,zjm=zmj,zjl=zjl,……,zia=zai。

步骤2、因为任意两个节点之间的链接关系由步骤1已计算得出,所以根据第二公式,可以计算得出:pjm、pjl、pjk、pgh、phg、phf、pfh、pfn、pia、pai、pib、pbi、picpcipid、pdi、pie、pei、pif、pfi、pig和pgi。

步骤3、根据步骤2中计算出的第二占比,依据第三公式,可以计算得出:cjm、cjl、cjk、cgh、chg、chf、cfh、cfn、cia、cai、cib、cbi、cic、cci、cid、cdi、cie、cei、cif、cfi、cfn、cnf、cig和cgi。

步骤4、根据步骤3计算出的任一节点对其任一邻接节点的约束,依据第四公式,可以计算得出:k(j)、k(n)、k(i)、k(a)、k(b)、k(c)、k(d)、k(e)、k(f)和k(g)。

步骤5、根据步骤4中计算出的节点的资源,依据第五公式,可以计算得出:q(j)、q(n)、q(i)、q(a)、q(b)、q(c)、q(d)、q(e)、q(f)和q(g)。

步骤6、根据步骤5计算出的节点的邻接精力和,依据第六公式,可以计算得出:hjm、hjl、hjk、hgh、hhg、hhf、hfh、hfn、hia、hai、hib、hbi、hic、hci、hid、hdi、hie、hei、hif、hfi、hfn、hnf、hig和hgi。

步骤7、依据步骤6计算出的第二占比,根据第七公式,可以计算得出:eib、eig、eih、eia、eic、eid、eie和eif。

步骤8、依据步骤7计算出的最终约束,根据第八公式,可以计算得出节点i的重要度ei。

同理,根据上述八个步骤可以得到图1中任一节点的重要度。

为了更好的实施上述实施例提供的用户社团划分方法,参照图4所示,本申请实施例还提供一种用户社团划分装置400,包括:获取模块401、构建模块402、确定模块403、计算模块404、判断模块405和执行模块406;

获取模块401,用于获取待划分用户之间的通话特征;通话特征包括通话次数、每次通话时长及通话间隔,通话间隔为每次通话起始时刻与统计周期起始时刻的间隔;

构建模块402,用于根据获取模块401获取的待划分用户间的通话特征,构建拓扑结构;拓扑结构包括至少一个节点,节点与待划分用户一一对应;任两个存在通话的待划分用户在拓扑结构中对应的两个节点之间相互连接;

确定模块403,用于根据构建模块402构建的拓扑结构,确定节点的节点度;

计算模块404,用于根据获取模块401获取的通话特征,依据第一公式计算拓扑结构中任意两个节点之间的链接关系;

可选的,计算模块404还用于根据任意两个节点之间的链接关系,计算任一节点对其任一邻接节点的约束;其中,两个相互连接的节点互为邻接节点;

可选的,计算模块404还用于根据第一邻接节点对第二节点的约束,计算第一节点的邻接精力和;第一邻接节点为拓扑结构中第一节点的任一邻接节点;第二节点为拓扑结构中第一邻接节点的任一邻接节点;第一节点为拓扑结构中第三节点的邻接节点,第三节点为拓扑结构中任一节点;邻接精力和为所有第一邻接节点的资源的和,第一邻接节点的资源为第一邻接节点对第二节点的约束的和;

可选的,计算模块404还用于根据第一节点的邻接精力和计算第三节点的重要度;

判断模块405,用于在计算模块计算的第三节点的重要度大于等于第一阈值且所述确定模块确定的节点的节点度大于等于第二阈值时,确定第三节点为核心节点;

执行模块406,用于将判断模块405确定的核心节点及核心节点的邻接节点划分为同一社团;

可选的,在确定模块403确定出节点的节点度之后,执行模块406还用于:将节点度小于第三阈值的节点从拓扑结构中删除;

可选的,在执行模块406将判断模块405确定的核心节点及核心节点的邻接节点划分为同一社团之后,执行模块406还用于:

将中间节点从划分好的社团中删除;中间节点为重要度大于等于第一阈值且节点度小于第二阈值的节点。

示例性的,计算模块404具体用于:

根据任意两个节点之间的链接关系,依据第二公式计算第一占比;第一占比为任一节点与其任一邻接节点之间的链接关系占任一节点与其所有邻接节点之间的链接关系的和的比值;

根据第一占比,依据第三公式,计算任一节点对其任一邻接节点的约束。

示例性的,计算模块404具体还用于:

根据第一邻接节点对第二节点的约束,依据第四公式计算第一邻接节点的资源;

根据第一邻接节点的资源,依据第五公式计算第一节点的邻接精力和。

示例性的,计算模块404具体还用于:

根据第一节点的邻接精力和,依据第六公式计算第二占比,所述第二占比为任一第一节点的邻接精力和与所有第一节点的邻接精力和的和的比值;

根据第二占比,依据第七公式计算第三节点对第一节点的最终约束;

根据第三节点对第一节点的最终约束,依据第八公式计算第三节点的重要度。

示例性的,在所述执行模块将所述判断模块确定的所述核心节点及所述构建模块构建的所述拓扑结构中所述核心节点的邻接节点划分为同一社团之后,计算模块404具体还用于:

根据第九公式计算所述社团的划分效果值;

当所述划分效果值大于等于第四阈值时,确定所述社团划分成功。

本申请实施例提供的用户社团划分装置,因为该装置包括:获取模块、计算模块和执行模块;获取模块获取用户节点之间的通话特征供计算模块计算用户节点间的链接关系,其中,链接关系用来反映用户节点间关系的紧密程度;计算模块根据链接关系及拓扑结构,计算节点的邻接节点的邻接精力和,再根据邻接节点的邻接精力和计算节点的重要度;最后执行模块根据重要度确定核心节点后依据核心节点确定用户社团。所以本申请实施例提供的技术方案在对用户社团进行划分时,首先通过获取用户之间的通话特征来计算用户对应的节点间的链接关系,用链接关系来反映用户节点间关系的紧密程度;然后根据链接关系及拓扑结构,计算节点的邻接节点的邻接精力和,再根据邻接节点的邻接精力和计算节点的重要度。其中,因为链接关系本身就可以反映节点间的紧密程度,根据链接关系计算的邻接精力和又反映了节点的邻接节点的影响力程度,最后根据节点的邻接节点的邻接精力和得出节点的重要度则必然要比现有技术中根据节点间是否有连接来反映节点间是否有联系更能体现真实的社交情况。由于节点的邻接节点的精力是不同的,邻接节点的精力大小会影响待计算节点的重要度,因此本申请通过计算节点的邻接节点的邻接精力和来计算节点的重要度,更加贴近实际情况,而后根据重要度来确定核心节点,并根据核心节点对用户社团的划分结果也就更加准确。综上,本申请能更准确真实的计算节点的重要度,根据节点的重要度来确定一个用户社团的核心节点,从而对节点进行分类,进而根据核心节点实现社团的准确划分,所以相比于现有技术,能够提高用户社团划分的准确性。

参照图5所示,本申请实施例还提供另一种用户社团划分装置,包括存储器501、处理器502、总线503和通信接口504;存储器501用于存储计算机执行指令,处理器502与存储器501通过总线503连接;当用户社团划分装置运行时,处理器502执行存储器501存储的计算机执行指令,以使用户社团划分装置执行如上述实施例提供的用户社团划分方法。

在具体的实现中,作为一种实施例,处理器502(502-1和502-2)可以包括一个或多个cpu,例如图5中所示的cpu0和cpu1。且作为一种实施例,用户社团划分装置可以包括多个处理器502,例如图5中所示的处理器502-1和处理器502-2。这些处理器502中的每一个cpu可以是一个单核处理器(single-cpu),也可以是一个多核处理器(multi-cpu)。这里的处理器502可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

存储器501可以是只读存储器501(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器501可以是独立存在,通过总线503与处理器502相连接。存储器501也可以和处理器502集成在一起。

在具体的实现中,存储器501,用于存储本申请中的数据和执行本申请的软件程序对应的计算机执行指令。处理器502可以通过运行或执行存储在存储器501内的软件程序,以及调用存储在存储器501内的数据,用户社团划分装置的各种功能。

通信接口504,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如控制系统、无线接入网(radioaccessnetwork,ran),无线局域网(wirelesslocalareanetworks,wlan)等。通信接口504可以包括接收单元实现接收功能,以及发送单元实现发送功能。

总线503,可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互连(peripheralcomponentinterconnect,pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,eisa)总线等。该总线503可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

本申请实施例还提供一种计算机存储介质,计算机存储介质包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行如上述实施例提供的用户社团划分方法。

本申请实施例还提供一种计算机程序,该计算机程序可直接加载到存储器中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述实施例提供的用户社团划分方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个模块或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。

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