有向图中的louvain社区检测

请学着自己长大,参考连接《无向louvain社团算法》

无向到有向的修改真的很简单。如果你连这个都做不到,建议不要用了。每个算法与数据匹配的时候,都会对数据或者算法小修。如果你连小修都做不到的话,好好学习基础内容了,别想着飞了。。。。。
而且,会看这个的都是刚入门的。。。。尝试自己努力一把,毕竟这个还有指导你修改的方向。如果更深的,没人指导,还做的出来吗?

一、模块度概念



公式可以简化为:
ΔQ=Si,inw−∑totinSiout+∑totoutSiinw2\Delta Q=\frac{S_{i,in}}{w}-\frac{\sum_{tot}^{in}S_{i}^{out}+\sum_{tot}^{out}S_{i}^{in}}{w^2}ΔQ=wSi,in​​−w2∑totin​Siout​+∑totout​Siin​​

二、算法修改

louvain算法分为循环迭代两个阶段。具体的算法思路与无向加权网络相同。可以看上一篇文章。
在最初的划分过程中,有多少个节点就有多少个社团

  • 第一阶段
  1. 任意选择一个节点vid,考虑其关注的节点(即出边的邻居)wid.这里与无向图不同
  2. 将节点vid移动到wid所在的社区,
  3. 评估模块度收益

S_vin:表示节点vid的入边的权重总和=SiinS^{in}_iSiin​
s_vout:表示节点vid的出边的权重总和=SioutS^{out}_iSiout​
tot_out:社区内部的节点指向社区外部节点的所有边的权重之和=∑totout\sum_{tot}^{out}∑totout​
tot_in:社区外部的节点指向社区内部节点的所有边的权重之和=∑totin\sum_{tot}^{in}∑totin​
k_vcin:表示节点vid与wid所在社区的连边的权重之和

  1. 节点vid最终放入模块度收益最大的它关注节点所在的社团,并且这个收益为正

三、图片示意


文件。txt

101 103 3
102 103 1
102 105 2
102 102 4
103 105 2
104 101 2
105 103 1
107 106 3
107 204 2
201 105 1
201 202 2
202 201 3
202 203 3
203 202 3
203 201 4
203 204 1
204 107 3

【积】有向图中的louvain社区检测(二)相关推荐

  1. python3 + opencv +pyzbar实时检测二维码 / 定位二维码,并绘制出二维码的框和提取二维码内容

    python3 + opencv +pyzbar实时检测二维码 / 定位二维码,并绘制出二维码的框和提取二维码内容 1 pyzbar二维码检测模块 1.1. pyzbar模块介绍 1.2 pyzbar ...

  2. 如何计算图论中的模块化modularity指标,图论中的社区检测算法——Louvain community

    图论中的社区检测算法--Louvain community 前言 模块化指标介绍 数学定义 Matlab代码实现 使用实例 community_louvain函数 参考文献 前言 在过去的十年中,人们 ...

  3. 【积】louvain社团检测算法(python)代码图片双解(一)

    louvain社团检测算法(python) 这里写目录标题 louvain社团检测算法(python) 壹.完整代码 贰.分步解释 1.为网络中的每个节点分配一个社团: 2. 算法初始化 3. 第一阶 ...

  4. Leet Code题解 - 1559. Detect Cycles in 2D Grid 检测二维无向图中的环

    Leet Code题解 -- 1559. Detect Cycles in 2D Grid 检测二维无向图中的环 前言 一.题目描述 二.思路整理 1. 审题 2. 分布实现步骤 2.1 将二维数组处 ...

  5. 嵌入式设备和固件中的自动漏洞检测(二):动态分析与符号执行技术

    原文链接:Automatic Vulnerability Detection in Embedded Devices and Firmware: Survey and Layered Taxonomi ...

  6. bgll算法 matlab,一种复杂网络社区检测的方法与流程

    本发明涉及一种社区检测方法,具体说是一种复杂网络社区检测的方法. 背景技术: 过去几年中已有许多社区检测方法相继提出,其中应用最广泛的是基于模块度的最优化方法.然而,模块度最优化本质上是一个典型的NP ...

  7. 海量数据挖掘MMDS week3:社交网络之社区检测:基本技巧

    http:// blog.csdn.net/pipisorry/article/details/49052057 海量数据挖掘Mining Massive Datasets(MMDs) -Jure L ...

  8. python画聚类图、并且把聚类图保存起来_Python利用igraph绘制复杂网络聚类(社区检测)结果图-Go语言中文社区...

    前言:研究生期间主要做复杂网络聚类,也称为社区检测.临毕业前,老师让之前发表的论文里的算法代码C化,并写出界面进行可视化.由于之前虽然做过可视化,但基本上都是将聚类结果导入到pajek或者gephi这 ...

  9. PyTorch图神经网络实践(七)社区检测

    文章目录 前言 组合优化 社区检测 端到端的学习与优化 作者介绍 核心思想 技术手段 方法创新 代码复现 导入包 数据转换 ClusterNet模型 创建网络 参数设置和数据导入 训练网络 前言 最近 ...

  10. 图像匹配中的特征点检测之斑点检测(一)

    斑点检测 一.斑点检测 二.斑点检测中的几种算子 1.LoG算子 2.SIFT 3.DAISY 4.SURF 5.KAZE 三.算子之间对比 一.斑点检测 全局特征容易受到噪声干扰,而局部特征比较稳定 ...

最新文章

  1. python加颜色_Python 给屏幕打印信息加上颜色的实现方法
  2. 【Java集合源码剖析】TreeMap源码剖析
  3. html外边距的复合属性是,margin
  4. 01-UIContainerView纯代码实现及原理介绍
  5. SilverFoxServer出炉!!
  6. 如何在运行时使用SAP Commerce Cloud backoffice直接给类型增添新属性
  7. docker部署ubuntu并连接ssh远程调试代码
  8. Java线程面试题 Top 50 (转载)
  9. IOCP扩展方法AcceptEx, DisconnectEx, GetAcceptExSockaddr用法示例
  10. 边工作边刷题:70天一遍leetcode: day 56-1
  11. C++-十进制转二进制(matlab-dec2bin函数)
  12. 阿里45K高级Java岗,必备技能清单
  13. c语言switch语句可以用在数组上吗,Microchip工程师社区 - C语言switch语句不能给数组吗? - Microchip C语言编译器论坛 - 麦田论坛...
  14. (30)auth模块(django自带的用户认证模块)
  15. memcached服务安装与卸载
  16. 手把手教你用ls-dyna做入水冲击荷载仿真分析(一)大体介绍
  17. EXCEL批量删除行
  18. 用python画蟒蛇
  19. Chrome浏览器怎么调试网页标题字体大小和颜色?
  20. IE11不兼容array.from()解决方法

热门文章

  1. 我的计算机加密,安装加密系统后,打开我的电脑速度变慢
  2. echarts实现3D饼图
  3. Java本地缓存技术选型(Guava Cache、Caffeine、Encache)
  4. 用原生javascript制作日历
  5. web前端如何提升自我
  6. 音乐网站Spotify将融资4亿美元,估值84亿美元
  7. LSTM神经网络详解
  8. chromedriver与chrome各版本及下载地址
  9. 150.1 go语言开发实战慕课版
  10. 如何操作才能实现音频合并无缝衔接?只要掌握这个技巧