python隶属关系图模型:基于模型的网络中密集重叠社区检测方法

简介: python隶属关系图模型:基于模型的网络中密集重叠社区检测方法

隶属关系图模型 是一种生成模型,可通过社区联系产生网络。下图描述了一个两方社区隶属关系图和一个网络的示例(图1)。


  • 图1.左:两方社区关系图(圆形节点表示三个社区,正方形节点代表网络的节点),右:AGM生成的网络,社区关系图在左侧


当我们使用适合于实际网络的 合成网络时,合成网络具有与真实网络非常相似的特征(图2)。


  • 图2.边缘概率是Orkut网络中常见社区成员数量的函数  。



进行社区检测

 

如果用户指定了用户要检测的社区数量,则 会找到相应的社区数量。如果用户未假定某个概率,则 使用(1 / N ^ 2),其中N是图中的节点数。



例子

我们展示了一些由隶属关系图模型和基础网络检测到的社区的示例。

图创建

如何创建和使用有向图的示例:

# 图创建
G1 = snap.TNGraph.New() 
G1.AddNode(1) 
G1.AddNode(5) 
G1.AddNode(32) 
G1.AddEdge(1,5) G1.AddEdge(5,1) G1.AddEdge(5,32)


用于保存和加载图形的 代码如下所示:

# 使用 Forest Fire 模型创建一个网络图
G3 = snap.GenForestFire(1000, 0.35, 0.35) 
#保存 
FOut = snap.TFOut("test.graph") 
G3.Save(FOut) 
FOut.Flush() 
FIn = snap.TFIn("test.graph") 
G4 = snap.TNGraph.Load(FIn) 
# 保存从文本读取
snap.SaveEdgeList(G4, "test.txt", "以列表形式保存边数据") 
G5 = snap.LoadEdgeList(snap.PNGraph, "test.txt", 0, 1)

  • 悲惨世界中的人物网络中的社区。不共享社区的两个节点之间的边缘概率设置为0.01,以检测更紧凑的社区。
  • NCAA橄榄球队网络中的社区(通过将两个不共享社区的节点的边缘概率设置为0.1的5个试验的最佳结果。圆形区域表示检测到的社区,节点颜色表示NCAA会议。):


 

下载资料

我们提供6个数据集,每个数据集都有一个网络和一组真实的社区。真实社区是可以从数据中定义和标识的社区。每个数据集的网页都描述了我们如何识别数据集中的真实社区。

数据集:


类型 节点数 边缘 社区 描述

无向,社区 3,997,962 34,681,189 664,414 LiveJournal在线社交网络

无向,社区 65,608,366 1,806,067,135 1,620,991 Friendster在线社交网络

无向,社区 3,072,441 117,185,083 15,301,901 Orkut在线社交网络

无向,社区 1,134,890 2,987,624 16,386 YouTube在线社交网络

无向,社区 317,080 1,049,866 13,477 DBLP协作网络

无向,社区 334,863 925,872 271,570 亚马逊产品网络
相关文章
|
12月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
685 1
|
11月前
|
运维 监控 数据可视化
Python 网络请求架构——统一 SOCKS5 接入与配置管理
通过统一接入端点与标准化认证,集中管理配置、连接策略及监控,实现跨技术栈的一致性网络出口,提升系统稳定性、可维护性与可观测性。
|
12月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
1733 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
11月前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的青少年网络使用情况分析及预测系统
本研究基于Python大数据技术,构建青少年网络行为分析系统,旨在破解现有防沉迷模式下用户画像模糊、预警滞后等难题。通过整合多平台亿级数据,运用机器学习实现精准行为预测与实时干预,推动数字治理向“数据驱动”转型,为家庭、学校及政府提供科学决策支持,助力青少年健康上网。
|
11月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
12月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
690 2
|
12月前
|
JavaScript Java 大数据
基于python的网络课程在线学习交流系统
本研究聚焦网络课程在线学习交流系统,从社会、技术、教育三方面探讨其发展背景与意义。系统借助Java、Spring Boot、MySQL、Vue等技术实现,融合云计算、大数据与人工智能,推动教育公平与教学模式创新,具有重要理论价值与实践意义。
|
12月前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
344 0
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
582 17
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
431 10

推荐镜像

更多