Neural networks have been adapted to leverage (lever:杠杆,leverage:借助) the structure and properties of graphs. We explore the components needed for building a graph neural network - and motivate the design choices behind them.
Understanding Convolutions on Graphs
- social networks
- molecules
- organizations
- citations
- physical models
- transactions(交易)
Graphs
Neural Networks(NNs): fixed-size and/or regular-structured inputs
Graph Neural Networks(GNNs): operate naturally on graph-structured data
The Challenges of Computation on Graphs
- Lack of Consistent Structure (but flexible)
- Node-Order Equivariance(等效性)
- Scalability Sparse
Problem Setting and Notation
- Node Classification: Classifying individual
- Graph Classification: Classifying entire graphs.
- Node Clustering: Grouping together similar nodes based on connectivity.
- Link Prediction: Predicting missing links.
- Influence Maximization: Identifying influential nodes.
Polynomial Filters on Graphs
Basic Concepts
- We consider simple graphs (no multiple edges or loops),
- is called the vertex set with ;
- is called the edge set with ;
- An edge connects vertices and if they are adjacent or neighbors. One possible notation for adjacency is ;
- The number of neighbors of a node is called the degree of and is denoted by . If all the nodes of a graph have the same degree, the graph is regular (正则图); The nodes of an Eulerian graph have even degree.
- A graph is complete if there is an edge between every pair of vertices.
- is a subgraph of if and ;
- a subgraph is an induced subgraph of if two vertices of are adjacent if and only if they are adjacent in .
- A clique is a complete subgraph of a graph.
- A path of vertices is a sequence of distinct vertices such that consecutive vertices are adjacent.
- A cycle is a connected subgraph where every vertex has exactly two neighbors.
- A graph containing no cycles is a forest. A connected forest is a tree.
- A graph is called k-partite if its set of vertices admits a partition into classes such that the vertices of the same class are not adjacent.
- bipartite 二部图
Adjacency Matrix
-
For a graph with vertices, the entries of the adjacency matrix are defined by:
-
is a real-symmetric matrix: it has real eigenvalues and its real eigenvectors form an orthonormal basis.
-
Let be the set of distinct eigenvalues. The eigenspace contains the eigenvectors associated with
-
For real-symmetric matrices, the algebraic multiplicity is equal to the geometric multiplicity, for all the eigenvalues.
-
The dimension of (geometric multiplicity) is equal to the multiplicity of . 代数重数和几何重数。
-
If then and are mutually orthogonal. 相互正交
-
We consider real-valued functions on the set of the graph’s vertices, . Such a function assigns a real number to each graph node. 规定点权
-
is a vector indexed by the graph’s vertices, hence . 个节点对应 个点权。
-
Notation: . 记号
-
The eigenvectors of the adjacency matrix, , can be viewed as eigenfunctions. 特征函数
-
The adjacency matrix can be viewed as an operator(作用是将一个节点的权值变为相邻节点的权值)
- It can also be viewed as a quadratic form(二次型): 作用是对于每一条边,计算相邻节点的权值之和。
Incidence Matrix
- Let each edge in the graph have an arbitrary but fixed orientation;
- The incidence matrix of a graph is a matrix defined as follows:(关联矩阵)
- 关联矩阵是离散微分算子。
Laplacian Matrix
对应连续情况梯度+散度。
- 其中 是一个新的函数。
- Connection between the Laplacian and the adjacency matrices:
- The degree matrix: . Eigen Value 0: Correspond to . In degree=Out degree
The Laplacian matrix of an undirected weighted graph
- We consider undirected weighted graphs: Each edge is weighted by .
- The Laplacian as an operator:
- As a quadratic form:
- is symmetric and positive semi-definite.
- L has non-negative, real-valued eigenvalues:
我是这么想的,先对整张图进行统计,计算一条边在所有或部分 点对之间最短路路径的出现次数。设定一定阈值,在阈值以上的边称为主干道,主干道的点称为主节点。从开始节点到结束节点,可以抽象为从开始节点到主节点,主节点之间移动,从主节点到结束节点。因此,算法可以分为:
-
预处理主节点之间的最短路
-
通过Dijkstra算法得到离当前开始节点最近的主节点,离结束节点最近的主节点(这个时候可能要把边反向)
-
通过预处理的最短路计算主节点之间的距离
后面发现和 CCH 算法类似