Press "Enter" to skip to content

时序图基准测试

挑战性和逼真的时间图学习数据集

近年来,在静态图上的机器学习取得了重要进展,这得益于公共数据集和标准化评估协议的可用性,比如广泛采用的开放图基准(OGB)。然而,许多现实世界的系统,如社交网络、交通网络和金融交易网络,随着节点和边的不断添加或删除而随时间演变。它们通常被建模为时间图。到目前为止,时间图学习的进展一直被缺乏大型高质量数据集所拖累,以及缺乏适当的评估,从而导致过于乐观的性能。

真实世界的网络随着时间的推移而演变。图片来源:Armand Khoury在Unsplash上的图片。

为了解决这个问题,我们提出了时间图基准(TGB),这是一个集具有挑战性和多样性的基准数据集,用于对时间图上的机器学习进行真实、可复现和稳健的评估。受到OGB的成功启发,TGB自动化了数据集的下载和处理,以及评估协议,并允许用户使用排行榜来比较模型性能。我们希望TGB能成为时间图社区的标准基准,促进新方法的开发,并提高对大型时间网络的理解。

挑战性和逼真的时间图学习基准

这篇文章基于我们的论文用于时间图上的机器学习的时间图基准(NeurIPS 2023数据集和基准赛道),与Emanuele Rossi共同撰写。从我的网站上找到更多关于时间图的工作。想要了解更多关于时间图的知识吗?加入时间图阅读小组Temporal Graph Learning Workshop @ NeurIPS 2023,了解关于最前沿的TG研究。

目录:

  1. 动机
  2. 问题设置
  3. 数据集详情
  4. 动态链接属性预测
  5. 动态节点属性预测
  6. 开始使用TGB
  7. 结论和未来工作

动机

在过去的几年里,静态图机器学习领域得到了显著推动,这主要归功于公共数据集的出现以及建立了像Open Graph Benchmark(OGB)、Long Range Graph BenchmarkTDC Benchmark等基准。然而,许多现实世界的系统,如社交网络、交通网络和金融交易网络都是时间相关的:它们随着时间的推移而演变。然而,直到现在,时间图的进展在很大程度上受限于缺乏大规模高质量的数据集和全面的评估框架。这种稀缺性,以及评估限制,导致在流行的数据集如维基百科和Reddit上的模型几乎完美的AP或AUROC分数,从而导致过于乐观地评估模型性能,并且难以区分竞争模型。

数据集的缺乏。常见的时间图数据集只包含几百万条边,远远小于真实时间网络中的规模。此外,这些数据集大多限于社交和交互网络领域。由于网络属性在不同领域之间经常有显著变化,因此在各个领域进行基准测试非常重要。最后,缺乏节点级任务的数据集,导致大多数方法只关注链接预测。为了解决这个挑战,TGB包含了来自五个不同领域的九个数据集,这些数据集在节点数、边数和时间戳数方面比常规数据集大几个数量级。此外,TGB针对新的节点关联预测任务提供了四个数据集。

TGB数据集与常见的TG数据集相比显著更大

简化的评估。动态链接预测通常被视为二元分类任务:正(真实)边的标签为1,而负(不存在)边的标签为0。在评估时,通过保持源节点固定,以均匀随机选择的目标节点采样一个负边。这种评估仅考虑了一小部分易于预测的负边,导致模型在维基百科和Reddit上获得超过95%的AP(Poursafaei等人 2022Rossi等人 2020Wang等人 2021Souza等人 2022)。在TGB中,我们将链接预测任务视为排序问题,并进行更健壮的评估。我们展示了改进的评估结果能够得到更真实的性能,并凸显不同模型之间的明显差距。

问题设定

在TGB中,我们关注连续时间的时间图,如Kazemi等人 2020所定义。在此设置中,我们将时间图定义为包含三元组(源节点,目标节点,时间戳)的时间戳边流。注意,时间边可以加权、有向,而节点和边都可以选择具有特征。

此外,我们考虑流式处理环境,模型可以在推理时融合新的信息。特别地,在预测时间t的测试边时,模型可以访问[1]在t之前发生的所有边,包括测试边。但是,不允许使用测试信息进行反向传播和权重更新。

数据集详情

TGB包含九个数据集,其中七个是从本研究中策划的,两个来自以前的文献。这些数据集根据它们的边数进行分类:小(<5百万),VoAGI(5-25百万)和大(> 25百万)。

TGB数据集的数据统计

TGB数据集还具有不同的领域和时间粒度(从UNIX时间戳到每年)。最后,数据集的统计特征也非常多样化。例如,惊喜指数是测试集中从未出现在训练集中的边的比例,这个指数在不同数据集之间变化很大。许多TGB数据集还包含许多测试集中的新节点,需要归纳推理。

TGB数据集也与现实世界的任务相关联。例如,tgbl-flight数据集是一个从2019年到2022年的众包国际航班网络,其中机场被建模为节点,而边表示给定日期的机场之间的航班。任务是预测未来日期两个特定机场之间是否会发生航班。这对于预测潜在的航班取消和延误等航班中断非常有用。例如,在COVID-19大流行期间,为了控制COVID-19的传播,许多航班航线被取消。全球航班网络的预测对于研究和预测COVID-19等疾病在新地区的传播也非常重要,如Ding et al. 2021中所述。有关数据集和任务的详细描述请参见论文的第4节。

动态链接属性预测的目标是预测未来时间戳上节点对之间链接的属性(通常是存在性)。

负边采样。在实际应用中,真实边在预先被知晓的情况下是未知的。因此,会查询大量节点对,并且只处理得分最高的节点对作为边。出于这个动机,我们将链接预测任务构建为一个排序问题,并为每个正边采样多个负边。具体地,对于给定的正边(s,d,t),我们固定源节点s和时间戳t,然后对q个不同的目标节点d进行采样。对于每个数据集,根据评估的完整性和测试集推理时间的权衡来选择q。在q个负样本中,一半是均匀随机采样,而另一半是历史负边(在训练集中观察到但在时间t不存在的边)。

性能度量。我们使用过滤后的平均倒数排名(MRR)作为这个任务的度量标准,因为它适用于排名问题。MRR计算真实目标节点在负面或虚假目标之中的倒数排名,常用于推荐系统和知识图谱文献中。

tgbl-wiki和tgbl-review数据集上的MRR性能

小数据集上的结果。在小的tgbl-wikitgbl-review数据集上,我们观察到最佳表现的模型有很大的差异。此外,在tgbl-wiki上表现最佳的模型,如CAWN和NAT,在tgbl-review上的性能显著降低。一个可能的解释是tgbl-review数据集的惊喜指数比tgbl-wiki数据集高得多。高惊喜指数表明测试集中有高比例的边从未在训练集中观察到,因此tgbl-review需要更多的归纳推理。在tgbl-review中,GraphMixer和TGAT是表现最好的模型。由于它们的大小较小,我们能够对tgbl-wiki采样所有可能的负边,在tgbl-review上每个正边采样一百个负边。

tgbl-coin,tgbl-comment和tgbl-flight数据集上的MRR性能

由于这些数据集中的大部分方法在GPU内存上运行不足,因此我们比较了TGN、DyRep和Edgebank在这些数据集上的性能,因为它们对GPU内存的需求较低。请注意,一些数据集,例如tgbl-commenttgbl-flight跨越多年,因此其长时间跨度可能导致分布变化。

tgbl-wiki上负样本数量的影响

洞察. 如上所示,在tgbl-wiki中,用于评估的负样本数量可以显著影响模型的性能:当负样本的数量从20个增加到所有可能的目的地时,我们可以看到大多数方法的性能显著下降。这验证了确实需要更多的负样本进行稳健的评估。有趣的是,诸如CAWN和Edgebank等方法在性能下降方面相对较小,我们将在未来的工作中研究为什么某些方法受到较小的影响。

TG模型的总训练和验证时间

接下来,我们观察到TG方法在训练和验证时间上存在两个数量级的差异,启发式基线Edgebank始终是最快的(因为它只是简单地实现为哈希表)。这表明提高模型效率和可扩展性是重要的未来方向,以便可以在TGB提供的大型数据集上测试新的和现有的模型。

动态节点属性预测

动态节点属性预测的目标是在任何给定的时间戳t处预测节点的属性。由于缺乏具有动态节点标签的大型公共TG数据集,我们引入了节点亲和性预测任务来研究时态图上的节点级任务。如果您想贡献一个带有节点标签的新数据集,请联系我们。

节点亲和性预测. 这个任务考虑到了一组节点(例如用户)对其他节点(例如物品)的亲和性作为其属性,并且这种亲和性随着时间的推移自然变化。例如,在推荐系统中,这个任务很重要,因为通过建模用户对不同物品的偏好随时间变化,为用户提供个性化推荐是很重要的。在这里,我们使用前10个物品的标准化折扣累积增益(NDCG@10)来比较预测物品与真实物品的相对顺序。标签是通过计算用户在未来一段时间内与不同物品的互动频率来生成的。

节点亲和性预测任务的实证结果

结果. 对于这个任务,我们将TG模型与两个简单的启发式方法进行比较:持续预测将当前时间的最近观察到的节点标签作为预测,移动平均值将过去几个步骤中的节点标签取平均值。关键观察是,在这个任务中,简单的启发式方法如持续预测和移动平均值是TG方法的强有力竞争者,并且在大多数情况下性能优于它们。这凸显了在未来需要开发更多的TG方法来解决节点级任务的需求。

使用TGB入门

TGB的机器学习流程

如何使用TGB?上面展示了TGB中的机器学习流程。您可以自动下载数据集并将其处理成numpyPyTorchPyG兼容的数据格式。用户只需要设计自己的TG模型,可以通过TGB评估器轻松测试,以标准化评估。最后,公共在线TGB排行榜帮助研究人员追踪时态图领域的最新进展。您可以轻松安装该软件包:

pip install py-tgb

最后,您可以将您的模型性能提交到TGB排行榜。我们要求您提供指向您的代码和描述您的方法以便再现性的论文的链接。要提交,请填写谷歌表单

总结和未来工作

为了在时间图上进行机器学习的现实、可再现和健壮性评估,我们提供了Temporal Graph Benchmark(TGB),一个具有挑战性和多样性的数据集合。通过TGB数据集和评估,我们发现模型的性能在不同的数据集上存在显著差异,从而证明了在不同的时间图领域上进行评估的必要性。此外,在节点亲和预测任务中,简单的启发式方法优于TG方法,因此促使未来更多基于节点的TG模型的发展。

与PyG的整合。Matthias Fey(Kumo.AI)作为PyG的核心负责人,在斯坦福图形学习研讨会2023上宣布,TGB将被整合到未来的PyG版本中。敬请期待!

TGX库。我们目前正在开发一个名为TGX的Python工具和可视化库,用于处理时间图。TGX支持TGB和Poursafaei et al. 2022等20个内置的时间图数据集。

社区反馈和数据集贡献。TGB是一个由社区驱动的项目,我们要感谢所有通过电子邮件或Github问题向我们提供建议的社区成员。如果您有任何建议或想要贡献新的数据集给TGB,请通过电子邮件Github创建一个问题与我们联系。我们正在寻找大规模数据集,特别是用于动态节点或图分类任务的数据集。

Leave a Reply

Your email address will not be published. Required fields are marked *