【定义】Centrality:图中每个节点v的相对重要度c(v),重要度是什么可根据具体应用定义。

【估计方法】

Degree centrality

Betweenness centrality

Closeness centrality

Eigenvector centrality

PageRank及其他

通常,Centrality的估计有几种方法:

1.  Degree centrality

计算公式:C(v)=degree(v)

备注:节点v处的边数直接作为centrality,若边是有向的,则可以有两个c(v)的定义:入度数和出度数

此定义也可视为到v距离为1的所有路径长度。

2. Betweenness centrality(Freeman Linton, 1977)

计算公式:C(v)=图中所有除节点v外的节点对之间经过v的最短路径数/图中所有除节点v外的节点对之间所有的最短路径数;

备注:衡量v作为路由器的功率。

计算复杂度:

1)Floyd-Warshall algorithm(也称Floyd’s algorithm, Roy-Warshall algorithm, Roy-Floyd algorithm, WFI algorithm,基于动态规划的计算任意两点间最短路径的算法,也可用于计算有向图的传递闭包),平均复杂度为theta(|V|^3),|V|为图中节点总数。

2)Johnson’s algorithm,也是计算最短路径的算法,在稀疏图中(有向、有边权),最坏情况下,O(|V|^2*Log|V|+|V|*|E|)

3)Brandes' algorithm (a faster algorithm for betweenness centrality, 2001), 在无权重(同权重)的图上,最坏情况下O(|V|*|E|)

3. Closeness centrality(Freeman, 1978; Opsahl et al., 2010; Wasserman and Faust, 1994)

计算公式:从v到所有其他节点的最短距离和的倒数。

备注1:这个centrality只能用于连通图,非联通图上会出现无穷大,然后所有节点的centrality都是0;

备注2:这个centrality可用于衡量一个节点将信息传播到其他节点的时间或者花费,能用来寻找图中的community leader。

修正1:Dangalchev(2006)对上述定义做了修正,将v到其他节点t的最短距离d(v,t)修正为2^(-d(v,t)),然后对除v之外的所有节点t的该值求和,作为centrality,使之能够用到非联通图上。

修正2:Opsahl(2010)和Boldi and Vigna(2013)做了另外一个修正,使得其能用到非联通图上,原来的定义中先对最短距离求和,然后求倒数,该修正中反过来,先对到每个节点的距离求倒数,在对倒数求和,作为cnetrality。

4. Eigenvector centrality

5. PageRank及其他

图:centrality的更多相关文章

  1. graph-tool文档(一)- 快速开始使用Graph-tool - 3.图的过滤

    目录: 图的过滤 图视图 -- 组合图视图 名词解释: filter:过滤 mask:屏蔽 inverted parameter:倒参数 overhead:开销 minimum spanning tr ...

  2. Social Network Analysis的Centrality总结,以及networkx实现EigenCentrality,PageRank和KatzCentrality的对比

    本文主要总结近期学习的Social Network Analysis(SNA)中的各种Centrality度量,我暂且翻译为中心度.本文主要是实战,理论方面几乎没有,因为对于庞大的SNA,我可能连门都 ...

  3. 关系网络理论︱细讲中介中心性(Betweeness Centrality)

    关系网络在我认为都是一种很简单暴力地能挖掘人群特征关系的一种方式,特别今天去听了一场关于AI与金融领域的结合,里面提到了拓扑分析其实就是关系网络的解释.我在之前的文章( R语言︱SNA-社会关系网络- ...

  4. 图数据库-Neo4j-常用算法

    本次主要学习图数据库中常用到的一些算法,以及如何在Neo4j中调用,所以这一篇偏实战,每个算法的原理就简单的提一下. 1. 图数据库中常用的算法 PathFinding & Search 一般 ...

  5. 关于图算法 & 图分析的基础知识概览

    网址:https://learning.oreilly.com/library/view/graph-algorithms-/9781492060116/ 你肯定没有读过这本书,因为这本书的发布日期是 ...

  6. 【图机器学习】cs224w Lecture 15 - 网络演变

    目录 Macroscopic Forest Fire Model Microscopic Temporal Network Temporal PageRank Mesoscopic 转自本人:http ...

  7. 图计算 on nLive:Nebula 的图计算实践

    本文首发于 Nebula Graph Community 公众号 在 #图计算 on nLive# 直播活动中,来自 Nebula 研发团队的 nebula-plato 维护者郝彤和 nebula-a ...

  8. 图数据库|基于 Nebula Graph 的 BetweennessCentrality 算法

    本文首发于 Nebula Graph Community 公众号 ​在图论中,介数(Betweenness)反应节点在整个网络中的作用和影响力.而本文主要介绍如何基于 Nebula Graph 图数据 ...

  9. 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))

    关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...

随机推荐

  1. Android开发第二阶段(6)

    今天:对sdcard的操作有了进一步的了解和深入,为程序可以自主扫描并添加sdcard的MP3格式文件 明天:最后的修正.

  2. Numpy and Pandas

    安装 视频链接:https://morvanzhou.github.io/tutorials/data-manipulation/np-pd/ pip install numpy pip instal ...

  3. Hash开散列 拉链法

    #include<iostream> #include<cstdio> using namespace std; const int maxn=1000007; struct ...

  4. HDU 5646 DZY Loves Partition

    题目链接: hdu:http://acm.hdu.edu.cn/showproblem.php?pid=5646 bc:http://bestcoder.hdu.edu.cn/contests/con ...

  5. springMVC 流程

    springMVC流程控制 SpringMVC流程 web.xml 中配置 org.springframework.web.servlet.DispatcherServlet 这一步其实和spring ...

  6. [mysqld_safe]centos7 mysql 安装与配置

    查资料发现是CentOS 7 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了. 有两种解决办法: 安装mariadb [root@a ~]#  yum install mar ...

  7. Java包名命名规则(转载)

    转载自:http://lilinhai548.blog.163.com/blog/static/5847332920155132151359/ 鸣谢原作者  学习Java的童鞋们都知道,Java的包. ...

  8. zuoyeQAQ

    public class StringAPIDemo { /** * @param args */ public static void main(String[] args) { // TODO A ...

  9. CodeForces Round #527 (Div3) D1. Great Vova Wall (Version 1)

    http://codeforces.com/contest/1092/problem/D1 Vova's family is building the Great Vova Wall (named b ...

  10. EasyUI中DataGrid构建复合表头

    在使用easyui的DataGrid控件时,构建复合表头就显得非常简单了.只需要在使用columns属性时通过数组的方式编写列名即可.如我们需要构建成一个如下的表头: Columns的代码如下: co ...