数据转换
PyTorch Geometric带有自己的变换,该变换期望将Data对象作为输入并返回一个新的变换后的Data对象。 可以使用torch_geometric.transforms.Compose将变换链接在一起,并在将处理后的数据集保存到磁盘之前(pre_transform)或访问数据集中的图形之前(transform)应用变换。
让我们看一个示例,其中我们对ShapeNet数据集(包含17,000个3D形状点clouds和来自16个形状类别的每个点标签)应用变换。
from torch_geometric.datasets import ShapeNet
dataset = ShapeNet(root='/tmp/ShapeNet', categories=['Airplane'])
print(dataset[0])
>>> Data(pos=[2518, 3], y=[2518])
通过transform将其从点云转化成图。
import torch_geometric.transforms as T
from torch_geometric.datasets import ShapeNet
dataset = ShapeNet(root='ShapeNet', categories=['Airplane'],
pre_transform=T.KNNGraph(k=6))
print(dataset[0])
>>> Data(edge_index=[2, 15108], pos