这是CS224W: machine learing with graph的笔记。看了一半课程发现,之前的东西都忘光了,所以决定自己做笔记。
第一部分,关于图的一些介绍
为什么要用图呢??
图是一种描述和分析物体之间联系(相互关系)的通用语言。
我为什么对图神经网络感兴趣呢?
主要是,神经网络譬如CNN,它的结构就是一个图,那么通过对神经网络的计算图应用图神经网络会不会是实现通用人工智能的一种途径??
群体智能貌似也跟图表示学习关系密切,有时间了解一下。
图的结构和图片和语音之类的数据结构不一样,所以用CNN或者RNN不好处理,得根据图的特点搞个图版本的神经网络,也就是GNN。图神经网络还是神经网络中比较前沿的部分,貌似17年左右才开始兴起。
下面是,这个课程会涉及的主要topics
GNN的任务主要有三个方面:graph-level,edge-level,node-level。其实还有个community-level(subgraph)不过可以归类的graph-leve。
具体的任务呢包括节点分类,链接预测(节点是不是相连),图分类,聚类(图与点的关系),图的生成(由已知图去得到未知图)。比较有意思的应用方向,药物发现,推荐系统,交通预测。
在完成各种GNN任务时,其实只要使用GNN分别获取节点特征表示、边特征表示、图特征表示,然后就可以分别利用这些特征使用简单NN,就可以完成相应level的GNN任务。GNN最重要的是完成图的特征提取。
图的相关性质略。