pajek 指标计算
针对复杂网络(社会网络 社区网络 图拓扑)的分析工具 相关的一些链接
http://blog.sciencenet.cn/home.php?mod=space&uid=636598&do=blog&classid=157925&view=me&from=space
分析工具对比(选择的主要依据:网络规模,导入导出格式转换难易度,可视化的要求)
豆瓣小组,主要针对pajek, 小组不是很活跃,但是对于新手还是可以的,另外组长在线,会及时地回复: http://www.douban.com/group/Pajek/
pajek 下载地址:http://mrvar.fdv.uni-lj.si/pajek/
其他:
http://blog.csdn.net/program_shun/article/details/7827563
http://www.cnblogs.com/ylan2009/articles/2378811.html
http://blog.sina.com.cn/s/blog_4c98b96001009a4p.html
pajek可以解决的网络规模比较庞大,但是其中的指标计算并没有清晰的文档,下面是经过测试反推出来的指标计算方法。
pajek可以生成如下格式的文件:
.net 网络输入文件,具体格式参考自带数据:****\pajek\Pajek\Data 分为有向图和无向图,一个节点可以携带其他信息。除了手工输入之外,还可以使用现有程序把excel或txt数据转换成.net文件。Pajek的官网上提供了两个程序:
(1)Excell2Pajek
(2)TXT2Pajek (推荐)
另外,还可以使用Matlab编写代码把EXCEL或者TXT数据转换成.net数据结构。
.vec 保存计算后的点指标
.clu .per .cls .hie
create random newtork:指定节点数 边数
create vector: 易懂的忽略
1 centrality closeness: 讯息接近性。某node到network所有其它node的距离总和最短。此种node在network中并 非处于核心的位置,与他人的relation并非最多;在degree-centrality上所处的位置也并非十分核心。但此node与network 中其他node的距离总和最短,也就是该node在network中有最佳视野,可以察知network中所发生的事情,以及讯息的流通方向。
计算公式:
当选择all 的时候,其中g(vi,vj)是两个节点间的地测距离(不考虑方向);当选择input的时候,g(vi,vj)指以vi为起点,出发到其他节点的距离;
2 centrality betweenness
这个pajek的计算公式和维基百科上的不同,维基百科如下:
http://www.datalab.sinaapp.com/?p=212
σst | 图G中两节点s,t之间最短路径的条数。同时σss =1,无向图中σst =σts |
但是pajek中的分母不是最短路径的条数,在有向图中,是P(n-1,n-1),即所有可能的节点对;在无向图中,是C(n-1,n-1),含义相同。
3 hubs-authorities Hub/Authorities,在有向网中我们常确定两种重要结点类型:集线中心(Hub)和权威(Authorities)。一个结点被认为是很好的集线中心,如果它指向许多好的权威结点。而如果它被许多好集线结点连接,那么它就是一个好的权威。在获得的分类值“1”表示该结点是权威结点,值“2”表示该结点既是权威结点也是集线结点,值“3”表示该结点是一个集线结点。
计算方法:
需要指定几个明显的初始值作为hub authorities。然后经过类似于HITS的迭代算法,计算出来每个节点的类型。具体见
http://nlp.stanford.edu/IR-book/html/htmledition/hubs-and-authorities-1.html
未检测初始值对结果的影响度,应该不敏感。
4 proximity prestige(邻近威望???)
根据结点的输入、输入或所有邻居来计算,产生以下几个结果:
(1)"Size of Input/Output/All Domain"(Partition)
能获得的结点数(不包括自己)
(2)"Normalized Size of Input/Output/All Domain"(Vector)
对(1)除以n-1进行规范化
(3)"Average Distance ..."(Vector)
从/到该domain的平均距离(跳数)
(根据Input/Output/All决定是"从"还是"到")
(4)"Input/Output/All Proximity Prestige"(Vector)
由(2)和(3)对应项目相除得到
5 lines
1)Min
找到入边/出边/所有边中最小的权值
(2)Max
找到入边/出边/所有边中最大的权值
6 centers
在网络中使用"掠夺"(robbery)算法:结点若比邻居度数更高(更强大)则从它们那掠夺强度:
首先根据结点的度数赋强度初值,或赋初值1。
当"虚弱"结点被找到的时候,邻居根据强度从它掠取相应的强度,或平分。
7 clustering coefficients (cc1)
会生成 cc1 cc1` 如果是无向图 假设a为点vi的邻居节点个数,则cc1 为vi 邻居节点间的边数/c(a,a) 若是有向图, 分母是p(a,a) ,此处计算的是Watts-Strogatz Clustering Coefficient, 而cc1`计算的是Network Clustering Coefficient (Transitivity)。如果该点度数为1,则有一个很大的默认值;如果该点邻居节点之间无连接边,则系数为0;两种计算方法的差距:
- 把所有的节点的Local Clustering Coefficient在一起求平均值
- (3*闭合三点组数)/(所有三点组数)
参见
http://blog.qiwen.name/2012/11/
8 clustering coefficient (cc2)
一直没搞清楚,即使在参考文献1中也没搜索到。
感谢小师妹 aifang Xu认真的态度,指出了betweenness centrality计算上的差异。
参考资料
1. W. de Nooy, A. Mrvar, V. Batagelj: Exploratory Social Network Analysis with Pajek, Structural Analysis in the Social Science
2. V. Batagelj, A. Mrvar: Pajek – Program for Large Network Analysis. Home page: http://vlado.fmf.uni-lj.si/pub/networks/pajek/