The introduction of machine learning with graph
本节可以了解到以下知识:
图在机器学习中的应用案例
不同的任务类型
- 节点层面
- 连接边层面
- 图层面
图的一些简单性质
1、需要的基础:
- Machine Learning
- Algorithms and graph theory
- Probability and statistics
- be able to write non-trivial programs (in Python)
2、可能用到的工具:
- PyTorch Geometric (PyG)
- DeepSNAP
- GraphGym
- SNAP.PY
- NetworkX
3、图的定义:Graphs are a general language for describing and analyzing entities with relations/interactions。
4、关键问题:如何利用图的关系结构来做更好地预测?
5、传统的深度学习主要是解决简单的序列或者图片数据而设计的。
传统的深度学习很难处理图的结构原因如下:
- network有任意的size
- network有复杂的topological结构
- network往往有动态(dynamic)特征和多模态(mutimodal)特征
- network内的借点没有顺序或参考点
6、深度学习在图上的应用过程
7、表示学习(Representation Learning)
- 在监督机器学习中,最重要的环节是找特征
- 表示学习:自动学习得到特征
上述过程也称为embedding,主要思想是将图形进行d维嵌入,嵌入到d维空间,而在d维空间保持图节点的关系
8、图嵌入的做法大概有以下几种
- Traditional methods(传统做法):Graphlets,Graph Kernels
- Methods for node embeddings(节点嵌入方法):DeepWalk,Node2Vec
- Graph Neural Networks(图神经网络):GCN, GraphSAGE, GAT, Theory of GNNs(图神经网络的主要作用也是提取特征)
- Knowledge graphs and reasoning(知识图谱与推理): TransE, BetaE
- Deep generative models for graphs(关于图的深度生成模型)
9、图机器学习应用
- Node level(节点标签预测)
- Graph level(图标签预测)
- Edge level(关系预测)
- Community (subgraph) level(子图预测)
- Graph generation(图生成)
10、应用场景
-
Node classification(节点分类): Predict a property of a node
- Example:Categorize online users / items(对在线用户/项目进行分类)
-
Link prediction(链接预测):Predict whether there are missing links between two nodes
- Example:Knowledge graph completion(构建知识图谱)
-
Graph classification(图分类):Categorize different graphs
- Example:Molecule property prediction(分子预测)
-
Clustering(聚类):Detect if nodes form a community
- Example: Social circle detection(社交圈检测)
11、High-impact applications
- Protein Folding
- Recommender Systems(推荐系统)
- Drug Side Effects(药物的副作用)
- Traffic Prediction(交通预测)
- Drug discovery
- Physics Simulation
12、Graph
由nodes/vertices(N)和links/edges(E)得到network/graph(G(N,E))。
Node Degrees:the number of edges adjacent to node i
13、Bipartite Graph(二分图)
- 节点能分割成两个不相交的集合和
Examples:
- Authors-to-Papers
- Actors-to-Movies
- Users-to-Movies
15、邻接矩阵(Adjacency Matrix)
- 是对称矩阵,具有实的特征值,并至少具有一个特征值大于0。
- 是方阵具有个特征值,包括0特征值。
- 邻接矩阵往往是稀疏的。
- 邻接矩阵可沿对角线被分成几个小块,则图是不连通的。