目录
一、图基础知识
1.图的直径:是指任意两个顶点间距离的最大值.(距离是两个点之间的所有路的长度的最小值)
中心性(Centrality)是判断网络中节点重要性/影响力的指标。
2.度中心性(degree_centrality)
重要节点就是拥有许多连接的节点。
3.特征向量中心性(eigenvector_centrality)
与你连接的人越重要,你就越重要
A为邻接矩阵
4.中介中心性(betweenness_centrality)
思想是:如果一个成员位于其他成员的多条最短路径上,那么该成员就是核心成员,就具有较大的中介中心性。它是指网络中经过某点并连接这两点的最短路径占这两点之间的最短路径线总数之比。
其中表示s到t的最短路径数量,
表示从s到t的最短路径中经过
节点的数量。
。
若需要进行标准化,在如上公式基础上,除以(n-1)(n-2),n为节点数量。
5.接近中心性(closeness centrality)
反映在网络中某一节点与其他节点之间的接近程度。如果节点到图中其他节点的最短距离都很小,那么它的接近中心性就很高。相比中介中心性,接近中心性更接近几何上的中心位置。
一个节点的平均最短距离越小,那么这个进行的接近中心性就越大。如果节点和节点
之间没有路径可达,则定义
为无穷大,其倒数为0。
表示i节点的接近中心性,
表示i到j的最短距离。
值越大,
点的接近中心性越大。
6.pageRank算法
PageRank算法将网页按重要性进行排序。有了这个排序,人们在搜索关键词时就能优先看到重要且优质的网页,从而更易于得到所需要的信息。
PageRank是一种基于图论的算法。它将万维网上所有的网页视作节点 node,将超链接视作边 edge。网络中的每个节点都有一个PageRank值,表示该节点的重要程度。
对于网页u,其PageRank值由以下公式算出:
其中,Bu表示u连接的所有网页,c为常数,R(v)为网页v的PageRank值,Nv为网页v的链接数(度 Degree)。
7. HITS算法
思想:每个网页的重要性由两个指标刻画,权威值(Authority)与枢纽值(Hub)。一个权威值高的网页会被很多网页指向(如微博大V)。一个枢纽值高的网页会指向很多网页(如大型目录网页)。
- 某网页的权威值 = 所有指向它的网页的枢纽值之和。
- 某网页的枢纽值 = 所有它指向网页的权威值之和。
二、图嵌入(Graph Embedding)
2.1 什么是图嵌入
图嵌入(Graph Embedding,也叫Network Embedding)是一种将图数据(通常为高维稠密的矩阵)映射为低微稠密向量的过程,能够很好地解决图数据难以高效输入机器学习算法的问题。
2.2 图嵌入可以解决的问题
对于Graph的研究可以解决下面的一些问题:比如社交网络中新的关系的预测,在QQ上看到的推荐的可能认识的人;生物分子中蛋白质功能、相互作用的预测;通信网络中,异常事件的预测和监控以及网络流量的预测。如果要解决以上的问题,我们首先需要做的是对图进行表示,graph embedding 是其中非常有效的技术。
2.3 使用图嵌入的原因
机器学习图形是有限的。图由边和节点组成。这些网络关系只能使用数学、统计和机器学习的特定子集,而向量空间有更丰富的方法工具集。
嵌入是压缩的表示。邻接矩阵描述图中节点之间的连接。它是一个|V| x
|V|矩阵,其中|V|是图中节点的个数。矩阵中的每一列和每一行表示一个节点。矩阵中的非零值表示两个节点相连。使用邻接矩阵作为大型图的特征空间几乎是不可能的。假设一个图有1M个节点和一个1M x 1M的邻接矩阵。嵌入比邻接矩阵更实用,因为它们将节点属性打包到一个维度更小的向量中。向量运算比图形上的可比运算更简单、更快。
2.4 Graph embedding算法
2.4.1 DeepWalk方法
Deepwalk是一种将随机游走(random walk)和word2vec两种算法相结合的图结构数据挖掘算法。该算法能够学习网络的隐藏信息,能够将图中的节点表示为一个包含潜在信息的向量,如图1-2所示。
图1 输入: 图信号
图2 输出: 图节点嵌入
算法步骤
算法1::D e e p W a l k ( G , w , d , γ , t ) |
输入:图G ( V , E ) |
窗口尺寸 w |
输出维度d |
以每个节点开始的路径数量 γ |
每条路径的长度 t |
输出:隐含信息的表示矩阵Φ∈![]() |
1. 随机初始化Ф |
2: for i = 0 to γ do |
3: 将顶点随机排列,即O=Shuffle(V) |
4: for 每一个![]() |
5: ![]() ![]() |
6:: Word2vec(Ф,![]() |
7: end for |
8: end for |