功能:图数据的构造器,采用的是COO的格式构造的图数据(坐标的格式),这是后续torch_geometric相应的图处理包可以处理的数据结构
导入包:
from torch_geometric.data import Data
输入参数Arg:
x:表示图所有节点的特征,维度是[Num_nodes, node_feature_dimension] 数据类型可以是dtype=float
edge_index:表示边的索引,注意这里描述的边仅仅是连接关系,不包含边权重的信息的,边的权重信息要通过另外一个参数输入,edge_attr。edge_index采用的是COO的格式描述边的,大小是[2, Num_edges],无向图的一条边要当成有向图的两条边来算,数据类型是规定的torch.long;当然,构造的时候可以采用节点对的形式表征边的连接关系,然后调用张量转置函
t().contiguous()
即可实现格式的转换,也方便阅读
edge_attr:表示边的权重信息,维度是[Num_edge, edge_weight_dimension]
注意:在用Data对象构造图结构数据时,要注意边和权重的对应关系,是一一对应的;