深度学习环境之Pytorch和torch_Geometric的搭建 1. Pytorch 和 PyG Pytorch和PyG是深度学习的python环境,后者用于图处理。其主要特点如下: ①需要与cuda(NVIDIA)配合,必须先装载cuda。 ②cuda,pytorch,pytorch_geometric三者之间版本依赖精密,必须属于同一套版本。 其安装顺序即 cuda > pytorch > PyG ③其不能通过pych...
这一步也可以指定torch_geometric的版本安装,如pip install torch_geometric==2.0.4 -ihttps://pypi.doubanio.com/simple。也可用其他镜像源。 pip install torch_geometric==2.0.4 -i https://pypi.doubanio.com/simple 或者 pip install torch_geometric -i https://mirrors.aliyun.com/pypi/simple 或者 pi...
device = 'cuda' if torch.cuda.is_available() else 'cpu' # 初始化模型 gen = Generator().to(device) dis = Discriminator().to(device) # 优化器 d_optim = torch.optim.Adam(dis.parameters(), lr=0.0001) g_optim = torch.optim.Adam(gen.parameters(), lr=0.0001) # 损失函数 loss_fn = ...
PyTorch Geometric中的一个图由的实例描述torch_geometric.data.Data,默认情况下具有以下属性: data.x:具有形状的节点特征矩阵 [num_nodes, num_node_features] 例如上图,有三个节点,每个节点有两个属性,则x大小为[3,2] data.edge_index:具有形状和类型的COO格式的图形连接[2, num_edges]torch.long ...
介绍:PyTorch Geometric 中设计了一种新的表示图数据的存储结构,也是 PyTorch Geometric中实现的各种方法的基本数据形式。 一、在CMD控制平台查看电脑已经安装好的Anaconda中的Python版本,Pytorch中torch版本和Cuda版本,若没有安装可点击下面的博主的文章链接按操作先进行安装。
由于torch_geometric.GCNCov内部可以不使用完整的邻接矩阵(即整个图结构)来执行卷积操作,而是输入边的集合来进行卷积,而不是以矩阵的形式进行卷积:D^(-0.5)AD^(-0.5)W,具体可参考论文SEMI-SUPERVISED CLASSIFICATION WITHGRAPH CONVOLUTIONAL NETWORKS。记边的集合为edge_index,edge_index.shape=[2,E], E是边的数量...
2.安装torch-geometric 网址:https://pytorch-geometric.com/whl/ 找到对应pytorch版本: 四个库(cluster,scatter,sparse,spline-conv)分别:wget网页中对应的链接并pip install下载好的whl包,即完成安装: 注意自己环境的python版本以及linux/win就行 安装完上面四个库后执行pip install torch-geometric ...
PyG用torch_geometric.data.Data保存图结构的数据,导入的data(这个data指的是你导入的具体数据,不是前面那个torch_geometric.data)在PyG中会包含以下属性 data.x:图节点的属性信息,比如社交网络中每个用户是一个节点,这个x可以表示用户的属性信息,维度为[num_nodes,num_node_features] ...
dataset还有一类是torch_geometric.data.InMemoryDataset,它是继承torch_geometric.data.Dataset,如果数据是存到CPU内存中计算,就用torch_geometric.data.InMemoryDataset,如果是GPU,就用torch_geometric.data.Dataset,我使用GPU,就先学Dataset. 官方给出的自定义Dataset代码: ...
from torch_geometric.transforms import RandomLinkSplit from torch_geometric.data import Data data = Data(x=torch.eye(len(g.nodes)), edge_index=edge_index) transform = RandomLinkSplit(is_undirected=True) train_data, val_data, test_data = transform(data) However, transform(data) is ...