ucinet介绍
UCINET为菜单驱动的Windows程序,可能是最知名和最经常被使用的处理社会网络数据和其他相似性数据的综合性分析程序。与UCINET捆绑在一起的还有Pajek、Mage和NetDraw等三个软件。UCINET能够处理的原始数据为矩阵格式,提供了大量数据管理和转化工具。该程序本身不包含 网络可视化的图形程序,但可将数据和处理结果输出至NetDraw、Pajek、Mage和KrackPlot等软件作图。UCINET包含大量包括探测凝聚子群(cliques, clans, plexes)和区域(components, cores)、中心性分析(centrality)、个人网络分析和结构洞分析在内的网络分析程序。UCINET还包含为数众多的基于过程的分析程序,如聚类分析、多维标度、二模标度(奇异值分解、因子分析和对应分析)、角色和地位分析(结构、角色和正则对等性)和拟合中心-边缘模型。此外,UCINET提供了从简单统计到拟合p1模型在内的多种统计程序。
ucinet使用技巧
ucinet的安装我觉得不用多说,因为不论是****本站,还是百度里面都有很多的资源可以下载,一般都是英文版,所以我就不从开头介绍了。另外就是虽然很多东西当初用过并且记得,但等过了一段时间后,再次看这个功能其实很可能英文单词的意思都已经忘了,就记得如何去使用。所以这里,我直接以一个案例的方式进行演示:
1.数据导入:
Ucinet的数据输入方式有多种:初始数据(Raw)、Excel数据和数据语言数据(Data Language,DL)。Ucinet处理的Excel数据最多只能有255列。就好像我记得excel的最大存储数据为104万左右,超过就会提示显示不全。ucinet它导入数据步骤为输入路径:数据>输入> Excel矩阵:
当然,这里只是为了测试是否这个数据可以被ucinet所引用,不会有什么乱码或者其它格式问题,另外如果中途选择了什么其它操作,那么除了上述的打印外,还将生成了一个新的excel文件位于上面的路径。
2.可视化数据分析
网络密度指的是网络中各个成员之间联系的紧密度,可以通过网络中实际存在的关系数与理论上可能存在的关系数相比得到,成员之间的联系越多,该网络的密度越大。整体网的密度越大,该网络对其中行动者的态度、行为等产生的影响可能越大。计算的时候最好将多值关系数据转换成二值关系数据。将多值关系数据转换成二值关系数据路径:变换→对分。
在对原始数据进行二值化处理以后,所有的权值变为了0和1(即是否有关联),这样计算出来的结果是普通的中心度。想要得到加权网络的中心性,只需要在矩阵数据中保留权值,不进行二值化计算即可,和之前的唯一区别在于计算公式中的0与1变成了具体的权值。
我们这里也可以进行二值化,将上述的频次转换成只有0、1变量的数据,我这里不转了,依据的公式一般是:
H
i
j
=
{
1,
if
x
i
∈
N
k
(
x
j
)
or
x
j
∈
N
k
(
x
i
)
0,
otherwise
}
H_{ij}=\left\{ \begin{matrix} \text{1,}& \,\,\text{if\,\,}x_i\in N_k\left( x_j \right) \quad \,\,\text{or\,\,}x_j\in N_k\left( x_i \right)\\ \text{0,}& \,\,\text{otherwise\,\,}\\ \end{matrix} \right\}
Hij={1,0,ifxi∈Nk(xj)orxj∈Nk(xi)otherwise}
其中
N
k
(
x
i
)
N_k\left( x_i \right)
Nk(xi)表示数据集中距离
x
i
x_{i}
xi最近的 k 个邻居的集合。
然后我们需要将excel文件转换成ucinet能识别的类型,即.h结尾的文件,这里有很多种转换的方式,我比较喜欢的是打开一个矩阵,然后将数据导入,这里它会提示imported success,然后将其以.h文件保存到桌面,然后就可以开始可视化了。
最后进入netdraw直接可视化,选项为Net- Draw >Open > Ucinet Dataset > Network:
这里我们可以在右边栏看到可选框,可以根据喜好改变点的大小颜色以及线的粗细,另外就是去除某个点对整体图的影响,检测整个系统的波动性和稳定性,这个我记得我之前都是做层次分析法或者PCA用的,但在网络里自己也没试过这个。
我主要试的是图上面的工具栏,可以选择中心性的网络可视化,即centrality measures:
选择任何一个图都会根据其改变,比如我选择closeness:
然后关于上述的区别,也就是我接下来要总结的,但只是做一个粗略总结。
3、社会网络分析技术
首先如果数据不是非结构化数据,并且它的缺失值与异常值都在合理范围内(关于上述两者的概念,我在另一篇博客有提:kaggle(一):随机森林与泰坦尼克),那么我们可以做一个相关性分析,相关系数公式即为:
p
i
j
=
E
(
y
i
y
j
)
−
E
(
y
i
)
E
(
y
j
)
(
[
E
(
y
i
2
)
−
(
E
(
y
i
)
)
2
]
⋅
[
E
(
y
j
2
)
−
(
E
(
y
j
)
)
2
]
p_{ij}=\frac{E\left( y_iy_j \right) -E\left( y_i \right) E\left( y_j \right)}{\sqrt{\left( \left[ E\left( y_{i}^{2} \right) -\left( E\left( y_i \right) \right) ^2 \right] \cdot \left[ E\left( y_{j}^{2} \right) -\left( E\left( y_j \right) \right) ^2 \right] \right.}}
pij=([E(yi2)−(E(yi))2]⋅[E(yj2)−(E(yj))2]E(yiyj)−E(yi)E(yj)
可以根据它得到相关系数权值矩阵,以此去判断一些指标权重密度还有啥的,不过ucinet基本都封装好了,我在这里提一下,因为我下面的数据基本都是围绕这个来弄,
社会网络分析技术主要有网络密度、中心性分析、凝聚子群分析、核心-边缘分析等,这里对涉及到的前三种方法作简单介绍。
中心性(centrality)是度量整个网络中心化程度的重要指标,在城市群网络中,处于中心位置的城市更易获得资源和信息,拥有更大的权力和对其他城市更强的影响力。网络中心性又可以分为点度中心度、接近中心度和中间中心度三个指标。
度数中心性(Degree) | 中间中心性(betweenness) | 接近中心性(Closeness) | |
---|---|---|---|
绝对点度中心度 | C A D i = d ( i ) = ∑ j X i j C_{ADi}=d\left( i \right) =\sum_j{X}_{ij} CADi=d(i)=j∑Xij | C A B i = ∑ j < k b j k ( i ) = ∑ j < k g j k ( i ) / g j k C_{A B i}=\sum_{j<k} b_{j k}(i)=\sum_{j<k} g_{j k}(i) / g_{j k} CABi=j<k∑bjk(i)=j<k∑gjk(i)/gjk | C A P i − 1 = ∑ j d i j C_{A P i}^{-1}=\sum_{j} d_{i j} CAPi−1=j∑dij |
相对点度中心度 | C R D i = d ( i ) / ( n − 1 ) C_{RDi}^{}=d\left( i \right) /\left( n-1 \right) CRDi=d(i)/(n−1) | C R B i = 2 C A B i / [ ( n − 1 ) ( n − 2 ) ] C_{RBi}^{}=2C_{ABi}^{}/\left[ \left( n-1 \right) \left( n-2 \right) \right] CRBi=2CABi/[(n−1)(n−2)] | C R P i − 1 = 2 C A P i − 1 / ( n − 1 ) C_{RPi}^{-1}=2C_{APi}^{-1}/\left( n-1 \right) CRPi−1=2CAPi−1/(n−1) |
图的中心势 | C A D = ∑ i ( C A D max − C A D i ) ( n − 1 ) ( n − 2 ) C R D = ∑ i ( C R D max − C R D i ) n − 2 \begin{array}{l}{C_{A D}=\frac{\sum_{i}\left(C_{A D \max }-C_{A D i}\right)}{(n-1)(n-2)}} \\ {C_{R D}=\frac{\sum_{i}\left(C_{R D \max }-C_{R D i}\right)}{n-2}}\end{array} CAD=(n−1)(n−2)∑i(CADmax−CADi)CRD=n−2∑i(CRDmax−CRDi) | C B = 2 ∑ i ( C A B max − C A B i ) / [ ( n − 1 ) 2 ( n − 2 ) ] = 2 ∑ i ( C B B max − C R B i ) / ( n − 1 ) C_B=2\sum_i{\left( C_{AB\max}-C_{ABi} \right)}/\left[ \left( n-1 \right) ^2\left( n-2 \right) \right] =2\sum_i{\left( C_{BB\max}-C_{RBi} \right)}/\left( n-1 \right) CB=2i∑(CABmax−CABi)/[(n−1)2(n−2)]=2i∑(CBBmax−CRBi)/(n−1) | C C = ∑ i ( C R C max ′ − C R C i ′ ) ( n − 2 ) ( n − 1 ) ( 2 n − 3 ) C_{C}=\frac{\sum_{i}\left(C_{R C \max }^{\prime}-C_{R C i}^{\prime}\right)}{(n-2)(n-1)}(2 n-3) CC=(n−2)(n−1)∑i(CRCmax′−CRCi′)(2n−3) |
上表摘自SNA(社会网络分析)——三种中心度总结,这张表里的有些公式和我之前建模用过的差不多,不外乎就是中间有进行过变式,就比如我之前喜欢写
n
3
−
4
n
2
+
5
n
−
2
=
(
n
−
1
)
2
(
n
−
2
)
n^{3} - 4n^{2} + 5n -2 = \left( n-1 \right) ^2\left( n-2 \right)
n3−4n2+5n−2=(n−1)2(n−2),然后中间具体怎么推导的,例如betweenness可以看我给的参考链接2,我不是专门研究的我也不太清楚。我们还可以来看一下相关的图,对于上述三种情况的文字对比图:
然后我们就可以用ucinet软件做出上述三种关系,这里只做一个,因为步骤操作都是基本一致的,选择network ——> centrality ——> Degree ,就可以得到Degree centrality :
closeness centrality:
然后关于betweenness centrality,一般都是选择Node betweenness ,其它两种lines和Hierarchically Reduction 我也没有在实际建模中用过,不太清楚有啥具体意义,而且这两种没有显示完各个点中心性值后的探索性分析的表格,关于一些平均值、方差、标准差等,所以这里直接拉到第一个就行了。
关于上述三张表所能给出的信息,我们都可以通过分析他们按高位降序排序的指标来进一步得出结果,其中还是以Degree centrality为例,因为我没有进行二值化,或者说排除一些其它类型的指标,另外就是当时晚上时间匆忙,现在第二天是接着昨晚的写,一般如果数据做了处理,当我们做了这个中心性后,Num值的区间都是在0 ~ 100之间,排在最前的Num一定是在95%左右再降序,这样才能根据降序来定义最后的指标区别,这里倒是有些无法判断。其余两个中心性的解释根据公式和网络分析图结合起来说明更加有真实性与连贯性,在建模中,这就是基本的网络分析了。
4、凝聚子群分析
凝聚子群是满足如下条件的-一个行动者子集合,即在此集合中的行动者之间具有相对较强、直接、紧密、经常的或者积极的关系。城市网络凝聚子群是用于揭示和刻画城市群体内部子结构状态。找到城市网络中凝聚子群的个数以及每个凝聚子群包含哪些城市成员,分析凝聚子群间关系及联接方式,这都可以从新的维度考察城市群网络的发展状况。
利用ucinet软件中的CONCOR法进行凝聚子群分析。CONCOR是-种迭代相关收敛法( convergent correlation或者convergence of iterated correlation)。它基于如下事实:如果对-一个矩阵中的各个行(或者列)之间的相关系数进行重复计算(当该矩阵包含此前计算的相关系数的时候),最终产生的将是一个仅由1和-1组成的相关系数矩阵。进一步说我们可以据此把将要计算的一些项目分为两类:相关系数分别为1和-1的两类(刘军,2009)[4]。
这个我不太记得具体有啥作用了,找自己之前写过的网络分析法中很少用凝聚子群,但确实用过所以我现在才有一个大致的印象,然而怎么解释已经忘了,都过了一年多了,所以尴尬了,还是在这里记录一下吧,下次记起来回来补。
凝聚子群分析结果:
凝聚子群分析结果:
总结
其实抛开一些太专业性的东西不讲,本篇博文写得挺爽的,很久没有敲过这么多文字以及再次以一种建模的心理完成对ucinet的一些基本操作介绍,起因是一个建模群的网友问我网络分析里的一些技巧,还有他用python做的话好不好做,于是我去搜了一下,找到了本篇的第一篇参考文献,看了下python确实可以做但比较麻烦,我没用过,而ucinet的话,脑子一闪,发现这不就是我大学一直在用的东西嘛,伴随着的还有spss statistics、spss modeler、MATLAB、PS、灰色系统软件、yaahp等等各种零零碎碎的东西,突然就有些怀旧,虽然刚出来不久,由大学学的电气跨进计算机的道路,终是专业化了,但想想曾经大二一年里在建模路上的摸爬滚打,每次和队友完成一篇篇论文到获奖的喜悦,也终是我如今很难获取到的了。所以,且行且珍惜吧,end。
参考与推荐:
[1]. 六个主要的社会网络分析软件的比较
[2]. 网络的介数中心性(betweenness)及计算方法
[3]. SNA(社会网络分析)——三种中心度总结
[4]. 《社会网络分析法》(刘军 译)
[5]. 薛萍. 基于社会网络的研究型高校优势学科方向发展预测研究 [D]. 导师: 朱凌. 浙江大学,2014
[6]. 社会网络分析方法简介