图论概念:Degree Centrality 和 Betweenness Centrality

该概念是我看到:

http://www.impactjournals.com/oncotarget/index.php?journal=oncotarget&page=article&op=view&path%5B%5D=14140&path%5B%5D=45094

中的:Degree Centrality Betweenness Centrality

【GSE44805 dataset】



知乎上讨论图论概念: https://www.zhihu.com/question/22610633


基本概念

最常见的度量节点Centrality的方式有三种:

clipboard (图来自:http://orgnet.com/sna.html

Degree Centrality:

这是最常见,也是最简单的方法。在无向网络中,我们可以用一个节点的度数(就是社交网络中用户的好友数)来衡量Centrality:

C_D(v)= \text{deg}(v)

上图,节点Diane的好友数最多,有6个人,所以她成为了Degree Centrality最高的节点。
真实的社交网络中,Degree Centrality高的那些人一般都是大明星,有很大的知名度,比如微博中的姚晨。

Closeness Centrality:

如果节点到图中其它节点的最短距离都很小,那么我们认为该节点的Closeness Centrality高。
这个定义其实比Degree Centrality从几何上更符合中心度的概念,因为到其它节点的平均最短距离最小,意味着这个节点从几何角度看是出于图的中心位置。
在上图中,Fernando和Garth虽然好友数不如Diane,但他们到其它所有节点的最短距离是最小的。(直观上说,Diane虽然好友数多,但离图的右半部分的节点更加的远)

Closeness Centrality高的节点一般扮演的是八婆的角色(gossiper)。他们并不是明星,但是乐于在不同的人群之间传递消息。

Betweenness Centrality:

这个概念解释稍微麻烦些。
对于网络中的两个节点A和B,他们之间的最短路径可能有很多条。
例如上图中的Andre和Garth,它们的最短路径可以是Andre-Diane-Garth, Andre-Beverly-Garth, Andre-Fernando-Garth,有三条。
计算网络中任意两个节点的所有最短路径,如果这些最短路径中有很多条都经过了某个节点,那么就认为这个节点的Betweenness Centrality高:

C_B(v)= \sum_{s \neq v \neq t \in V}\frac{\sigma_{st}(v)}{\sigma_{st}}

其中\sigma_{st}表示的是节点s和t之间的最短路径的数量,而\sigma_{st}(v)是最短路径中经过节点v的数量。

上图中,Heather就是Betweenness Centrality最高的节点,因为Ike和Jane到其它节点的路径都需要经过Heather。

概念的扩展

Degree Centrality的本质是什么?其实是到某个节点的距离为1的最短路径的数量。
在这个概念之上,我们可以做一些扩展,例如:
可以定义一种新的Centrality,表示到某个节点的距离为k的最短路径的数量 –  geodesic k-path centrality;还可以将最短路径的概念替换成Edge-disjoint path,centrality变成了 edge-disjoint k-path centrality;

“It is apparent that the variations among the degree-based measures are due entirely to the kinds of restrictions placed on the kinds of walks counted. This defines one typological dimension that we can use to classify measures. We refer to this dimension as Walk Type.”

Closeness Centrality采用的是两点间所有路径的最短值。一个可能的变种是不采用最短值,而是使用两点间所有路径的平均值;原始的定义是计算节点到网络中所有其它节点的最短路径长度,还可以考虑先定义一些关键的节点,我们只计算到这些关键节点的最短路径长度-centroid centrality;

degree-like measure“count the number or volume of walks (of some kind) joining each node to all others. We shall refer to these as volume measures. Another set of centrality measures assesses the lengths of the walks that a node is involved in. We call these length measures. The distinction between volume measures and length measures forms another classificatory dimension, which we call Walk Property.”

Betweenness Centrality计算的是经过某节点的最短路径的数量,一个可能的变种是不使用最短路径,而是采用所有经过该节点的路径数量。当然,所有的路径可能太宽泛了,可以只计算经过该节点的长度为k的路径 – k-betweenness centrality;

“All  of  the  measures  considered  so  far—including  both  the  volume  and  the  length measures—assess walks that emanate from or terminate with a given node. We shall refer to these as radial measures. Another class of centrality measures exists which are based on the number of walks that pass through a given node. We call these medial measures. The distinction between radial and medial measures forms the third classificatory dimension, which we call Walk Position.”

详细的centrality的扩展和分类见: “A Graph-theoretic perspective on centrality, 2006”

结语

为什么要提及概念的扩展。因为在大数据量下,经典的Closeness Centrality和Betwenness Centrality几乎都是不可计算的。我认为,在大数据的前提下,应该定义一些适合大规模计算的新的Centrality。
另外,从广义上说,PageRank其实也是一种定义网络中节点Centrality的方法。

—END—





---------------

heatmap: http://hemi.biocuckoo.org/index.php

直肠癌免疫评分: http://clincancerres.aacrjournals.org/content/20/7/1891.long#ref-15

https://greatpowerlaw.wordpress.com/2012/10/29/centrality/



### 中心性映射工具与概念图论网络分析领域,中心性度量用于评估节点在网络中的重要性影响力。常见的几种中心性指标包括: #### 度中心性 (Degree Centrality) 这是最简单的中心性衡量方法之一,计算某个节点连接到其他多少个节点。对于无向图而言,就是该节点的邻居数量;对于有向图,则分为入度(指向此节点的数量)出度(从此节点发出的数量)。这种方法简单直观,在某些情况下能很好地反映节点的重要性[^1]。 ```python import networkx as nx G = nx.karate_club_graph() degree_centrality = nx.degree_centrality(G) print(degree_centrality) ``` #### 接近中心性 (Closeness Centrality) 接近中心性的定义是一个节点到达其它所有节点平均路径长度的倒数。具有高接近中心性的节点能够更快速地与其他大部分节点通信交流。这有助于识别那些处于网络核心位置的关键个体或实体[^2]。 ```python closeness_centrality = nx.closeness_centrality(G) print(closeness_centrality) ``` #### 中介中心性 (Betweenness Centrality) 中介中心性关注的是有多少条最短路径会经过特定的一个节点。拥有较高中介中心性的节点往往扮演着桥梁的角色,可以控制信息流并影响整个系统的运作效率。这类节点一旦失效可能会造成严重的后果,因此也是研究者们特别关心的对象[^3]。 ```python betweenness_centrality = nx.betweenness_centrality(G) print(betweenness_centrality) ``` 除了上述三种基本类型的中心性之外,还有特征向量中心性(Eigenvector Centrality),它考虑到了相邻节点的质量而非仅仅数量;PageRank算法则是Google搜索引擎用来排名网页的重要依据,同样适用于一般意义上的复杂网络结构分析中。 这些不同的中心性测量方式提供了多种视角来理解网络内部成员之间的关系模式及其潜在作用机制。通过应用相应的软件包如NetworkX库里的函数实现自动化处理过程,可以帮助研究人员更加高效准确地完成数据分析工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值