这是我第一次写博客!很开心和大家分享东西!最近在学习社区发现,其中模块度是衡量社区发现的一个重要指标,而且基于模块度进行社团挖掘的论文也很多,以前看了博客中的一位博主介绍的模块度,感觉非常好,不过这个博主采用的是matlab进行实现的,最近疫情严重,在家无聊,写了一个基于python3版本实现原理。在这里分享一下源码,供大家使用!其中模块度原理参考模块度原理

import numpy as npdef node_degree(node,array):#计算节点的度数degree =sum(array[node])return degreedef A(i,j,array):#判断两个节点是否存在边if array[i,j]==0:return 0else:return 1def k(i,j,array):#计算两个节点的度数积kij = node_degree(i,array) *node_degree(j,array)return kijdef judge_cluster(i,j,l):#判断两个节点是否在一个社区if l[i] == l[j]:return 1else:return 0def Q(array,cluster):q =0m =sum(sum(array))/2#总边数for i in range(array.shape[0]):for j in range(array.shape[0]):if judge_cluster(i,j,cluster) != 0:q +=(A(i,j,array) - (k(i,j,array)/(2*m))) *judge_cluster(i,j,cluster)q = q/(2*m)return q
if __name__ == '__main__':array = np.array([[0, 1, 1],[1, 0, 0],[1, 0, 0]])cluster = [2, 1, 2]print(Q(array, cluster))

基于python3的社区发现模块度计算相关推荐

  1. Python计算树模型(随机森林、xgboost等)的特征重要度及其波动程度:基于熵减的特征重要度计算及可视化、基于特征排列的特征重要性(feature permutation)计算及可视化

    Python计算树模型(随机森林.xgboost等)的特征重要度及其波动程度:基于熵减的特征重要度计算及可视化.基于特征排列的特征重要性(feature permutation)计算及可视化 目录

  2. 模块度计算python代码_转:模块度(Modularity)与Fast Newman算法讲解与代码实现

    一.背景介绍 Modularity(模块度), 这个概念是2003年一个叫Newman的人提出的.这个人先后发表了很多关于社区划分的论文,包括2002年发表的著名的Girvan-Newman(G-N) ...

  3. 图神经网络应用——基于深度学习的图相似度计算(以SIMGNN为例的保姆级讲解)

    为啥想写这篇文章呢..因为之前提到的图神经网络应用篇鸽了一年多了,把自己的研究方向做一个总结,并向其他同样研究方向的朋友做一个报告,如有错误,敬请指出.而且,这个研究方向人太少了,万望能借此引起更多人 ...

  4. 模块度计算python代码_LPA算法C++实现及模块度计算

    前言 这学期开始看社团检测的东西,了解了一些经典算法.比如GN算法,BGLL算法(又叫Louvain, 因为该算法是作者在Louvain大学时提出的),LPA算法,等等. 我先看的LPA(毕竟算法思想 ...

  5. karate-club空手道成员俱乐部社区模块度计算和节点着色

    import networkx as nx import numpy as np import matplotlib.pyplot as plt #获取空手道俱乐部成员数据 def getKarate ...

  6. 【机器学习】聚类算法、社区发现

    目录 前言 聚类和社区发现 社区发现 聚类算法 聚类-评估指标 社区发现-模块度 前言 最近方向是团案挖掘,关于聚类算法和社区发现,其实之前不怎么了解,最近得补补了. 聚类和社区发现 首先要先明白这两 ...

  7. 深度学习助力网络科学:基于深度学习的社区发现最新综述

    来源:AMiner科技 论文题目: A Comprehensive Survey on Community Detection with Deep Learning 论文网址: https://arx ...

  8. 【NLP实战】基于ALBERT的文本相似度计算

    实战是学习一门技术最好的方式,也是深入了解一门技术唯一的方式.因此,NLP专栏推出了实战专栏,让有兴趣的同学在看文章之余也可以自己动手试一试. ALBERT是一个比BERT要轻量,效果更好的模型,本篇 ...

  9. 【深度学习】最新「深度学习社区发现」综述论文,174篇文献概述六大类方法(含Github资源)...

    | 作者:Xing Su | 单位:麦考瑞大学 | 研究方向:人工智能与数据科学 社区发现能够揭示各类网络中成员的特征与联系,在网络分析中具有重要意义.近年来,深度学习技术在发现社区结构时,以处理高维 ...

最新文章

  1. 正则表达式语法规则收集
  2. vector机器人 CAN I USE MULTIPLE VECTORS OR DEVICES? 我可以使用多个向量或设备吗?
  3. python条件表达式有哪几个_python条件表达式:多项分支,双向分支
  4. 一张表按分类查询:只显示前2行
  5. 【错误记录】集成 Tinker 热修复报错 ( No such property: variantConfiguration for class: .ApplicationVariantData )
  6. 分析数据时,一定要避开这5大误区!
  7. 回退n帧协议c语言代码,[计算机网络]Ch.3 数据链路层
  8. mysql jpa总分数_JPA 查询COUNT示例
  9. Java访问静态常量_Java如何在Spring EL中访问静态方法或常量?
  10. java拼三级魔方_魔方秘籍(详细解法)《三阶》
  11. .NET的委托和匿名函数应用一例
  12. codewars--js--Happy numbers++无穷大判断
  13. js类型判断(数字、0、、undefined、null)
  14. 计算机职业核心素养,计算机专业人才核心素养研究-计算机专业论文-计算机论文(10页)-原创力文档...
  15. SCI常用词语及技巧 - 易智编译EaseEditing
  16. 如何建立英文字符的哈希表
  17. 【问题记录】ABP框架模板页面样式加载不完全
  18. 张量学习(1):张量的基本概念
  19. 威洛特:狗狗乱咬东西都是有原因的
  20. iOS CoreAnimation专题——实战篇(四)基于拖动手势的视图3D旋转效果

热门文章

  1. 114页5万字智能交通大数据平台建设方案
  2. Qmail+Vpopmail 安装相关文档
  3. Android 电子书应用完全开源代码
  4. 4.网络爬虫—Post请求(实战演示)
  5. Zabbix-01简单导入MIB文件并测试
  6. 苹果华为不送充电头后,这些人赚翻了
  7. 怎么用计算机算npv,CFA考试使用的计算器的用法
  8. 平面直角坐标系中的旋转公式_定比分点公式及定理
  9. xshow-2. 使用HTML 5 Boilerplate构建前端
  10. 火狐浏览器(firefox)简体中文最新版下载: