CN111833199A - 社区结构的划分方法、装置、设备及计算机可读介质 - Google Patents

社区结构的划分方法、装置、设备及计算机可读介质 Download PDF

Info

Publication number
CN111833199A
CN111833199A CN201910295117.XA CN201910295117A CN111833199A CN 111833199 A CN111833199 A CN 111833199A CN 201910295117 A CN201910295117 A CN 201910295117A CN 111833199 A CN111833199 A CN 111833199A
Authority
CN
China
Prior art keywords
vertex
community structure
community
probability
representing
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.)
Pending
Application number
CN201910295117.XA
Other languages
English (en)
Inventor
潘剑飞
戴明洋
杨胜文
石逸轩
周俊
许金泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910295117.XA priority Critical patent/CN111833199A/zh
Publication of CN111833199A publication Critical patent/CN111833199A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提出一种社区结构的划分方法、装置、设备和计算机可读介质,所述方法包括:计算网络结构中的每个顶点的归属概率;根据获取的归属概率随机采样多个顶点,构成社区结构;计算社区结构模块度指标;判断所述社区结构的模块度指标是否达到预设条件;若否,则根据所述的模块度指标更新顶点的归属概率,并更新所述社区结构;若是,则输出当前的社区结构。本发明实施例通过顶点的归属概率确定社区结构,并通过迭代计算更新的方式,可以逐步优化全局的社区结构,使得社区结构中顶点的构成更加合理,更能体现全局的社区性。

Description

社区结构的划分方法、装置、设备及计算机可读介质
技术领域
本发明涉及数据分析技术领域,尤其涉及一种社区结构的划分方法及装置、 设备和计算机可读介质。
背景技术
人与人之间的交互能构成相互之间的关系,相互的交互存在稀疏和紧密性。 根据人与人之间的交互的紧密性和稀疏性,可以将不同的人归属于不同的社区 结构中。所述社区结构是指社区结构内部之间人与人交互紧密,社区结构之外 人与人交互稀疏。其中,所述社区结构中的每个人都可以表示为该社区结构中 的顶点。
由于基于不同的交互关系,可能形成不同的社区结构。因此需要在在众多 相互交形成的社区结构中选取相对合理的社区结构。
发明内容
本发明实施例提供一种社区结构的划分方法、装置、设备及计算机可读介 质,以解决或缓解现有技术中的一个或多个技术问题。
第一方面,本发明实施例提供了一种社区结构的划分方法,包括:
计算网络结构中的每个顶点的归属概率;
根据获取的归属概率随机采样多个顶点,构成社区结构;
计算所述社区结构的模块度指标;
判断所述社区结构的模块度指标是否达到预设条件;若否,则根据所述的 模块度指标更新顶点的归属概率,并更新所述社区结构。
在一种实施方式中,该方法还包括:若判断所述社区结构的模块度指标达 到预设条件,则输出当前的社区结构。
在一种实施方式中,所述计算网络结构中的每个顶点的归属概率,包括:
获取顶点编码Unm和社区编码
Figure BDA0002026228280000011
计算顶点的社区归属概率Q,
Figure BDA0002026228280000021
其中,所述softmax函数为归一化指数函数。
在一种实施方式中,所述根据获取的归属概率随机采样多个顶点,构成社 区结构,包括:
采用ε-greedy采样的策略将顶点分配到不同社区中,分配的概率表示为:
Figure BDA0002026228280000022
其中,πi为表示第i顶点分配到第k个社 区的概率,ε表示采样概率,k表示社区数量,Qij表示第i个顶点对应第j个社 区的归属概率。
在一种实施方式中,所述社区结构的模块度指标表示为:
Figure BDA0002026228280000023
其中,M表示社区结构的模块度,ki表示顶点i的度,kj表示顶点i的度, Aij表示顶点间的邻接矩阵,e表示整个网络的边数,δ(ci,cj)表示顶点i与顶点 j是否归属于同一个社区结构,如果顶点i与顶点j属于同一个社区结构,则 δ(ci,cj)=1,如果顶点i与顶点j不属于同一个社区结构,则δ(ci,cj)=0。
在一种实施方式中,所述根据所述的模块度指标更新顶点的归属概率,并 更新所述社区结构,包括:
判断社区结构模块度Mcurr是否大于历史最大社区结构的模块度Mmax,若 是,则赋予顶点奖励向量;
根据所述顶点的奖励向量计算社区结构损失函数的最小值;
利用所述社区结构函数的最小值更新所述顶点的社区归属概率。
在一种实施方式中,所述社区结构的损失函数表示为:
Figure BDA0002026228280000024
其中,LQ表示社区结构损失函数;Ri表示第i个顶点获取的奖励向量;γ表 示差距率;Q′i表示基于当前顶点动作决策后第i个顶点归属社区的概率;Qi表 示第i个顶点归属社区的概率。
第二方面,本发明实施例提供了一种社区结构的划分装置,包括:
归属概率计算模块,用于计算网络结构中的每个顶点的归属概率;
采样模块,用于根据获取的归属概率随机采样多个顶点,构成社区结构;
模块度计算模块,用于计算社区结构模块度指标;
更新模块,用于判断所述社区结构的模块度指标是否达到预设条件;若否, 则根据所述的模块度指标更新顶点的归属概率,并更新所述社区结构。
在一种实施方式中,所述装置还包括:
输出模块,用于若判断所述社区结构的模块度指标达到预设条件,则输出 当前的社区结构。
在一种实施方式中,所述归属概率计算模块包括:
获取子模块,用于获取顶点编码Unm和社区编码
Figure BDA0002026228280000031
计算子模块,用于计算顶点的社区归属概率Q,
Figure BDA0002026228280000032
其中,所述softmax函数为归一化指数函数。
在一种实施方式中,所述采样模块具体用于采用ε-greedy采样的策略将顶 点分配到不同社区中,分配的概率表示为:
Figure BDA0002026228280000033
其中,πi为表示第i顶点分配到第k个社区的概率,ε表示采样概率,k表示社 区数量,Qij表示第i个顶点对应第j个社区的归属概率。
在一种实施方式中,所述社区结构的模块度指标表示为:
Figure BDA0002026228280000034
其中,M表示社区结构的模块度,ki表示顶点i的度,kj表示顶点i的度, Aij表示顶点间的邻接矩阵,e表示整个网络的边数,δ(ci,cj)表示顶点i与顶点 j是否归属于同一个社区结构,如果顶点i与顶点j属于同一个社区结构,则 δ(ci,cj)=1,如果顶点i与顶点j不属于同一个社区结构,则δ(ci,cj)=0。
在一种实施方式中,所述更新模块包括:
判断子模块,用于判断社区结构模块度Mcurr是否大于历史最大社区结构的 模块度Mmax,若是,则赋予顶点奖励向量;
损失函数计算子模块,用于根据所述顶点的奖励向量计算社区结构损失函 数的最小值;
概率更新子模块,用于利用所述社区结构函数的最小值更新所述顶点的社 区归属概率。
在一种实施方式中,所述社区结构的损失函数表示为:
Figure BDA0002026228280000041
其中,LQ表示社区结构损失函数;Ri表示第i个顶点获取的奖励向量;γ表 示差距率;Q′i表示基于当前顶点动作决策后第i个顶点归属社区的概率;Qi表 示第i个顶点归属社区的概率。
第三方面,本发明实施例提供一种社区结构的划分设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或 多个处理器实现上述第一方面所述的社区结构的划分方法。
在一个可能的设计中,社区结构的划分设备的结构中包括处理器和存储器, 所述存储器用于存储支持社区结构的划分设备执行上述第一方面中社区结构的 划分方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所 述社区结构的划分设备还可以包括通信接口,用于社区结构的划分设备与其他 设备或通信网络通信。
第四方面,本发明实施例提供了一种计算机可读介质,用于存储社区结构 的划分装置所用的计算机软件指令,其包括用于执行上述第一方面的社区结构 的划分方法所涉及的程序。
在上述的一种方案中,本发明实施例通过顶点的归属概率确定社区结构, 并通过迭代计算更新的方式,可以逐步优化全局的社区结构,使得社区结构中 顶点的构成更加合理,更能体现全局的社区性。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上 述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描 述,本发明进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或 相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图 仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的 限制。
图1为本发明一实施例的社区结构的划分方法的流程图;
图2为本发明一实施例的步骤S110的具体步骤流程图;
图3为本发明一实施例的步骤S140的具体步骤流程图;
图4a为本发明一实施例的康奈尔社区结构的损失率变化的示意图;
图4b为本发明一实施例的德克萨斯州社区结构的损失率变化的示意图;
图4c为本发明一实施例的华盛顿社区结构的损失率变化的示意图;
图4d为本发明一实施例的威斯康星州社区结构的损失率变化的示意图;
图5为本发明一实施例的社区结构的划分装置的连接框图;
图6为本发明一实施例的归属概率计算模块的内部框图;
图7为本发明一实施例的更新模块的内部框图;
图8为本发明另一实施例的社区结构的划分设备框图;
图9为本发明另一实施例的社区结构的划分设备的结构框图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认 识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修 改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。 本发明实施例主要提供了一种通社区结构的划分的方法及装置,下面分别通过 以下实施例进行技术方案的展开描述。
如图1所示,在一种实施例中,本发明提供了一种社区结构的划分方法, 包括:
S110:计算网络结构中的每个顶点的归属概率。
在现实中的交互关系,比如人与人之间的关系等能构成网络结构的形式。 所述网络结构中的各个人物可以表示为该网络结构中的顶点。因此,在对人物 进行社区划分时,需要分别计算在该网络结构中的顶点的社区归属概率。
在一种实施方式中,如图2所示,所述步骤S110中可以包括:
S111:获取顶点编码Unm和社区编码
Figure BDA0002026228280000061
S112:计算顶点的社区归属概率Q,
Figure BDA0002026228280000062
其中,softmax函数为归一化指数函数,通过softmax函数可以计算获得顶点编码码Unm归属于 社区编码
Figure BDA0002026228280000063
的概率值。
S120:根据获取的归属概率随机采样多个顶点,构成社区结构。
在一种实施方式中,根据每个顶点的归属概率可以获得该顶点到社区的状 态。然而,由于计算的是单独每个顶点的归属概率,如果按照单个顶点的归属 概率进行社区划分,容易因为局部最优解而忽略了全局最优解。因此,所述步 骤S120根据每个顶点的概率分布进一步采样得到顶点对社区的划分。在一种实 施方式中,所述步骤S120中具体可以包括:
采用ε-greedy采样的策略将顶点分配到不同社区中,分配的概率表示为:
Figure BDA0002026228280000064
其中,πi为表示第i顶点分配到第k个社 区的概率,ε表示采样概率,k表示社区数量,Qij表示第i个顶点对应第j个社 区的归属概率。其中所述ε-greedy为强化学习策略的采样方法,通过上述的采 样概率的机制,可以跳出单个顶点的局部最优解,获取全局最优解。
S130:计算社区结构的模块度指标。
在通过采样的方式获取初始社区结构后,需要计算当前的社区结构的模块 度指标,以便进行指标评估。所述初始社区结构是首次对顶点进行采样构成的, 而往后每次进行迭代计算时,都会重新对顶点进行采样,构成新的社区结构。 因此每次都需要对新构成的社区结构的模块度指标进行计算。在一种实施方式 中,所述社区结构的模块度指标表示为:
Figure BDA0002026228280000071
其中,M表示社区结构的模块度,ki表示顶点i的度,kj表示顶点i的度, Aij表示顶点间的邻接矩阵,e表示整个网络的边数,δ(ci,cj)表示顶点i与顶点 j是否归属于同一个社区结构,如果顶点i与顶点j属于同一个社区结构,则 δ(ci,cj)=1,如果顶点i与顶点j不属于同一个社区结构,则δ(ci,cj)=0。
S140:判断所述社区结构的模块度指标是否达到预设条件。若否,则根据 所述的模块度指标更新顶点的归属概率,并更新所述社区结构。在一种实施方 式中,如果所述社区结构的模块度指标达到预设条件时,则输出当前的社区结 构。
在一种实施方式中,所述预设条件例如可以设置为:判断当前社区结构的 模块度指标是否达到稳定的最大值,其中在判断模块度指标的稳定性时比如可 以根据当前迭代计算的次数、趋势走向等方面进行判断。
如图3所示,在一种实施方式中,所述根据所述的模块度指标更新顶点的 归属概率,并更新所述社区结构,包括:
S141:判断社区结构模块度Mcurr是否大于历史最大社区结构的模块度 Mmax,若是,则赋予顶点奖励向量。
在一种实施方式中,当前的社区结构的优化目标是在顶点分配过程之中能 使最终的整个社区结构的模块度达到最大值。为此在每次迭代中,能获取到当 前状态的Mcurr,与历史Mmax进行比较,如果当前状态有提升,给予顶点奖励, 否者不予奖励。
S142:根据所述顶点的奖励向量计算社区结构损失函数的最小值。
在一种实施方式中,所述社区结构的损失函数表示为:
Figure BDA0002026228280000072
其中,LQ表示社区结构损失函数;Ri表示第i个顶点获取的奖励向量;γ表 示差距率;Q′i表示基于当前顶点动作决策后第i个顶点归属社区的概率;Qi表 示第i个顶点归属社区的概率。
S143:利用所述社区结构函数的最小值更新所述顶点的社区归属概率。
本实施方式中采用Q-learning的强化学习思想进一步确定更新
Figure BDA0002026228280000081
和Unm, 从而可以相应的修正归属概率Q和πi的概率策略,最终稳定到顶点对社区分布 的结果。在一种实施方式中,如图4a-4d所示,其为训练过程中的社区损失函 数的变化图。在图4a-4d中分别表示康奈尔(comell)、德克萨斯州(texas)、 华盛顿(Washington)和威斯康星州(wisconsin)等四个社区的损失函数的变 化示意图,从附图4a-4d中表示经过多次迭代训练,社区损失函数的损失率会 逐步减少并趋向稳定,从而可以获取到相对合理的社区结构。
本发明实施例通过顶点的归属概率确定社区结构,并通过迭代计算更新的 方式,可以逐步优化全局的社区结构,使得社区结构中顶点的构成更加合理, 更能体现全局的社区性。
如图5所示,在一种实施例中,本发明还提供了一种社区结构的划分装置, 包括:
归属概率计算模块110,用于计算网络结构中的每个顶点的归属概率。
采样模块120,用于根据获取的归属概率随机采样多个顶点,构成社区结 构。
模块度计算模块130,用于计算社区结构模块度指标。
更新模块140,用于判断所述社区结构的模块度指标是否达到预设条件; 若否,则根据所述的模块度指标更新顶点的归属概率,并更新所述社区结构。
如图6所示,在一种实施方式中,所述社区结构划分装置还包括:输出模 块150,用于若判断所述社区结构的模块度指标达到预设条件,则输出当前的 社区结构。
如图7所示,在一种实施方式中,所述归属概率计算模块110包括:
获取子模块111,用于获取顶点编码Unm和社区编码
Figure BDA0002026228280000082
计算子模块112,用于计算顶点的社区归属概率Q,
Figure BDA0002026228280000083
Figure BDA0002026228280000091
在一种实施方式中,所述采样模块120具体用于采用ε-greedy采样的策略 将顶点分配到不同社区中,分配的概率表示为:
Figure BDA0002026228280000092
Figure BDA0002026228280000093
其中,πi为表示第i顶点分配到第k个社区的概率,ε表示采样概率,k 表示社区数量,Qij表示第i个顶点对应第j个社区的归属概率。
在一种实施方式中,所述社区结构的模块度指标表示为:
Figure BDA0002026228280000094
其中,M表示社区结构的模块度,ki表示顶点i的度,kj表示顶点i的度, Aij表示顶点间的邻接矩阵,e表示整个网络的边数,δ(ci,cj)表示顶点i与顶点 j是否归属于同一个社区结构,如果顶点i与顶点j属于同一个社区结构,则 δ(ci,cj)=1,如果顶点i与顶点j不属于同一个社区结构,则δ(ci,cj)=0。
如图8所示,在一种实施方式中,所述更新模块140包括:
判断子模块141,用于判断社区结构模块度Mcurr是否大于历史最大社区结 构的模块度Mmax,若是,则赋予顶点奖励向量.
损失函数计算子模块142,用于根据所述顶点的奖励向量计算社区结构损 失函数的最小值。
概率更新子模块143,用于利用所述社区结构函数的最小值更新所述顶点 的社区归属概率。
在一种实施方式中,所述社区结构的损失函数表示为:
Figure BDA0002026228280000095
其中,LQ表示社区结构损失函数;Ri表示第i个顶点获取的奖励向量;γ表 示差距率;Q′i表示基于当前顶点动作决策后第i个顶点归属社区的概率;Qi表 示第i个顶点归属社区的概率。
本实施例的社区结构的划分装置与上述实施例的社区结构的划分方法的原 理类似,故不再赘述。
在另一个实施例中,本发明还提供一种社区结构的划分设备,如图9所示, 该设备包括:存储器510和处理器520,存储器510内存储有可在处理器520 上运行的计算机程序。所述处理器520执行所述计算机程序时实现上述实施例 中的社区结构的划分方法。所述存储器510和处理器520的数量可以为一个或 多个。
该设备还包括:
通信接口530,用于与外界设备进行通信,进行数据交互传输。
存储器510可能包含高速RAM存储器,也可能还包括非易失性存储器 (non-volatile memory),例如至少一个磁盘存储器。
如果存储器510、处理器520和通信接口530独立实现,则存储器510、处 理器520和通信接口530可以通过总线相互连接并完成相互间的通信。所述总 线可以是工业标准体系结构(ISA,Industry Standard Architecture)总线、外部 设备互连(PCI,PeripheralComponent)总线或扩展工业标准体系结构(EISA, Extended Industry StandardComponent)总线等。所述总线可以分为地址总线、 数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示 仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器510、处理器520及通信接口530集 成在一块芯片上,则存储器510、处理器520及通信接口530可以通过内部接 口完成相互间的通信。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、 “具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特 征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描 述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合 适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说 明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示 相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第 二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个” 的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表 示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码 的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其 中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或 按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员 所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认 为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机 可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处 理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统) 使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算 机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行 系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
本发明实施例所述的计算机可读介质可以是计算机可读信号介质或者计算 机可读存储介质或者是上述两者的任意组合。计算机可读存储介质的更具体的 示例至少(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子 装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器 (ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以 及便携式只读存储器(CDROM)。另外,计算机可读存储介质甚至可以是可在 其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质 进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电 子方式获得所述程序,然后将其存储在计算机存储器中。
在本发明实施例中,计算机可读信号介质可以包括在基带中或者作为载波 一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据 信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的 组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机 可读介质,该计算机可读介质可以发送、传播或者传输用于指令执行系统、输 入法或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代 码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。 在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执 行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方 式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有 用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合 逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA) 等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部 分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计 算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中, 也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块 中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的 形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品 销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以 是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于 此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到 其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的 保护范围应以所述权利要求的保护范围为准。

Claims (16)

1.一种社区结构的划分方法,其特征在于,包括:
计算网络结构中的每个顶点的归属概率;
根据获取的归属概率随机采样多个顶点,构成社区结构;
计算所述社区结构的模块度指标;
判断所述社区结构的模块度指标是否达到预设条件;若否,则根据所述的模块度指标更新顶点的归属概率,并更新所述社区结构。
2.根据权利要求1所述的方法,其特征在于,还包括:
若判断所述社区结构的模块度指标达到预设条件,则输出当前的社区结构。
3.根据权利要求1所述的方法,其特征在于,所述计算网络结构中的每个顶点的归属概率,包括:
获取顶点编码Unm和社区编码
Figure FDA0002026228270000011
计算顶点的社区归属概率Q,
Figure FDA0002026228270000012
其中,所述softmax函数为归一化指数函数。
4.根据权利要求1所述的方法,其特征在于,所述根据获取的归属概率随机采样多个顶点,构成社区结构,包括:
采用ε-greedy采样的策略将顶点分配到不同社区中,分配的概率表示为:
Figure FDA0002026228270000013
其中,πi为表示第i顶点分配到第k个社区的概率,ε表示采样概率,k表示社区数量,Qij表示第i个顶点对应第j个社区的归属概率。
5.根据权利要求1所述的方法,其特征在于,所述社区结构的模块度指标表示为:
Figure FDA0002026228270000014
其中,M表示社区结构的模块度,ki表示顶点i的度,kj表示顶点i的度,Aij表示顶点间的邻接矩阵,e表示整个网络的边数,δ(ci,cj)表示顶点i与顶点j是否归属于同一个社区结构,如果顶点i与顶点j属于同一个社区结构,则δ(ci,cj)=1,如果顶点i与顶点j不属于同一个社区结构,则δ(ci,cj)=0。
6.根据权利要求1所述的方法,其特征在于,所述根据所述的模块度指标更新顶点的归属概率,并更新所述社区结构,包括:
判断社区结构模块度Mcurr是否大于历史最大社区结构的模块度Mmax,若是,则赋予顶点奖励向量;
根据所述顶点的奖励向量计算社区结构损失函数的最小值;
利用所述社区结构函数的最小值更新所述顶点的社区归属概率。
7.根据权利要求6所述的方法,其特征在于,所述社区结构的损失函数表示为:
Figure FDA0002026228270000021
其中,LQ表示社区结构损失函数;Ri表示第i个顶点获取的奖励向量;γ表示差距率;Q′i表示基于当前顶点动作决策后第i个顶点归属社区的概率;Qi表示第i个顶点归属社区的概率。
8.一种社区结构的划分装置,其特征在于,包括:
归属概率计算模块,用于计算网络结构中的每个顶点的归属概率;
采样模块,用于根据获取的归属概率随机采样多个顶点,构成社区结构;
模块度计算模块,用于计算所述社区结构的模块度指标;
更新模块,用于判断所述社区结构的模块度指标是否达到预设条件;若否,则根据所述的模块度指标更新顶点的归属概率,并更新所述社区结构。
9.根据权利要求8所述的装置,其特征在于,还包括:
输出模块,用于若判断所述社区结构的模块度指标达到预设条件,则输出当前的社区结构。
10.根据权利要求8所述的装置,其特征在于,所述归属概率计算模块包括:
获取子模块,用于获取顶点编码Unm和社区编码
Figure FDA0002026228270000022
计算子模块,用于计算顶点的社区归属概率Q,
Figure FDA0002026228270000023
其中,所述softmax函数为归一化指数函数。
11.根据权利要求8所述的装置,其特征在于,所述采样模块具体用于采用ε-greedy采样的策略将顶点分配到不同社区中,分配的概率表示为:
Figure FDA0002026228270000031
其中,πi为表示第i顶点分配到第k个社区的概率,ε表示采样概率,k表示社区数量,Qij表示第i个顶点对应第j个社区的归属概率。
12.根据权利要求8所述的装置,其特征在于,所述社区结构的模块度指标表示为:
Figure FDA0002026228270000032
其中,M表示社区结构的模块度,ki表示顶点i的度,kj表示顶点i的度,Aij表示顶点间的邻接矩阵,e表示整个网络的边数,δ(ci,cj)表示顶点i与顶点j是否归属于同一个社区结构,如果顶点i与顶点j属于同一个社区结构,则δ(ci,cj)=1,如果顶点i与顶点j不属于同一个社区结构,则δ(ci,cj)=0。
13.根据权利要求8所述的装置,其特征在于,所述更新模块包括:
判断子模块,用于判断社区结构模块度Mcurr是否大于历史最大社区结构的模块度Mmax,若是,则赋予顶点奖励向量;
损失函数计算子模块,用于根据所述顶点的奖励向量计算社区结构损失函数的最小值;
概率更新子模块,用于利用所述社区结构函数的最小值更新所述顶点的社区归属概率。
14.根据权利要求13所述的装置,其特征在于,所述社区结构的损失函数表示为:
Figure FDA0002026228270000033
其中,LQ表示社区结构损失函数;Ri表示第i个顶点获取的奖励向量;γ表示差距率;Q′i表示基于当前顶点动作决策后第i个顶点归属社区的概率;Qi表示第i个顶点归属社区的概率。
15.一种社区结构的划分设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行根据时,使得所述一个或多个处理器实现如权利要求1-7中任一所述的社区结构的划分方法。
16.一种计算机可读介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的社区结构的划分方法。
CN201910295117.XA 2019-04-12 2019-04-12 社区结构的划分方法、装置、设备及计算机可读介质 Pending CN111833199A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910295117.XA CN111833199A (zh) 2019-04-12 2019-04-12 社区结构的划分方法、装置、设备及计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910295117.XA CN111833199A (zh) 2019-04-12 2019-04-12 社区结构的划分方法、装置、设备及计算机可读介质

Publications (1)

Publication Number Publication Date
CN111833199A true CN111833199A (zh) 2020-10-27

Family

ID=72914284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910295117.XA Pending CN111833199A (zh) 2019-04-12 2019-04-12 社区结构的划分方法、装置、设备及计算机可读介质

Country Status (1)

Country Link
CN (1) CN111833199A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113593713A (zh) * 2020-12-30 2021-11-02 南方科技大学 疫情防控方法、装置、设备和介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113593713A (zh) * 2020-12-30 2021-11-02 南方科技大学 疫情防控方法、装置、设备和介质

Similar Documents

Publication Publication Date Title
CN108701250B (zh) 数据定点化方法和装置
CN110956202B (zh) 基于分布式学习的图像训练方法、系统、介质及智能设备
CN112465043B (zh) 模型训练方法、装置和设备
GB2605218A (en) Graph Neural Networks for datasets with heterophily
US20180293486A1 (en) Conditional graph execution based on prior simplified graph execution
US10733498B1 (en) Parametric mathematical function approximation in integrated circuits
CN108805174A (zh) 聚类方法及装置
CN111723901A (zh) 神经网络模型的训练方法及装置
CN111159481B (zh) 图数据的边预测方法、装置及终端设备
CN114416351A (zh) 资源分配方法、装置、设备、介质及计算机程序产品
CN111833199A (zh) 社区结构的划分方法、装置、设备及计算机可读介质
CN107463486B (zh) 系统性能分析方法、装置及服务器
CN110275895B (zh) 一种缺失交通数据的填充设备、装置及方法
CN109784687B (zh) 智慧云制造任务调度方法、可读存储介质和终端
CN109767094B (zh) 智慧云制造任务调度装置
JPH09204310A (ja) 判断規則修正装置と判断規則修正方法
CN112416560A (zh) 众包场景中对于数值任务的真值推断和在线任务分配方法
CN105844110B (zh) 一种基于gpu的自适应邻域禁忌搜索求解软硬件划分方法
CN114724103A (zh) 神经网络处理系统、指令生成方法、装置及电子设备
CN110705593B (zh) 训练关系网络嵌入模型和确定使用概率的方法及装置
CN109918567B (zh) 出行方式推荐方法及装置
CN109492759B (zh) 神经网络模型预测方法、装置和终端
CN108831548B (zh) 远程智能医疗的优化方法、装置及系统
US11250319B1 (en) Circuit architecture with biased randomization
CN110147881B (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