如何在pytorch geometric中批处理嵌套的图形列表

How to batch a nested list of graphs in pytorch geometric

我目前正在训练一个混合了图形神经网络和 LSTM 的模型。然而,这意味着对于我的每个训练样本,我需要传递一个图表列表。 torch_geometric 中的当前批处理 class 支持使用 torch_geometric.data.Batch.from_data_list() 进行批处理,但这只允许每个数据点使用一张图。我还能如何对图形进行批处理?

使用对角线批处理:

https://pytorch-geometric.readthedocs.io/en/latest/notes/batching.html

简单地说,您将把所有图作为子图放入一个大图中。所有子图都将被隔离。

参见 TUDataset 中的示例: https://colab.research.google.com/drive/1I8a0DfQ3fI7Njc62__mVXUlcAleUclnb?usp=sharing