CN110880150A - 社区发现方法、装置、设备和可读存储介质 - Google Patents
社区发现方法、装置、设备和可读存储介质 Download PDFInfo
- Publication number
- CN110880150A CN110880150A CN201811030448.2A CN201811030448A CN110880150A CN 110880150 A CN110880150 A CN 110880150A CN 201811030448 A CN201811030448 A CN 201811030448A CN 110880150 A CN110880150 A CN 110880150A
- Authority
- CN
- China
- Prior art keywords
- target
- nodes
- label
- node
- communities
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000008569 process Effects 0.000 claims abstract description 18
- 238000000638 solvent extraction Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 238000004422 calculation algorithm Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 17
- 238000012546 transfer Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 208000035473 Communicable disease Diseases 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003012 network analysis Methods 0.000 description 2
- 108090000623 proteins and genes Proteins 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101710100170 Unknown protein Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004060 metabolic process Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004853 protein function Effects 0.000 description 1
- 230000006916 protein interaction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种社区发现方法、装置、设备和可读存储介质,属于计算机技术领域。本申请通过多次迭代得到网络中的多个目标节点的多个标签,且在每一次迭代中,将一个目标节点的一个目标邻居节点的一个标签确定为该目标节点的一个目标标签;对于该多个目标节点中的任一目标节点,确定该目标节点的多个目标标签之后,获取该多个目标标签,并将其作为该目标节点的已有标签;根据该网络中的多个目标节点更新后的已有标签划分社区。在为一个目标节点确定标签的过程中,每次迭代获取一个目标邻居节点的一个标签,大大减少了标签的传递量,从而降低了网络开销。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种社区发现方法、装置、设备和可读存储介质。
背景技术
社区反映的是网络中的节点的局部性特征以及其相互之间的关联关系,研究网络中的社区对理解整个网络的结构和功能起到重要的作用,并且有助于分析及预测整个网络各个节点间的交互关系。社区发现用于对网络中的节点进行社区划分从而确定网络中的一个或者多个社区。基于社区发现可对节点以及所确定的社区进行分析,以应用于多个领域,例如,生物领域、犯罪分析领域以及互联网领域等。
相关技术提供了一种社区发现方法,该方法采用标签传播算法实现,在该标签传播算法中,对于网络中的每个节点,通过多次迭代为该节点获取多个标签,在每一次迭代中,获取该节点的每个邻居节点的一个标签,并选择其中一个标签,将选择的标签作为该节点的一个标签,以此类推,通过多次迭代确定该节点的多个标签,进而据此获取网络中每个节点的多个标签,并根据网络中多个节点的标签确定多个社区。
相关技术中,每一次为一个节点增加一个标签的过程中,都需要获取该节点的每个邻居节点的一个标签,在邻居节点的个数较多的情况下,传递的信息量较大,增加了网络开销。
发明内容
本申请提供一种社区发现方法、装置、设备和可读存储介质,以克服相关技术中存在的网络开销较大的问题。
第一方面,本申请提供一种社区发现方法,包括:确定待划分社区的多个目标节点,所述多个目标节点中的每个目标节点具有一个或者多个邻居节点,所述每个目标节点具有一个或者多个已有标签;对于所述多个目标节点中的任一目标节点,通过一次或者多次迭代为所述任一目标节点确定一个或者多个目标标签,其中,任一次迭代过程中,将所述任一目标节点的一个目标邻居节点所具有的一个标签确定为所述目标节点的一个目标标签,所述目标邻居节点所具有的一个标签是所述目标邻居节点的已有标签和所述目标邻居节点的目标标签中的一个;获取为所述任一目标节点确定的目标标签,并将确定的目标标签作为所述任一目标节点的已有标签;根据所述多个目标节点更新后的已有标签将所述多个目标节点划分为多个社区。
结合第一方面,在第一方面的第一种实施方式中,所述获取为所述任一目标节点确定的目标标签,并将确定的目标标签作为所述任一目标节点的已有标签,包括:若通过多次迭代为所述任一目标节点确定了多个目标标签,则根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签;获取合并后的目标标签,根据所述合并后的目标标签得到所述任一目标节点的已有标签。
结合第一方面的第一种实施方式,在第一方面的第二种实施方式中,所述多个目标节点中的每个目标节点具有一个初始标签,所述根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签,包括:根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签中同源的目标标签;其中,所述同源的目标标签是所述任一目标节点的同一邻居节点的标签,或者,所述同源的目标标签是同一目标节点的初始标签。
对于一个目标节点,若确定的多个目标标签存在同源的目标标签,则可以通过合并同源的目标标签,进一步减少标签的传递量,进而降低网络开销。
结合第一方面、第一方面的第一种实施方式和第二种实施方式中任一实施方式,在第一方面的第三种实施方式中,所述多次迭代终止条件是所述多次迭代的次数等于迭代次数阈值。
结合第一方面、第一方面的第一实施方式和第二种实施方式中任一实施方式,在第一方面的第四种实施方式中,所述方法还包括:在一次迭代中,基于所述多个目标节点的已有标签和目标标签,将所述多个目标节点划分为多个第一参考社区;若所述多个第一参考社区与多个第二参考社区之间的差异小于差异阈值,则所述迭代终止,所述多个第二参考社区是上一次迭代划分得到的社区。
结合第一方面、第一方面的第一至四种实施方式中任一实施方式,在第一方面的第五种实施方式中,所述根据所述多个目标节点更新后的已有标签将所述多个目标节点划分为多个社区,包括:根据所述多个目标节点中的每两个相邻节点更新后的已有标签确定所述两个相邻节点的相似度;根据所述多个目标节点中的每两个相邻节点的相似度划分多个社区,所述社区中的任两个相邻节点的相似度不小于第一相似度阈值。
结合第一方面的第五种实施方式,在第一方面的第六种实施方式中,所述方法还包括:若所述多个目标节点中包括不属于所述多个社区中任一社区的孤立节点,且所述孤立节点的一个邻居节点与所述孤立节点的相似度不小于第二相似度阈值,将所述孤立节点归入所述孤立节点的所述邻居节点所在的社区,所述第二相似度小于所述第一相似度。
结合第一方面的第六种实施方式,在第一方面的第七种实施方式中,第一相似度和/或第二相似度是基于两个目标节点具有的相同的标签在所述两个目标节点具有的标签中的比例确定。
第二方面,本申请提供一种社区发现装置,所述装置包括用于执行第一方面或第一方面任一种可能实现方式中的社区发现方法的各个模块。
第三方面,提供了一种社区发现设备,所述装置包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现上面所述的任一社区发现方法。
第四方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现上面所述的任一社区发现方法。
第五方面,提供了一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上面所述的任一社区发现方法。
本申请提供的技术方案至少包括以下有益效果:
本申请通过多次迭代得到网络中的多个目标节点的多个标签,在每一次迭代中,将一个目标节点的一个目标邻居节点的一个标签确定为该目标节点的一个目标标签;对于该多个目标节点中的任一目标节点,确定该目标节点的多个目标标签之后,获取该多个目标标签作为该目标节点的已有标签;根据该网络中的多个目标节点的已有标签划分社区。在为一个目标节点确定一个标签的过程中,只需要获取一个目标邻居节点的一个标签,大大减少了标签的传递量,从而降低了网络开销。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
图1是本发明实施例提供的一种重叠社区的示意图;
图2是本发明实施例提供的一种社区发现方法的流程图;
图3是本发明实施例提供的一种确定目标标签的示意图;
图4是本发明实施例提供的一种待划分社区的目标节点网络图;
图5是本发明实施例提供的一种获取目标标签的示意图;
图6是本发明实施例提供的一种获取目标标签的示意图;
图7是本发明实施例提供的一种划分社区的示意图;
图8是本发明实施例提供的一种社区发现装置的结构方框图;
图9是本发明实施例提供的一种社区发现设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
在对本发明实施例进行详细的解释说明之前,先对本发明实施例涉及的应用场景予以介绍。
社区发现广泛应用于多个领域。在生物领域社区发现可用于新陈代谢网络分析、基因调控网络分析、主控基因识别等方面。例如,预测蛋白质相互作用网络中的复合体和社区模块以利于理解生物系统的组织和功能以及预测未知蛋白质功能;社区发现还可以用于传染病的传播演化和预测防控,可通过分析找出传染病的关键社区、关键节点以及重点防护易感人群,以预测传播路径从而及时切断传播路径达到对传染病进行控制的目的。另外,社区发现还可以用于对犯罪活动进行分析,通过社区发现获得社会网络、电讯网络以及互联网中的犯罪网络,锁定犯罪分子的领导者,并对其及其团伙的犯罪行为进行关联追踪。社区发现在互联网中的应用则更为广泛,例如,在微博中利用社区发现进行精准广告投放,对电子商务中的用户进行社区发现从而建立更可靠的商品推荐系统,在搜索引擎中对搜索记录进行基于主题词的社区发现从而分析用户行为,从而为用户提供更个性化的搜索结果。
社区中一般包括多个节点,传统的社区发现中每个节点只能归属于一个社区,多个社区之间不存在重叠。在实际的社区中,节点往往同时归属于不同的社区,即存在重叠社区。社区发现用于确定节点所归属的一个或者多个社区,从而确定多个社区。
参见图1,其示出重叠社区的示意图。在该网络中,有多个节点,该多个节点分别属于一个或者多个社区,从而形成多个社区,该多个社区中的一个或者多个社区是重叠的。节点之间的连线代表节点之间的关系,有连线连接的两个节点互为邻居节点。
以下对本发明实施例中所涉及的基于标签的社区发现方法进行介绍。
参见图2,其示出了本发明实施例提供的一种社区发现方法的流程图,该方法可以由终端或者服务器执行,该方法包括:
步骤201、确定待划分社区的多个目标节点。
其中,该多个目标节点中的每个目标节点具有一个或者多个邻居节点,每个目标节点具有一个或者多个已有标签。
该多个目标节点以及目标节点之间的邻居关系可以通过初始数据得到,例如,根据该初始数据可以建立数据的网络图,该多个目标节点是网络图中的节点,目标节点之间的邻居关系是该网络图中的连接关系。该初始数据可以是通话记录、转账记录或者微博账号之间的互动记录等。该多个目标节点可以是对象、账户或者任意实体。
示例性地,初始数据是多个电话号码的通话记录,例如,归属于一个城市的所有电话号码的通话记录,其中每个电话号码可以是一个目标节点,每条通话记录包括至少两个进行通话的电话号码,该条通话记录表示该两个进行通话的电话号码的邻居关系,则该两个进行通话的电话号码互为邻居节点。对于一个电话号码,与之有通话记录的电话号码都可以认为是其邻居节点。
在又一示例中,初始数据是银行账户的转账记录,例如,归属于一家银行的所有银行账号的转账记录,其中每个银行账户可以是一个目标节点,每条转账记录是从一个银行账户转给另一个银行账户,该转账记录表示该两个银行账户之间的邻居关系,则该两个银行账户互为邻居节点。对于该初始数据中的一个银行账户,与之有过相互转账的银行账户都可以认为是其邻居节点。
在一种可能的实现方式中,对于初始数据,可以通过预操作减少目标节点的个数,以减少社区发现过程中的计算量。预操作包括但不限于以下操作中的一个或者多个:
操作一:删除初始数据所形成的网络图中的一些独立节点。该独立节点为邻居节点的个数少于邻居节点阈值的节点,其中,该邻居节点阈值可以根据初始数据确定。例如,邻居节点阈值为5,对于通话记录中,与一个电话号码通话的电话号码少于5个,则将该电话号码确定为独立节点,不作为社区发现的待划分社区的节点。
操作二:建立确定邻居节点的规则。该确定邻居节点的规则可以包括但不限于:两个节点之间的联系次数大于联系次数阈值,则两个节点是邻居节点。该联系次数阈值可以根据初始数据确定。例如,对于通话记录中,联系次数阈值是2,若两个电话号码之间的通话次数是1次,则该两个电话号码不是邻居节点;若两个电话号码之间的通话次数是3次,则该两个电话号码是邻居节点。
为了区分不同的待划分社区的目标节点,一个目标节点包括的一个或者多个已有标签中至少包括一个初始标签,该初始标签用于标识该目标节点,与目标节点是一一对应的,即每个目标节点的初始标签都不相同。该初始标签可以是顺序分配的,也可以是随机分配的。例如,待划分社区的多个目标节点的初始标签依次是1、2、3等。
此外,一个目标节点包括的一个或者多个已有标签中还可以包括除初始标签之外的其他已有标签,该一个或者多个其他已有标签可以是从该目标节点的邻居节点的标签中获取,并成为该目标节点的已有标签。该目标节点的其他已有标签可以是该邻居节点的初始标签,也可以是该邻居节点的除初始标签之外的其他已有标签。该其他已有标签用于指示该目标节点的邻居关系。
步骤202、对于该多个目标节点中的任一目标节点,通过一次或者多次迭代为任一目标节点确定一个或者多个目标标签,其中,任一次迭代过程中,将任一目标节点的一个目标邻居节点所具有的一个标签确定为目标节点的一个目标标签。
其中,该目标邻居节点所具有的一个标签是该目标邻居节点的已有标签和该目标邻居节点的目标标签中的一个。目标标签是指该标签是一个可能成为该目标节点的已有标签的标签,可以通过步骤203中的操作使得该目标标签成为该目标节点的已有标签。
可选地,多次迭代终止条件是该多次迭代的次数等于迭代次数阈值。迭代次数阈值可以通过经验或者实验得到,例如,在基于通话记录的初始数据进行的社区划分中,迭代次数阈值为10。
在一种可能的实现方式中,通过步骤202实现为待划分社区的多个目标节点确定多个目标标签,即,为待划分社区的多个目标节点中的每个目标节点分别确定一个或者多个目标标签。
对于待划分社区的多个目标节点中的任一目标节点,在一次迭代中,为该目标节点确定一个目标标签;对于多次迭代的情况,在多次迭代中的每一次迭代中,为该目标节点确定一个目标标签,从而实现多次迭代为该目标节点确定多个目标标签。
进一步地,在一次迭代中,为待划分社区的多个目标节点中的每个目标节点分别确定一个目标标签;对于多次迭代的情况,在多次迭代中的每一次迭代中,为待划分社区的多个目标节点中的每个目标节点分别确定多个目标标签。
示例性地,参见图3,其示出了为6个待划分社区的目标节点确定目标标签的示意图。该6个待划分社区的目标节点的编号分别为1、2、……、6。在初始状态中,6个待划分社区的目标节点中的每个目标节点都分别具有一个已有标签,例如,编号为1的目标节点具有的已有标签为1。通过第一次迭代,分别为6个待划分社区的目标节点中的每个目标节点确定第一个目标标签,例如,为编号为1的目标节点确定第一个目标标签“2”,为编号为2的目标节点确定第一个目标标签“1”。通过第二次迭代,分别为6个待划分社区的目标节点中的每个目标节点确定第二个目标标签,例如,为编号为1的目标节点确定第二个目标标签“2”,为编号为2的目标节点确定第二个目标标签“2”。为该6个待划分社区的目标节点中的其他目标节点的目标标签的过程与编号为1的目标节点和编号为2的目标节点类似,在此不再赘述。
在为待划分社区的多个目标节点中的任一目标节点确定一个目标标签的过程,可以通过确定该目标标签的来源实现,在一种可能的实现方式中,步骤202包括:
通过一次或者多次迭代为多个目标节点中的每个目标节点确定一个或者多个目标标签,在一次迭代中,对于多个目标节点中的任一目标节点,通过第一选择算法选择该目标节点中的一个目标邻居节点;再通过第二选择算法选择该目标邻居节点所具有的一个或者多个标签中的一个标签,确定该标签为该目标节点的一个目标标签。
可选地,第一选择算法和/或第二选择算法可以是随机算法,第一选择算法和第二选择算法可以是相同的随机算法或者不同的随机算法。
在一种可能的实现方式中,第一选择算法和第二选择算法是随机算法,在第一选择算法中,首先生成第一随机数,该第一随机数的大小范围取决于该目标节点的邻居节点的个数,基于该第一随机数从该目标节点的多个邻居节点中选择一个目标邻居节点;在第二选择算法中,首先生成第二随机数,该第二随机数的大小范围取决于该目标邻居节点具有的标签的个数,基于该第二随机数从该目标邻居节点具有的标签选择一个标签作为所确定的目标标签。
示例性地,该目标节点有10个邻居节点,该10个邻居节点的编号分别为1、2、……、10,根据第一选择算法,获得一个其值为1到10之间的第一随机数,将以第一随机数为编号的邻居节点作为通过第一选择算法选择得到的目标邻居节点。该目标邻居节点具有5个标签,该5个标签的编号分别为1、2、……、5,根据第二选择算法,获得一个其值为1到5之间的第二随机数,将以第二随机数为编号的标签作为通过第二选择算法选择得到的目标标签。
可选地,第一选择算法和/或第二选择算法还可以是权重选择法,根据邻居节点或者标签的权重进行选择。
在另一种可能的实现方式中,第一选择算法和第二选择算法是权重选择法,在第一选择算法中,首先分别确定该目标节点与其多个邻居节点之间的关系权重,该关系权重可以通过初始数据中该两个节点之间的数据确定,基于该多个关系权重从该目标节点的多个邻居节点中选择一个目标邻居节点;在第二选择算法中,首先分别确定目标邻居节点所具有的多个标签的权重值,该权重值可以是该标签在该目标邻居节点中出现的次数,基于该多个权重值从该目标邻居节点具有的标签选择一个标签作为所确定的目标标签。
示例性地,该目标节点有10个邻居节点,该目标节点与该10个邻居节点中任一邻居节点之间具有关系权重,该关系权重可以通过初始数据中该两个节点之间的数据确定,例如,通话记录中两个电话号码之间的通话次数,通话次数越多,关系权重的值最大;根据该10个邻居节点与该目标节点之间的关系权重的从大到小将该10个邻居节点依次编号分别为1、2、……、10,根据第一选择算法,在多次迭代中,根据编号依次选择该10个邻居节点,例如,在第三次迭代中,选择编号为3的邻居节点作为根据第一选择算法选择得到的目标邻居节点。
该目标邻居节点具有5个标签,该5个标签分别具有权重值,该权重值可以是该标签在该目标邻居节点中出现的次数,出现次数越多的标签,其权重值越大;根据权重值的从大到小对标签依次编号为1、2、……、5,在多次迭代中,根据编号依次选择该5个标签,例如,在第三次迭代中,选择编号为3的邻居节点的编号为2的标签,在第五次迭代中,编号为3的邻居节点再一次被选中,则在该第五次迭代中,选择编号为3的邻居节点的编号为3的标签,以该编号为3的标签作为通过第二选择算法选择得到的目标标签。
在步骤202中,所选择的标签是所选择的目标邻居节点的一个或者多个已有标签和所选择的邻居节点的已确定的一个或者多个目标标签中的一个。已确定的目标标签是在先迭代中所确定的所选择的目标邻居节点的目标标签。
在一种可能的实现方式中,在确定该目标标签后,还可以获取该目标标签的信息以标识该目标标签。目标标签的信息包括但不限于以下信息中的一个或者多个:
来源邻居节点:用于指示该目标标签所来源的目标邻居节点;
来源邻居标签:用于指示该目标标签来源于来源邻居节点的已有标签或者来源邻居节点的已确定的目标标签,该来源邻居标签可以与来源邻居节点结合来指示该目标标签的来源;
来源初始节点:表示该目标标签是来源初始节点的初始标签,该来源初始节点可能是该目标标签所属目标节点的邻居节点,也可能不是该目标标签所属目标节点的邻居节点。
示例性地,参见图4,其示出了一个具有6个待划分社区的目标节点的网络图。该网络图中每个目标节点具有3个标签,每个目标节点具有的第1个标签是已有标签,也是初始标签,每个目标节点具有的第2个标签和第3个标签是目标标签,是经过两次迭代分别确定得到。以编号为1的目标节点为例进行说明,该目标节点的第1个标签“1”是初始标签,该目标节点的第2个标签“2”和第3个标签“4”是目标标签。对于编号为1的目标节点的第2个标签,该标签来源于编号为2的邻居节点,且为编号为2的邻居节点的初始标签,则第2个标签的来源邻居节点是编号为2的目标节点,第2个标签的来源邻居标签是来源邻居节点的第1个已有标签,即初始标签,第2个标签的来源初始节点是编号为2的目标节点。对于编号为1的目标节点的第3个标签,该标签来源于编号为3的邻居节点,是编号为4的邻居节点的初始标签,则编号为1的邻居目标节点的第3个标签的来源邻居节点是编号为3的目标节点,该第3个标签的来源邻居标签是来源邻居节点的第1个目标标签,第2个标签的来源初始节点是编号为4的目标节点。
在一种可能的实施方式中,在一次迭代中为多个目标节点确定多个目标标签之后,可以通过如下方式判断该确定目标标签的多次迭代是否终止:
在一次迭代中,基于该多个目标节点的已有标签和目标标签,将该多个目标节点划分为多个第一参考社区;
若该多个第一参考社区与多个第二参考社区之间的差异小于差异阈值,则迭代终止,其中,多个第二参考社区是上一次迭代划分得到的社区。
可选地,第一参考社区与第二参考社区之间的差异可以通过第一参考社区包括的目标节点与第二参考社区包括的目标节点的差异个数或者差异比例确定。其中,差异比例是第一参考社区包括的目标节点与第二参考社区包括的目标节点的不同节点的个数与第一参考社区或者第二参考社区总的目标节点个数的比例。例如,一个第一参考社区包括第1-4个目标节点,一个第二参考社区包括第2-5个目标节点,则第一参考社区与第二参考社区之间的差异个数是2,差异比例是2/4=0.5。
可选地,将该多个目标节点划分为多个第一参考社区的方法可以参照本公开实施例步骤204中的基于已有标签划分社区的方法。
示例性地,在第一次迭代中,为多个目标节点的每个目标节点分别确定一个目标标签,获取该多个目标标签,根据该多个目标节点的已有标签和目标标签划分多个第二参考社区;在第二次迭代中,为多个目标节点的每个目标节点分别再确定一个目标标签,获取该多个目标标签,根据该多个目标节点的已有标签和目标标签划分多个第一参考社区;若多个第一参考社区和多个第二参考社区之间的差异小于差异阈值,则该多次迭代终止。
步骤203、获取为任一目标节点确定的目标标签,并将确定的目标标签作为该任一目标节点的已有标签。
在获取目标标签并作为该目标节点的已有标签的过程中,可以根据该目标节点所具有的目标标签的个数进行处理。
若该目标节点具有一个目标标签,则根据该目标标签的来源获得该目标标签。该目标标签的来源可以通过步骤202中获得的目标标签的信息获得。
在一种可能的实现方式中,可以根据步骤202中获得的目标标签的来源邻居节点和来源邻居标签获得该目标节点的一个目标标签,并将获取到的目标标签作为该目标节点的已有标签。
示例性地,参见图5,其示出了为6个待划分社区的目标节点获取目标标签并作为已有标签的示意图。在为6个待划分社区的目标节点分别确定一个目标标签之后,每个目标节点具有一个已有标签和一个目标标签。以编号为2的目标节点为例进行说明,在确定目标标签之后,编号为2的目标节点具有一个已有标签“2”和一个目标标签“1”,该目标标签的来源邻居节点是编号为1的目标节点,该目标标签的来源邻居标签为第1个已有标签,表示该目标标签来源于编号为1的目标节点的第1个已有标签;根据该目标标签的来源邻居节点和来源邻居标签获得该目标标签,并将其作为编号为2的目标节点的已有标签,在步骤203完成后,该编号为2的目标节点具有两个已有标签。
在另一种可能的实现方式中,可以根据步骤202中获得的目标标签的来源初始节点获得该目标节点的一个目标标签,并将获取到的目标标签作为该目标节点的已有标签。
仍然以图5所示的示意图为例进行说明,对于编号为2的目标节点,在确定目标标签之后,编号为2的目标节点具有一个已有标签“2”和一个目标标签“1”,该目标标签的来源初始节点是编号为1的目标节点,是编号为1的目标节点的初始标签;根据该目标标签的来源初始节点从编号为1的目标节点处获得该目标标签,并将其作为编号为2的目标节点的已有标签,在步骤203完成后,该编号为2的目标节点具有两个已有标签。
若该目标节点具有多个目标标签,则可以根据该目标节点具有一个目标标签的情况的两种实现方式为该目标节点获取多个目标标签,重复上述两种实现方式中获得一个目标标签的方式,从而获得多个目标标签。
需要说明的是,以上获取一个或者多个目标标签的过程可以发生在步骤202的每一次迭代中,即,在每一次迭代中,通过步骤202为待划分社区的多个目标节点中的每个目标节点分别确定一个目标标签,然后通过步骤203获取该确定的一个目标标签作为该目标节点的一个已有标签;以上获取一个或者多个目标标签的过程还可以发生在多次迭代之后,即,通过步骤202在多次迭代中为待划分社区的多个目标节点中的每个目标节点分别确定多个目标标签,在多次迭代完成后,通过步骤203获取该确定的多个目标标签作为该目标节点的多个已有标签。
除此之外,若为待划分社区的多个目标节点中的每个目标节点确定多个目标标签之后获取该多个目标标签并作为该目标节点的已有标签,还可以通过以下方式实现:
若通过多次迭代为任一目标节点确定了多个目标标签,则根据为该任一目标节点确定的多个目标标签的信息合并该多个目标标签;
获取合并后的目标标签,根据合并后的目标标签得到该任一目标节点的已有标签。
参见图6,其示出了获取多个目标标签的示意图,以图6中的编号为2的目标节点为例,编号为2的目标节点具有1个已有标签“2”,该已有标签也是编号为2的目标节点的初始标签;经过两次迭代,编号为2的目标节点还具有两个已确定的目标标签,分别为“1”和“1”,都来源于编号为1的邻居节点。该两个目标标签的来源是相同的,则可以对该两个目标标签进行合并,获取合并后的目标标签“1”,并根据获取到的目标标签“1”得到编号为2的目标节点的两个已有标签“1”和“1”。可见,通过合并目标标签,可以使得传递的标签的个数从2个减少为1个,减少了网络开销。
进一步地,根据为该任一目标节点确定的多个目标标签的信息合并该多个目标标签中同源的目标标签。
其中,同源的目标标签是指来源于相同目标节点的标签。
可选地,同源的目标标签是该任一目标节点的同一邻居节点的标签,或者,同源的目标标签是同一目标节点的初始标签。
可选地,目标标签的信息可以是来源邻居节点和来源邻居标签,或者来源初始节点。
在一种可能的实现方式中,根据该多个目标标签的来源初始节点合并该多个目标节点中的同源的目标标签。
若该多个目标标签中的N个目标标签具有相同的来源初始节点,说明该N个目标标签都来源于该来源初始节点的初始标签,则可以合并该N个目标标签,从该来源初始节点处获得该合并后的目标标签,即该来源初始节点的初始标签。可见,通过合并目标标签,可以使得传递的标签的个数从N个减少为1个,减少了网络开销。
在另一种可能的实现方式中,根据该多个目标标签的来源邻居节点和来源邻居标签合并该多个目标节点中的同源的目标标签。其中,包括以下两种情况。
情况一:若该多个目标标签中的N个目标标签具有相同的来源邻居节点,但具有不同的来源邻居标签,则该N个目标标签是来源于相同目标节点的不同标签,则可以对该N个目标标签进行联合编码得到合并后的目标标签,并从该来源邻居节点处获得该合并后的目标标签。相对于分别获取该N个目标标签,联合编码可以压缩该N个目标标签的数据量,以减少网络开销。
情况二:若该多个目标标签中的N个目标标签具有相同的来源邻居节点,且具有相同的来源邻居标签,则该N个目标标签是来源于相同目标节点的同一标签,则可以合并该N个目标标签,从该来源初始节点处获得该合并后的目标标签,即该来源初始节点的来源邻居标签。可见,通过合并目标标签,可以使得传递的标签的个数从N个减少为1个,减少了网络开销。
步骤204、根据多个目标节点更新后的已有标签将多个目标节点划分为多个社区。
其中,更新后的已有标签是指经过步骤203中获得目标标签并作为已有标签之后得到的已有标签。
在一种可能的实现方式中,可以根据待划分社区的多个目标节点中的每两个相邻节点的相似度划分社区,从而实现社区发现,该实现方式包括:
根据待划分社区的多个目标节点中的每两个相邻节点更新后的已有标签确定该两个相邻节点的相似度;
根据待划分社区的多个目标节点中的每两个相邻节点的相似度划分多个社区,其中每个社区中的任两个相邻节点的相似度不小于第一相似度阈值。
其中,第一相似度阈值可以通过经验或者试验得到,例如,第一相似度阈值可以为0.9。
在另一种可能的实现方式中,若在根据上述实现方式划分社区之后,待划分社区的多个目标节点中有一个或者多个目标节点不属于已划分的多个社区中的任一社区,则该一个或者多个目标节点是孤立节点。可以通过以下方式将该一个或者多个孤立节点中的部分或者全部划分到已划分的多个社区中:
若待划分社区的多个目标节点中包括不属于已划分的多个社区中任一社区的孤立节点,且该孤立节点的一个邻居节点与该孤立节点的相似度不小于第二相似度阈值,将该孤立节点归入该孤立节点的该邻居节点所在的社区。其中,第二相似度小于第一相似度,第二相似度阈值可以通过经验或者试验得到,例如,第二相似度阈值可以为0.6。
其中,第一相似度和/或第二相似度是基于两个目标节点具有的相同的标签在该两个目标节点具有的标签中的比例确定。例如,两个相邻节点分别具有10个已有标签,其中有9个相同的已有标签,则该两个相邻节点的相似度为0.9。
示例性地,参见图7,其示出了将待划分社区的10个目标节点划分社区的示意图。在确定该10个目标节点中的每两个相邻节点的相似度后,将相似度不小于第一相似度0.9的目标节点划分为同一个社区,从而初步划分社区得到社区一和社区二,社区一包括编号为1-4的目标节点,社区二包括编号为6-10的目标节点,而编号为5的目标节点为孤立节点,不属于社区一或者社区二;然后对孤立节点进行进一步的社区划分,编号为5的目标节点与编号为4和8的邻居节点的相似度分别为0.6和0.6,该两个相似度都不小于第二相似度阈值0.6,则将编号为5的目标节点归入编号为4的邻居节点所在的社区,即社区一,同时,将编号为5的目标节点归入编号为8的邻居节点所在的社区,即社区二,从而将待划分社区的10个目标节点归入两个重叠的社区,完成社区发现。
本申请通过多次迭代得到网络中的多个目标节点的多个标签,在每一次迭代中,将一个目标节点的一个目标邻居节点的一个标签确定为该目标节点的一个目标标签;对于该多个目标节点中的任一目标节点,确定该目标节点的多个目标标签之后,获取该多个目标标签作为该目标节点的已有标签;根据该网络中的多个目标节点的已有标签划分社区。在为一个目标节点确定一个标签的过程中,只需要获取一个目标邻居节点的一个标签,大大减少了标签的传递量,从而见降低了网络开销。
此外,对于一个目标节点,若确定的多个目标标签存在同源的目标标签,则可以通过合并同源的目标标签,进一步减少标签的传递量,进而降低网络开销。
上文中结合图1至图7,详细描述了根据本发明实施例所提供的社区发现方法,下面将结合图8和图9描述根据本发明实施例所提供的社区发现的装置和设备。
参见图8,其示出了本发明实施例提供的一种社区发现装置800的框图,包括:第一确定模块810、第二确定模块820、获取模块830和划分模块840。
该第一确定模块810,用于确定待划分社区的多个目标节点,该多个目标节点中的每个目标节点具有一个或者多个邻居节点,该每个目标节点具有一个或者多个已有标签。
该第二确定模块820,用于对于多个目标节点中的任一目标节点,通过一次或者多次迭代为任一目标节点确定一个或者多个目标标签,其中,任一次迭代过程中,将该任一目标节点的一个目标邻居节点所具有的一个标签确定为该目标节点的一个目标标签,该目标邻居节点所具有的一个标签是该目标邻居节点的已有标签和该目标邻居节点的目标标签中的一个。
该获取模块830,用于获取为该任一目标节点确定的目标标签,并将确定的目标标签作为该任一目标节点的已有标签。
该划分模块840,用于根据多个目标节点更新后的已有标签将该多个目标节点划分为多个社区。
在一种可能的实施方式中,该获取模块830用于:
若通过多次迭代为该任一目标节点确定了多个目标标签,则根据为该任一目标节点确定的多个目标标签的信息合并该多个目标标签;
获取合并后的目标标签,根据该合并后的目标标签得到该任一目标节点的已有标签。
在另一种可能的实施方式中,多个目标节点中的每个目标节点具有一个初始标签,该获取模块830用于:
根据为该任一目标节点确定的多个目标标签的信息合并该多个目标标签中同源的目标标签;
其中,同源的目标标签是该任一目标节点的同一邻居节点的标签,或者,同源的目标标签是同一目标节点的初始标签。
对于多次迭代的终止条件,有以下两种可能的实施方式:
方式一:多次迭代终止条件是该多次迭代的次数等于迭代次数阈值。
方式二:在一次迭代中,基于该多个目标节点的已有标签和目标标签,将该多个目标节点划分为多个第一参考社区;若该多个第一参考社区与多个第二参考社区之间的差异小于差异阈值,则迭代终止,其中,多个第二参考社区是上一次迭代划分得到的社区。
在另一种可能的实施方式中,划分模块840用于:
根据该多个目标节点中的每两个相邻节点更新后的已有标签确定该两个相邻节点的相似度;
根据该多个目标节点中的每两个相邻节点的相似度划分多个社区,该社区中的任两个相邻节点的相似度不小于第一相似度阈值。
进一步地,划分模块840用于:
若该多个目标节点中包括不属于该多个社区中任一社区的孤立节点,且孤立节点的一个邻居节点与该孤立节点的相似度不小于第二相似度阈值,将该孤立节点归入该孤立节点的该邻居节点所在的社区,第二相似度小于第一相似度。
可选地,第一相似度和/或第二相似度是基于两个目标节点具有的相同的标签在该两个目标节点具有的标签中的比例确定。
本申请通过多次迭代得到网络中的多个目标节点的多个标签,在每一次迭代中,将一个目标节点的一个目标邻居节点的一个标签确定为该目标节点的一个目标标签;对于该多个目标节点中的任一目标节点,确定该目标节点的多个目标标签之后,获取该多个目标标签作为该目标节点的已有标签;根据该网络中的多个目标节点的已有标签划分社区。在为一个目标节点确定一个标签的过程中,只需要获取一个目标邻居节点的一个标签,大大减少了标签的传递量,从而见降低了网络开销。
此外,对于一个目标节点,若确定的多个目标标签存在同源的目标标签,则可以通过合并同源的目标标签,进一步减少标签的传递量,进而降低网络开销。
参见图9,其示出了本发明实施例提供的一种社区发现设备的结构示意图。该设备可能是服务器或者终端,如图9所示,该社区发现设备900包括处理器901、存储器902、通信接口903和总线904。其中,处理器901、存储器902和通信接口903通过总线904进行通信,也可以通过无线传输等其他手段实现通信。该存储器902用于存储指令,该处理器901用于执行该存储器902存储的指令。该存储器902存储程序代码,且处理器901可以调用存储器902中存储的程序代码执行以下操作:
确定待划分社区的多个目标节点,该多个目标节点中的每个目标节点具有一个或者多个邻居节点,该每个目标节点具有一个或者多个已有标签;
对于多个目标节点中的任一目标节点,通过一次或者多次迭代为任一目标节点确定一个或者多个目标标签,其中,任一次迭代过程中,将该任一目标节点的一个目标邻居节点所具有的一个标签确定为该目标节点的一个目标标签,该目标邻居节点所具有的一个标签是该目标邻居节点的已有标签和该目标邻居节点的目标标签中的一个;
获取为该任一目标节点确定的目标标签,并将确定的目标标签作为该任一目标节点的已有标签;
根据多个目标节点更新后的已有标签将该多个目标节点划分为多个社区。
应理解的是,在本发明实施例中,该处理器901可以是CPU,该处理器901还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器901可以是支持ARM架构的处理器。
该存储器902可以包括只读存储器和随机存取存储器,并向处理器901提供指令和数据。存储器902还可以包括非易失性随机存取存储器。例如,存储器902还可以存储设备类型的信息。
该存储器902可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
该总线904除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线904。
应理解,根据本发明实施例的社区发现设备900可对应于本发明实施例中的图8所示的社区发现装置800,并可以对应于执行根据本发明实施例中图2-7中任一所示方法中的执行主体,该执行主体中的各个模块的上述和其它操作和/或功能分别为了实现图2-7中任一的各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由计算系统的处理器执行时,使得计算系统能够执行图2-7中任一提供的社区发现方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行进行图2-7中任一提供的社区发现方法的指令。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在装置上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴光缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是装置能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(如软盘、硬盘和磁带等),也可以是光介质(如数字视盘(Digital Video Disk,DVD)等),或者半导体介质(如固态硬盘等)。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本发明的可选实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种社区发现方法,其特征在于,所述方法包括:
确定待划分社区的多个目标节点,所述多个目标节点中的每个目标节点具有一个或者多个邻居节点,所述每个目标节点具有一个或者多个已有标签;
对于所述多个目标节点中的任一目标节点,通过一次或者多次迭代为所述任一目标节点确定一个或者多个目标标签,其中,任一次迭代过程中,将所述任一目标节点的一个目标邻居节点所具有的一个标签确定为所述目标节点的一个目标标签,所述目标邻居节点所具有的一个标签是所述目标邻居节点的已有标签和所述目标邻居节点的目标标签中的一个;
获取为所述任一目标节点确定的目标标签,并将确定的目标标签作为所述任一目标节点的已有标签;
根据所述多个目标节点更新后的已有标签将所述多个目标节点划分为多个社区。
2.根据权利要求1所述的方法,其特征在于,所述获取为所述任一目标节点确定的目标标签,并将确定的目标标签作为所述任一目标节点的已有标签,包括:
若通过多次迭代为所述任一目标节点确定了多个目标标签,则根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签;
获取合并后的目标标签,根据所述合并后的目标标签得到所述任一目标节点的已有标签。
3.根据权利要求2所述的方法,其特征在于,所述多个目标节点中的每个目标节点具有一个初始标签,所述根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签,包括:
根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签中同源的目标标签;
其中,所述同源的目标标签是所述任一目标节点的同一邻居节点的标签,或者,所述同源的目标标签是同一目标节点的初始标签。
4.根据权利要求1-3中任一所述的方法,其特征在于,所述多次迭代终止条件是所述多次迭代的次数等于迭代次数阈值。
5.根据权利要求1-3中任一所述的方法,其特征在于,所述方法还包括:
在一次迭代中,基于所述多个目标节点的已有标签和目标标签,将所述多个目标节点划分为多个第一参考社区;
若所述多个第一参考社区与多个第二参考社区之间的差异小于差异阈值,则所述迭代终止,所述多个第二参考社区是上一次迭代划分得到的社区。
6.根据权利要求1-5任一所述的方法,其特征在于,所述根据所述多个目标节点更新后的已有标签将所述多个目标节点划分为多个社区,包括:
根据所述多个目标节点中的每两个相邻节点更新后的已有标签确定所述两个相邻节点的相似度;
根据所述多个目标节点中的每两个相邻节点的相似度划分多个社区,所述社区中的任两个相邻节点的相似度不小于第一相似度阈值。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
若所述多个目标节点中包括不属于所述多个社区中任一社区的孤立节点,且所述孤立节点的一个邻居节点与所述孤立节点的相似度不小于第二相似度阈值,将所述孤立节点归入所述孤立节点的所述邻居节点所在的社区,所述第二相似度小于所述第一相似度。
8.根据权利要求7所述的方法,其特征在于,所述第一相似度和/或所述第二相似度是基于两个目标节点具有的相同的标签在所述两个目标节点具有的标签中的比例确定。
9.一种社区发现装置,其特征在于,所述装置包括:
第一确定模块,用于确定待划分社区的多个目标节点,所述多个目标节点中的每个目标节点具有一个或者多个邻居节点,所述每个目标节点具有一个或者多个已有标签;
第二确定模块,用于对于所述多个目标节点中的任一目标节点,通过一次或者多次迭代为所述任一目标节点确定一个或者多个目标标签,其中,任一次迭代过程中,将所述任一目标节点的一个目标邻居节点所具有的一个标签确定为所述目标节点的一个目标标签,所述目标邻居节点所具有的一个标签是所述目标邻居节点的已有标签和所述目标邻居节点的目标标签中的一个;
获取模块,用于获取为所述任一目标节点确定的目标标签,并将确定的目标标签作为所述任一目标节点的已有标签;
划分模块,用于根据所述多个目标节点更新后的已有标签将所述多个目标节点划分为多个社区。
10.根据权利要求9所述的装置,其特征在于,所述获取模块用于:
若通过多次迭代为所述任一目标节点确定了多个目标标签,则根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签;
获取合并后的目标标签,根据所述合并后的目标标签得到所述任一目标节点的已有标签。
11.根据权利要求10所述的装置,其特征在于,所述多个目标节点中的每个目标节点具有一个初始标签,所述获取模块用于:
根据为所述任一目标节点确定的多个目标标签的信息合并所述多个目标标签中同源的目标标签;
其中,所述同源的目标标签是所述任一目标节点的同一邻居节点的标签,或者,所述同源的目标标签是同一目标节点的初始标签。
12.根据权利要求9-11中任一所述的装置,其特征在于,所述多次迭代终止条件是所述多次迭代的次数等于迭代次数阈值。
13.根据权利要求9-11中任一所述的装置,其特征在于,所述第二确定模块用于:
在一次迭代中,基于所述多个目标节点的已有标签和目标标签,将所述多个目标节点划分为多个第一参考社区;
若所述多个第一参考社区与多个第二参考社区之间的差异小于差异阈值,则所述迭代终止,所述多个第二参考社区是上一次迭代划分得到的社区。
14.根据权利要求9-13中任一所述的装置,其特征在于,所述划分模块用于:
根据所述多个目标节点中的每两个相邻节点更新后的已有标签确定所述两个相邻节点的相似度;
根据所述多个目标节点中的每两个相邻节点的相似度划分多个社区,所述社区中的任两个相邻节点的相似度不小于第一相似度阈值。
15.根据权利要求14所述的装置,其特征在于,所述划分模块用于:
若所述多个目标节点中包括不属于所述多个社区中任一社区的孤立节点,且所述孤立节点的一个邻居节点与所述孤立节点的相似度不小于第二相似度阈值,将所述孤立节点归入所述孤立节点的所述邻居节点所在的社区,所述第二相似度小于所述第一相似度。
16.根据权利要求15所述的装置,其特征在于,所述第一相似度和/或所述第二相似度是基于两个目标节点具有的相同的标签在所述两个目标节点具有的标签中的比例确定。
17.一种社区发现设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1-8中任一所述的社区发现方法。
18.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1-8中任一所述的社区发现方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811030448.2A CN110880150A (zh) | 2018-09-05 | 2018-09-05 | 社区发现方法、装置、设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811030448.2A CN110880150A (zh) | 2018-09-05 | 2018-09-05 | 社区发现方法、装置、设备和可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110880150A true CN110880150A (zh) | 2020-03-13 |
Family
ID=69727518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811030448.2A Withdrawn CN110880150A (zh) | 2018-09-05 | 2018-09-05 | 社区发现方法、装置、设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110880150A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111641517A (zh) * | 2020-04-29 | 2020-09-08 | 深圳壹账通智能科技有限公司 | 同质网络的社群划分方法、装置、计算机设备和存储介质 |
CN113590721A (zh) * | 2021-06-25 | 2021-11-02 | 中国人民银行数字货币研究所 | 一种区块链地址分类方法和装置 |
CN113593713A (zh) * | 2020-12-30 | 2021-11-02 | 南方科技大学 | 疫情防控方法、装置、设备和介质 |
-
2018
- 2018-09-05 CN CN201811030448.2A patent/CN110880150A/zh not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111641517A (zh) * | 2020-04-29 | 2020-09-08 | 深圳壹账通智能科技有限公司 | 同质网络的社群划分方法、装置、计算机设备和存储介质 |
CN113593713A (zh) * | 2020-12-30 | 2021-11-02 | 南方科技大学 | 疫情防控方法、装置、设备和介质 |
CN113590721A (zh) * | 2021-06-25 | 2021-11-02 | 中国人民银行数字货币研究所 | 一种区块链地址分类方法和装置 |
CN113590721B (zh) * | 2021-06-25 | 2024-01-30 | 中国人民银行数字货币研究所 | 一种区块链地址分类方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107368259B (zh) | 一种向区块链系统中写入业务数据的方法和装置 | |
CN110322349B (zh) | 一种数据的处理方法、装置及设备 | |
CN115526363A (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
US10936961B1 (en) | Automated predictive product recommendations using reinforcement learning | |
CN110880150A (zh) | 社区发现方法、装置、设备和可读存储介质 | |
CN110909182A (zh) | 多媒体资源搜索方法、装置、计算机设备及存储介质 | |
WO2020056973A1 (zh) | 跨平台产品推荐方法、装置、服务器和存储介质 | |
CN115862088A (zh) | 一种身份识别方法及装置 | |
CN113240505B (zh) | 图数据的处理方法、装置、设备、存储介质及程序产品 | |
CN110135943B (zh) | 产品推荐方法、装置、计算机设备和存储介质 | |
CN110442623B (zh) | 大数据挖掘方法、装置及数据挖掘服务器 | |
CN112818868B (zh) | 基于行为序列特征数据的违规用户识别方法和装置 | |
CN111666501B (zh) | 异常社团识别方法、装置、计算机设备和存储介质 | |
CN108696418B (zh) | 一种社交网络中隐私保护方法及装置 | |
CN109785867A (zh) | 双录流程配置方法、装置、计算机设备和存储介质 | |
CN107528969A (zh) | 电话拨打时间的管理方法、管理装置及终端设备 | |
CN112905987B (zh) | 账号识别方法、装置、服务器及存储介质 | |
CN111309801A (zh) | 一种联盟链分片的方法及装置 | |
US11080301B2 (en) | Storage allocation based on secure data comparisons via multiple intermediaries | |
CN112927004A (zh) | 用于大数据画像的信息云计算分析方法及信息推送服务器 | |
CN109712011B (zh) | 社区发现方法和装置 | |
CN113434765A (zh) | 客户回访方法、系统、设备及存储介质 | |
CN111488490A (zh) | 视频聚类方法、装置、服务器及存储介质 | |
CN111814051A (zh) | 一种资源类型确定方法及装置 | |
CN111368146A (zh) | 一种路径信息的查询方法及装置、存储介质和处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200313 |
|
WW01 | Invention patent application withdrawn after publication |