我想以每个集群只包含具有相同入度值的节点的方式对 Cora 数据集的节点进行集群。我可以编写如下代码:
import torch
from torch_geometric.datasets import Planetoid
from torch_geometric.utils import degree
dataset = Planetoid('./data','CORA')
data = dataset[0]
n = data.num_nodes
indegree = degree(data.edge_index[1], n, dtype=torch.long)
counts = torch.bincount(indegree)
Run Code Online (Sandbox Code Playgroud)
但是由于我没有访问节点的索引值,所以不知道如何将每个节点放在哪个集群中?
小智 1
您可以使用return_inverseintorch.unique来恢复索引。具有相同值的节点i属于indices同一个簇,因为它们的度都等于indegree_class[i]。
indegree_class, indices = torch.unique(indegree, return_inverse=True)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
61 次 |
| 最近记录: |