CS224W 图机器学习19:课程总结

1 GNN 的架构设计

  • 层内(Intra-layer)设计:核心过程信息的转换和聚合
  • 层间(Inter-layer)设计:预处理层主要是对节点特征的编码,后处理层主要是对节点嵌入的推理和转换;跳过连接(skip-connection)有助于改善深度 GNN 的性能
  • 学习配置(Learning configuration)对性能影响很大,还容易被忽视

经验总结:

  • GNN 的可能设计结构非常多,因此设计空间的研究很重要
  • GNN 很难优化,也经常容易欠拟合;训练的 epochs 越多越好
  • Sum 是表现最好的聚合函数,推荐使用 Adam 优化器(更稳健)
  • GNN 的最佳层数、batch_siez 和学习率很难确定,高度依赖于任务

2 GNN 的任务空间

理解 GNN 的任务,才能找到最佳的可跨任务迁移的 GNN 模型

  • 定义任务的相似度:模型的性能排名相似的任务被认为是相似的
  • 任务相似度的计算成本低,只需 12 个锚定模型就可以取得较好的计算近似
  • 任务的聚类结果呈现两个分组,Group1(左上的红色聚类小区域)中的任务更依赖特征信息;Group2(右下的红色聚类大区域)中的任务更依赖结构信息
  • GNN 任务空间信息丰富,相似的任务具有相似的最佳 GNN 架构

给定新任务,可以根据其与现有任务的相似度,推荐最佳的架构设计

3 GNN 的设计评价

定义评价目标:BatchNorm 是否通常对 GNN 有用?

定义评价过程:

  1. 随机采样模型与任务的配置信息,并控制实验变量 BatchNorm
  2. 按照 BatchNorm=True/False 分组,并计算模型的预测性能排序
  3. 计算不同组的排名均值,或绘制不同组的排名分布,得出结论

评价的最终结果(BatchNorm=True 时,排名更靠前):

4 图模型的预训练

图模型的预训练能改善数据标签稀缺的问题,并提高应用的泛化性

一个幼稚的策略:对相关标签进行多任务的有监督预训练

  • 该策略对下游任务的性能提升有限,并可能导致负迁移(Negative transfer)

一个合理的策略:自监督学习,对节点属性进行掩码预测

  • 该策略能使得 GNN 模型捕获局部和全局结构中的特定领域知识
  • 上表显示,经过自监督预训练的 GNN 模型的表现(AUROC)明显更优

往年同期文章