Easygraph:全面高效的图分析与社会计算开源工具
前言
图是对事物之间关系的一种原生的表达,利用图可以深入直接地认识世界中的关联。社交网络、交易数据、知识图谱、交通运输、生物技术等都是图数据的典型应用。
社交网络是一种特殊的图数据,它建立在图网络的基础上,又遵循一定的社会学理论。
EasyGraph是复旦大学MSN小组开发的一款基于Python语言的图计算开源包,它是第一个包含全面的结构洞占据者探测方法的开源库,同时覆盖了图嵌入和其他一些传统的图计算方法。Easygraph补齐了现有的图分析开源库如igraph, NetworkX在社交网络领域的短板,同时利用混合编程和并行计算提高了运行效率
什么是结构洞理论
由于细化的工作分工,人们聚集到不同的群体中。在同一个群体中,人们的交流比跨群体的交流更密切,从而逐渐在不同社区之间形成术语障碍。在封闭网络中,人们可以以较低的成本获得更高可信度的信息。这些封闭的网络或社区可以促进内部交流和社区发展,并产生冗余和重叠的信息。
根据伯特提出的结构洞理论,充当这些社区的桥梁和中介的,就是结构洞占据者。结构洞占据者与社交网络的不同社区的联系增加了它在竞争领域的社会资本,而具有同质和重复信息的封闭网络不会带来这样的优势。这就是结构洞理论的核心。
结构洞的潜在价值在于信息效益和控制效益。结构洞占据者占据了社区之间独特的连接位置,从而可以访问多个非冗余信息源,获取高价值信息。在社会学研究中,社区中信息、想法和创新汇集的个体被称为意见领袖。结构洞占据者得益于互联社区的独特信息,拥有与意见领袖互动的优先权,从而发掘有利可图的机会。
基于社交网络分析,结构洞理论已经被开发出诸多应用场景。结构洞被用于企业人力资源管理,以及社交关系中高收益联系的建立。同时由于结构洞占据者占据了连接不同社区的关键结构位置,结构洞理论也被用于在传播信息方面最大化影响力。
由于结构洞体现了图的整体和局部结构,结构洞理论在不同的层面上都具有巨大的应用潜力
个体层面:分析个人行为和属性;预测用户情绪等
连接层面:链路预测;预测投资行为;分析社会关系等
图级层面:图分类,图同构和图分区等
全面的图网络分析工具

Easygraph的架构包含:
图的输入输出
图的可视化:利用结构洞占据者标记,CDF图和节点定位对复杂网络进行完整呈现

| karate club数据集的结构洞占据者标记 |

| karate club数据集CDF图 |
图分析方面,Easygraph覆盖了图表示学习,经典网络算法和结构洞占据者检测方法:
图表示学习 :DeepWalk,Need2Vee,LINE,SDNE等
社区检测,中心性,Component,Clustering等方法
Easygraph集成了全面的结构洞占据者探测方法,包含:
基于信息流的HIS, MaxD,HAM,NOBE,maxBlock等算法
基于网络中心性的WeakTie-Local,WeakTieBi,ICC,BICC,Ap_Greedy等算法
基于此架构,Easygraph能够在生物,交通,化学,社会,生态等众多领域的图数据分析中发挥应用价值
易用性和运行效率
Easygraph注重API的易用性和极低学习成本
以下是一个以6行python代码实现对图数据进行结构洞占据者分析并可视化的示例
from easygraph.datasets import get_graph_karateclub
import easygraph as eg
G = get_graph_karateclub()
# Calculate five shs(Structural Hole Spanners) in G
shs = eg.common_greedy(G, 5)
# Draw the Graph, and the shs is marked by red star
eg.draw_SHS_center(G, shs)
# Draw CDF curves of "Number of Followers" of SH spanners and ordinary users in G.
eg.plot_Followers(G, shs)
深入了解Easygraph
项目地址:easy-graph/Easy-Graph: EasyGraph is an open source graph processing library, which covers advanced graph processing methods in structural hole spanners detection, graph embedding and several classic methods. (github.com)
文档:EasyGraph by FudanMSN (easy-graph.github.io)
通过视频教程快速安装并运行第一个样例:Tutorials - YouTube
Easygraph:全面高效的图分析与社会计算开源工具的更多相关文章
- 用 CPI 火焰图分析 Linux 性能问题
https://yq.aliyun.com/articles/465499 用 CPI 火焰图分析 Linux 性能问题 yangoliver 2018-02-11 16:05:53 浏览1076 ...
- 关于图算法 & 图分析的基础知识概览
网址:https://learning.oreilly.com/library/view/graph-algorithms-/9781492060116/ 你肯定没有读过这本书,因为这本书的发布日期是 ...
- 用 GraphScope 像 NetworkX 一样做图分析
NetworkX 是 Python 上最常用的图分析包,GraphScoep 兼容 NetworkX 接口.本文中我们将分享如何用 GraphScope 像 NetworkX 一样在(大)图上进行分析 ...
- 火焰图分析openresty性能瓶颈
注:本文操作基于CentOS 系统 准备工作 用wget从https://sourceware.org/systemtap/ftp/releases/下载最新版的systemtap.tar.gz压缩包 ...
- 《BI那点儿事》SSRS图表和仪表——雷达图分析三国超一流谋士、统帅数据(图文并茂)
雷达图分析三国超一流谋士.统帅数据,献给广大的三国爱好者们,希望喜欢三国的朋友一起讨论,加深对传奇三国时代的了解 建立数据环境: -- 抽取三国超一流谋士TOP 10数据 DECLARE @t1 TA ...
- 也许游戏 它P/N图分析
关于游戏的问题,更多的时候是使用P/N图分析 p n p n p n p n n n n n n n n n p n p n p n p n n n n n ...
- SpaceSyntax【空间句法】之DepthMapX学习:第四篇 凸多边形图分析[未完]
这一篇正式讲解分析类型中的第一个,凸多边形分析,流程图参照上一篇的. 博客园/B站/知乎/CSDN @秋意正寒(我觉得这一篇肯定很多盗图的,那么我在版头加个本篇地址吧) https://www.cnb ...
- 发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser
发布一个高效的JavaScript分析.压缩工具 JavaScript Analyser 先发一段脚本压缩示例,展示一下JSA语法压缩和优化功能. try { //xxxx(); } catch (e ...
- NLP(十二)依存句法分析的可视化及图分析
依存句法分析的效果虽然没有像分词.NER的效果来的好,但也有其使用价值,在日常的工作中,我们免不了要和其打交道.笔者这几天一直在想如何分析依存句法分析的结果,一个重要的方面便是其可视化和它的图分析 ...
- GitHub + jsDelivr + PicGo + Imagine 打造稳定快速、高效免费图床
GitHub + jsDelivr + PicGo + Imagine 打造稳定快速.高效免费图床 前言 为什么要使用图床呢? 因为在不同平台发布同一篇文章的时候,最一个痛苦的点就是,图片存储问题,各 ...
随机推荐
- Object o = new Object();
对象的创建过程: 1,申请内存,并初始化: 2,构造器初始化: 3,o指向对象. 对象在内存中的存储布局: 使用jol工具打印java对象在内存的存储布局: 其中,对象头的组成: 对象头包括Mark ...
- CSS3实现了左右固定中间自适应的几种方法
1,弹性盒(flex)布局 中间 .center 区域设置 flex-grow: 1 或者 width: 100% .container { width: 100%; min-height: 2 ...
- IE不兼容问题 字符串格式化
Js现在支持高级语法,字符串格式化 alert(`aaaa${content}`); 我们使用一段完整的html来打开测试下: 1 <!DOCTYPE html> 2 <html&g ...
- 浅谈ArrayList和LinkedList
文章目录 前言 ArrayList和LinkedList List的方法 ArrayList add remove LinkedList remove get和peek push ArrayList和 ...
- 【Redis】持久化实现(RDB、AOF)
一.Redis RDB 持久化 1.RDB 工作原理 RDB(Redis Database)基于时间进行生成数据快照,默认只保留当前最新数据状态,优点时执行速度较快,但上次数据保存点到当前时间点之间的 ...
- 2022-12-02:有a块草莓蛋糕,有b块芝士蛋糕,两人轮流拿蛋糕, 每次不管是谁只能选择在草莓蛋糕和芝士蛋糕中拿一种, 拿的数量在1~m之间随意, 谁先拿完最后的蛋糕谁赢。 返回先手赢还是后手赢。
2022-12-02:有a块草莓蛋糕,有b块芝士蛋糕,两人轮流拿蛋糕, 每次不管是谁只能选择在草莓蛋糕和芝士蛋糕中拿一种, 拿的数量在1~m之间随意, 谁先拿完最后的蛋糕谁赢. 返回先手赢还是后手赢. ...
- 2020-10-27:go中select的执行流程是什么?
福哥答案2020-10-27: ***[2020-10-27:go中select的执行流程是什么?](https://bbs.csdn.net/topics/398044569)
- group_concat 自定义聚合查询
group_concat
- 【GiraKoo】安装Visual Assist失败,提示“此扩展已经安装到所有适用的产品”
[问题解决]安装Visual Assist失败,提示"此扩展已经安装到所有适用的产品" 在安装Visual Assist插件时,提示错误. 点击下一步之后,进入插件安装界面.插件安 ...
- Kubernetes 架构原则和对象设计
Kubernet¶ Kubernetes 架构原则和对象设计¶ 什么是云计算¶ 云计算平台的分类¶ 以Openstack为典型的虚拟化平台 虚拟机构建和业务代码部署分离. 可变的基础架构使后续维护风险 ...