动态社区发现及追踪系统及其方法

文档序号:6384693阅读:367来源:国知局
专利名称:动态社区发现及追踪系统及其方法
技术领域
本发明涉及SNS技术,尤其涉及一种动态社区发现及追踪系统及其方法。
背景技术
社会网络分析与挖掘,成为近几年学术界和产业界的热门研究领域,社区结构研究则是其中一个非常重要的研究课题。当前对社区结构的研究往往集中于静态层面,即给定一个网络,如何去发现其中隐藏的社区结构。然而,事实上,社会网络是不断变化的,社区结构也会随着网络的变化而演化,因此,人们开始关注动态社区的发现方法。社区演化分析的开创性研究由Hopcroft等人进行[I],他们分析了 NECCiteSeerDatabase提供的引文网络的不同时间的快照(snapshot),这些快照分布于1990到2001年,他们所采用的社区发现方法是凝聚式层次聚类。通过分析和匹配不同快照网络的社区结构,可以跟踪各个社区的演化情况,发现新社区的出现通常对应新的研究方向等有趣的现象。Falkowski [2]等人基于subgroups分析了社区演化,并找出相对稳定和动荡的社区结构。他们用相邻网络的快照找到交叠的部分,利用统计度量发现那些相对稳定的subgroups。Palla等人第一次系统地进行了社区演化分析的研究[3],分析的数据是移动电话网络在一年内的数据、凝聚态物质领域的科学家合作网络数据,他们使用CliquePercolationMethod (CPM)方法[4]对每个时间步的图抽取社区结构,然后匹配连续时间片的社区结构,从而分析社区的演化规律。他们给出了很多有意思的特征,如社区规模、生命周期、相关性、社区的自相关性等,其得出的主要结论是小的社区较为稳定,而大的社区变化剧烈。综上,当前对动态社区的研究都是基于时间片的方法,即首先对社会信息网络各个时间片上的快照进行社区发现,然后匹配相邻时间片的社区结构,探索社区的演化规律。此类方法的缺点之一在于,时间片的切分都是人为进行的,其粒度不同会导致结果的不同,若粒度太大,则会大大忽视社区结构的演化细节,若粒度太小,则会多次重复计算。基于时间片方法的缺点之二在于,需要对每个快照都要进行一次完整的社区发现,严重影响了发现效率。因此,有必要研究一种与时间片切分粒度无关,能灵活准确地对动态社区进行发现及追踪的方法。

发明内容
有鉴于此,有必要提供一种动态社区发现及追踪系统及其方法。本发明提供的一种增量的动态社区发现及追踪系统,包括社区构建模块以及判断模块。其中,社区构建模块用于根据t时间的网络数据找出其中隐含的所有社gC,
k=l, 2,3,......Kt,其中Kt表示t时刻的社区总数目;判断模块用于检测出增量元素subG,
其中,所述增量元素subG由节点和边组成,判断模块还用于判断所述增量元素subG的类型,其中类型包括完全独立型、完全包含型、半包含半独立型以及多包含型,所述社区构建模块还用于在所述增量元素subG的类型为完全独立型时将所述增量元素subG作为t+1时刻的新社区,并对所述增量元素subG中的节点进行社区标识。本发明还提供一种动态社区发现及追踪的方法,包括以下步骤根据t时间的网
络数据找出其隐含的所有社ECi,k=l, 2,3,......Kt,其中Kt表示t时刻的社区总数目;检
测增量元素subG ;判断所述增量元素subG的类型,其中类型包括完全独立型、完全包含型、半包含半独立型以及多包含型;所述增量元素subG的类型为完全独立型时将所述增量元素subG作为t+1时刻的新社区,并对所述增量元素subG中的节点进行社区标识。本发明中的动态社区发现及追踪系统及其方法实现的与时间片切分粒度无关的社区更新,灵活准确地实现了动态社区的发现及追踪。


图1为本发明一实施方式中动态社区发现及追踪系统的模块图;图2为本发明一实施方式中利用图1所示的动态社区发现及追踪系统进行动态社区发现以及追踪的方法的流程图;图3为增量元素subG的类型示意图;图4为本发明第一实施方式中半包含半独立型增量元素subG的社区更新示意图;图5为本发明第二实施方式中半包含半独立型增量元素subG的社区更新示意图;图6为本发明第一实施方式中多包含型增量元素subG的社区更新示意图;图7为本发明第二实施方式中多包含型增量元素subG的社区更新示意图;图8为本发明中社区的合并过程示意图;图9为本发明中社区分裂过程示意图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。在本发明的描述中,术语“内”、“外”、“纵向”、“横向”、“上”、“下”、“顶”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明而不是要求本发明必须以特定的方位构造和操作,因此不能理解为对本发明的限制。请参阅图1,图1所示为本发明一实施方式中动态社区发现及追踪系统10的模块图。在本实施方式中动态社区发现及追踪系统10包括社区构建模块102、判断模块104、计算模块106、衰减模块108、存储器110以及处理器112,其中,社区构建模块102、判断模块104、计算模块106以及衰减模块108存储在存储器110中,处理器112用于执行存储在存储器110中的功能模块。在本实施方式中,社区构建模块102用于根据t时间的网络数据找出其中隐含的所有社区Ci,k=l, 2,3,......Kt,其中Kt表示t时刻的社区总数目。
在本实施方式中,网络数据是指从社交网上抓取出来的数据。在本实施方式中,社区构建模块102基于CPM算法对t时刻的网络数据进行初始的社区构建。其中,所谓CPM方法,即从k-clique入手,根据不同K_clique之间的重叠性
进行进行自底向上的合并,从而构建出该网络中隐含的不同社区(k=l, 2, 3,......K,其
中K表示t时刻的社区总数目。该算法的优点是允许一个节点属于多个社区。在本实施方式中,所述CPM算法通过以下步骤识别出重叠网络簇结构(I)对给定的参数K,计算出网络中的全部k-clique (k ^ K),并建立clique和clique之间的重叠矩阵(clique-clique overlap matrix) ; (2)根据以上矩阵计算出重叠网络簇结构。虽然CPM算法是一种能够计算重叠网络簇结构的算法,然而该方法却对边的稠密性要求极高,会导致社区结构的散乱。为此,本发明对CPM算法进行了松弛改进,以K-clique为最小单元,进行社区发现,主要包括以下步骤(I)获取所述网络数据中所有的K-Clique,并根据K的大小进行由大到小排序;(2)由大到小遍历所有的K-Clique,应用合并和复制策略对K-Clique进行合并和复制;(3)对每个社区进行标注从而完成社区的初始发现。其中,合并策略和复制策略定义如下1、合并策略KCi和KCj是K-Clique中的任意两个完全图。当HC]) D F(KCj)爹0,且|F(^C,)> ^ViKC^ViKC^ViKCj^ > ^(KC^ 则将队和 KCj 进行合并得到一个社区。2、复制策略KCi和KCj是K-Clique中的任意两个完全图。当;若|F(A^)nF(A"C(.)|<i|F(iq)|则将 KCi 和 KCj 分别作为一个社区来处理。判断模块104用于检测增量元素subG。在本实施方式中,所述增量元素subG由节点和边组成。在本实施方式中,判断模块104还用于判断所述增量元素subG的类型,其中类型包括完全独 立型、完全包含型、半包含半独立型以及多包含型。请结合图3,图3所示为增量元素subG的类型示意图,在本实施方式中,所述完全独立型是指所述增量元素SUbG中的任意节点均不在当前社区r丨中,其形式化足义为One-AllNew(SUbG) = I iff (WCtk) (Ctk e CSt) (V(stibG)门 V(Ctk) = 0)所述完全包含型是指所述增量元素subG中的所有节点均在当前社区q中,其形式化定义为One-AilOld(SMftG) = I iff (Vv) v e VLsubC,) (3( ';) v e V(C)所述半独立半包含型是指所述增量元素subG中既有旧节点,也有新节点,其形式化定义为 Mult1-NewOld= I iff (3 C^) (F(C^)nt V (subG) ^0) A (彐 v) (v e V(subG) av^ V (CSf))所述多包含型是指所述增量元素subG中的所有节点都是旧节点,但属于t时刻的不同社区,其形式化定义为Mult1-AllOlcK,vw/ (7) = I iff (Vv) v e V(sub(i) -> (3C() v e V(Ctk)在本实施方式中,所述社区构建模块102还用于在所述增量元素subG的类型为完全独立型时将所述增量元素subG作为t+1时刻的新社区,并对所述增量元素subG中的节点进行社区标识。在本实施方式中,令C表示社区C丨的节点集合['表示社区('的节点集合,&表
示t时刻社区的数量,则r/+1为新诞生的社区定义如下
Appear{C;1) = I iff V/,i = 1,2,X-,KtM V;+ir^V/=0在本文中,一个新社区的诞生是指社区中的成员以及成员之间的关系在该时间点上都是全新的,即若存在某个增量元素属于完全独立型,则该增量元素即可生成一个新的社区。在本实施方式中,衰减模块108用于在所述增量元素subG的类型为完全包含型时利用历史边的衰减更新所述社区G的权重。在本实施方式中,历史边的衰减是指在与增量元素subG相关的社区更新时,需要对该社区各个边的权值进行衰减,其更新规则如以下公式所示

%={ ^其中,a为衰减参数,表示历史的影响程度,OS a < I。在本实施方式中,当a =0时,表示不考虑任何历史影响,即该规则表示隔离的时间片;当a=l时,则表示历史的影响丝毫不会随时间衰减,即,该规则表示累积的时间片。因此,本发明实施方式中的历史更新规则具有一般性。在本实施方式中,衰减模块108根据衰减阈值0来决定某条边的去留,若某条边更新后的权值小于e,则删除该边;若大于e,则保留该边及其权值。在本实施方式中,衰减阈值0定义为
^I ^Z(Mm(^)2其中,Num(u)代表节点u在时间序列中出现的次数,N代表数据集所有节点的个数。网络在经过衰减处理之后,若某条边(u,v)的权值小于衰减阈值e,则删除该边。因此,在社区结构的演化过程中,社区成员之间的权值会随着衰减函数而进行变化。该衰减策略的优点主要体现在(I)能够保证社区成员之间的关系还有社区成员的时效性;(2)能减少早期(历史)社区结构对当前社区结构的过度影响。在本实施方式中,计算模块106用于在所述增量元素subG的类型为半包含半独立型时计算增量元素中的旧节点相对于社区q的归属强度,并对所有旧节点的归属强度求
和得到n在本实施方式中,计算模块106将节点V对社区C的归属强度定义为节点V与社区C内部所有节点的边的权值之和,其形式化表示以下公式所示。
权利要求
1.一种增量的动态社区发现及追踪系统,包括 社区构建模块,用于根据t时间的网络数据找出其隐含的所有社区(k=l, 2,3,......Kt,其中Kt表示t时刻的社区总数目; 判断模块,用于检测增量元素subG,其中,所述增量元素subG由节点和边组成,判断模块还用于判断所述增量元素subG的类型,其中类型包括完全独立型、完全包含型、半包含半独立型以及多包含型, 所述社区构建模块还用于在所述增量元素subG的类型为完全独立型时将所述增量元素subG作为t+1时刻的新社区,并对所述增量元素subG中的节点进行社区标识。
2.如权利要求1所述的动态社区发现及追踪系统,其特征在于,所述完全独立型是指所述增量元素subG中的任意节点均不在当前社区C!中,所述完全包含型是指所述增量元素subG中的所有节点均在当前社区C〗中,所述半独立半包含型是指所述增量元素subG中既有旧节点,也有新节点,所述多包含型是指所述增量元素subG中的所有节点都是旧节点,但属于t时刻的不同社区。
3.如权利要求1所述的动态社区发现及追踪系统,其特征在于,还包括 衰减模块,用于在所述增量元素subG的类型为完全包含型时利用历史边的衰减更新所述社区q的权重。
4.如权利要求1所述的动态社区发现及追踪系统,其特征在于,还包括 计算模块,用于在所述增量元素subG的类型为半包含半独立型时计算增量元素中的旧节点相对于社区q的归属强度又4 5并对所有旧节点的归属强度求和得到,其中,所述计算模块还用于计算增量元素中的旧节点相对于增量元素subG的归属强度°,并对所有旧节点的归属强度求和得到界:T,所述判断模块还用于判断*Sg是否大于,所述社区构建模块还用于在5 大于sgf时将所述增量元素SubG中的新节点加入到所述社区q中,从而得到CT1=C。
5.如权利要求4所述的动态社区发现及追踪系统,其特征在于,所述社区构建模块还用于在<1小于等于时将所述增量元素subG中的旧节点进行复制,并与新节点一起形成新社区C=。
6.如权利要求1所述的动态社区发现及追踪系统,其特征在于,所述计算模块还用于在所述增量元素subG的类型为多包含型时针对不同的社区计算所有节点的归属强度和,以及所有节点对所述增量元素subG的归属强度和,所述判断模块还用于判断针对不同社区的归属强度和是否均小于,所述社区构建模块还用于在针对不同社区的归属强度和均小于时将所述增量元素subG中的所有节点进行复制,形成t+1时刻的新社区,并对所述增量元素subG中的节点进行社区标识。
7.如权利要求6所述的动态社区发现及追踪系统,其特征在于,所述社区构建模块还用于在针对不同社区的归属强度和任意一个大于等于时将所述增量元素SUbG中的节点分别分配到相应的社区中。
8.一种动态社区发现及追踪的方法,其特征在于,包括根据t时间的网络数据找出其隐含的所有社区G,k=l, 2,3,......Kt其,中K t表示t时刻的社区总数目; 检测增量元素subG ; 判断所述增量元素subG的类型,其中类型包括完全独立型、完全包含型、半包含半独立型以及多包含型; 所述增量元素subG的类型为完全独立型时将所述增量元素subG作为t+1时刻的新社区,并对所述增量元素subG中的节点进行社区标识。
9.如权利要求8所述的方法,其特征在于,所述完全独立型是指所述增量元素subG中的任意节点均不在当前社区(丨中,所述完全包含型是指所述增量元素subG中的所有节点均在当前社区Q中,所述半独立半包含型是指所述增量元素subG中既有旧节点,也有新节点,所述多包含型是指所述增量元素subG中的所有节点都是旧节点,但属于t时刻的不同社区。
10.如权利要求8所述的方法,其特征在于,还包括以下步骤 在所述增量元素subG的类型为完全包含型时利用历史边的衰减更新所述社区q的权重。
11.如权利要求8所述的方法,其特征在于,还包括以下步骤 在所述增量元素subG的类型为半包含半独立型时计算增量元素中的旧节点相对于社区^的归属强度并对所有旧节点的归属强度求和得到*^!. 计算增量元素中的旧节点相对于增量元素SUbG的归属强度Sr6,并对所有旧节点的归属强度求和得到 判断&;是否大于5=、 在Sg大于时将所述增量元素SUbG中的新节点加入到所述社区q中,从而得到
12.如权利要求11所述的方法,其特征在于,还包括以下步骤 在5£小于等于^时将所述增量元素SUbG中的旧节点进行复制,并与新节点一起形成新社区cr+i。
13.如权利要求8所述的方法,其特征在于,还包括以下步骤 在所述增量元素subG的类型为多包含型时针对不同的社区计算所有节点的归属强度和; 计算所有节点对所述增量元素subG的归属强度和 , 判断针对不同社区的归属强度和是否均小于 在针对不同社区的归属强度和均小于将所有节点进行复制,形成t+i时刻的新社区,并对所述增量元素subG中的节点进行社区标识。
14.如权利要求13所述的方法,其特征在于,还包括以下步骤 在针对不同社区的归属强度和任意一个大于等于巧丨Il51时将所述增量元素subG中的节点分别分配到相应的社区中。
全文摘要
一种动态社区发现及追踪系统,包括社区构建模块与判断模块,其中,社区构建模块根据t时间的网络数据找出其隐含的所有社区k=1,2,3,......Kt,其中Kt表示t时刻的社区总数目;判断模块首先检测新出现的增量元素subG,其中,增量元素subG由节点和边组成,判断模块还判断所述增量元素subG的类型,其中类型包括完全独立型、完全包含型、半包含半独立型以及多包含型,社区构建模块还根据增量元素subG的类型为完全独立型时将所述增量元素subG作为t+1时刻的新社区,并对所述增量元素对subG中的节点进行社区标识。本发明中的动态社区发现及追踪系统,有效的实现了灵活准确地对动态社区进行发现和追踪。
文档编号G06Q10/04GK103065200SQ20121055450
公开日2013年4月24日 申请日期2012年12月19日 优先权日2012年12月19日
发明者赵中英, 成杰峰, 冯圣中 申请人:中国科学院深圳先进技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1