总结
1、图论的基本知识、图预测任务和PyG库的安装与使用
从图的角度出发,机器学习的主要任务可以概括成节点预测,边预测,图预测,节点聚类等等。学习了Data类和Dataset类,分别用来产生具体的图对象和构建复杂的图数据集。
2、实现图神经网络的消息传递范式
这一节是对图神经网络消息传递范式进行学习,消息传递的方法在节点表征和图表征中具有重要的作用。主要了解了PyG中的MessagePassing基类的运行流畅,通过覆写message()、aggreate()、update()、propagate()等实现图神经网络的构建。
3、节点表征学习与节点预测和边预测
这一部分学习了节点表征,并基于此方法进行节点和边的预测。学习了GCN和GAT两个经典的图神经网络,并和MLP进行比较。通过torch.nn.Module类,定位不同层的神经网络模型。然后学习了如何构建Dataset类,了解构建数据集的流程。然后通过使用两层GCNConv进行边预测。
4、超大图上的节点表征学习
主要学习了结合Cluster-GCN论文中提出的方法解决普通训练方法无法训练超大图的问题。
5、图表征学习与图预测任务实践
学习基于图神经网络的图表征学习的一般方法。这里分为两个步骤,先是学习按需获取样本数据集类的构造方法,另一个步骤是基于选定的数据完成基于图表征学习的图预测任务。通过torch_geometric.data.DataLoader类,将多个小图被封装成一个大图。