随着深度学习的快速发展,图神经网络(Graph Neural Networks,GNNs)在图数据上的应用变得越来越广泛。而在实际应用中,许多图数据都是由不同类型的节点和边组成的异构图(Heterogeneous Graph),例如社交网络中的用户、商品和关系。为了能够灵活处理这种异构图数据,我们可以使用PyTorch Geometric(PyG)库提供的功能。
本文将介绍如何使用PyG处理异构图,并提供相应的源代码实现。我们将使用一个具体的示例,即电影推荐系统,其中包含了三种类型的节点:用户、电影和导演,以及两种类型的边:用户-电影关系和电影-导演关系。
首先,我们需要安装PyG库:
!pip install torch
!pip install torch_geometric
接下来,我们导入所需的库:
import torch
import torch.nn