知识图谱入门学习之路(二)----图基础

知识图谱创建后,后续应用中会对图进行运算和处理,这里先盘点下最近学习到的图基础

1. degree distribution(度分布)

度分布用来描述在图网络中,基于各个度下的节点统计情况

P_{(k)}=\frac{N_{k}}{N}   公式中的N_{k}表示度为K的节点数量

举例如下:

对于上面的图进行分析后可以得到下图的度分布情况:

横坐标为度k

度分布在常用的社交关系网络中长用于做人群社交关系频次分析,在社交网络中会发现90%用户实际联系用户度不会超过一个数,而度非常的用户一般在欺诈用户识别中可以进行辨别,比如群发虚假信息等,而且在度的联络频次中可以看出用户基本每周维持的联系用户数不会太高。

2. Path Length(路径长度)

路径长度用来衡量两点之间的最短距离,根据图的类别有分别的计算方法。

(1)无向图

无向图是不带方向性的,具有路径对称性,一般来说,当两点之间没有路径可达到的时候,之间的路径长度默认为无穷大

在上图中,我们可知

h_{B,D}=h_{D,B}=2

h_{A,X}=\infty

(2)有向图

有向图具有节点方向性,两点之间的路径长度不具有对称性

h_{B,C}=1    h_{C,B}=2    h_{B,C}\neq h_{C,B}

(3)Network Diameter:在图中所有节点贯穿的最远距离,无穷大不计入。

(4)Average Path Length :

\bar{h} =\frac{\sum_{i,j\neq i}^{n}h_{i,j}}{2E_{max}} 

式中h_{i,j}代表节点i到节点j之间的距离;E_{max}代表边的最大数量(总节点对数量)

E_{max}=\frac{n(n-1)}{2}  式中n代表总节点数

在算平均路径的时候会忽略距离为无穷大的点

3.Cluster coefficient(聚类系数)

C_{i}\in [0,1]

C_{i}=\frac{2e_{i}}{K_{i}(K_{i}-1)}

式中e_{i}代表节点i的所有邻居点的边数,K_{i}代表节点i的度。

举例如下:

 

对于上图 C_{i}=\frac{2\times 6}{4\times 3}=1

上图C_{i}=\frac{3\times 2}{4\times 3}=\frac{1}{2}

Average Clustering coefficient: C=\frac{\sum_{1}^{N}C_{i}}{N}

对于上图进行计算平均聚类系数:

C_{B}=C_{H}=1 ,C_{D}=C_{C}=\frac{1}{3}C_{E}=0

平均聚类系数:\frac{2\times \frac{1}{3}+2\times 1}{8}=\frac{1}{3}

4.Connectivity Largest component=Giant component 

如何寻找最大社区:

Step1:随机从任一节点开始,然后使用BFS(Breadth First Search),

Step2:标记在BFS中被访问的节点

Step3:如果所有节点都被访问,则网络是相通的

Step4:否则,找到一个未被BFS访问的节点,重复BFS操作。

最大社区发现算法在社交关系中进行应用会发现,80%以上的用户会被包含进一个巨大的社区中,与用户的合群性还是有很大关系。

上述介绍只是一些基础的图的统计计算,后续在根据实际应用中所学进行更新。