【操作记录】pytorch_geometric安装方法

手动安装与教程:PyTorchGeometric在Windows上的正确配置
部署运行你感兴趣的模型镜像

pytorch_geometric安装方法

github地址

主要不要直接pip install安装,会由于依赖无法安装而失败

image-20230829095958034

点击here手动安装依赖

选择对应的pytorch版本,我的是Win10 Python3.8.3+Pytorch1.8.1+CUDA10.2

image-20230829100045409

手动下载四个依赖包本地安装:

image-20230829100117304

主要不要直接:pip install torch_geometric

这样会安装最新的torch_geometric,后面在使用时候会出现Pytorch AttributeError: module 'torch' has no attribute 'sparse_scs'

这里手动指定低版本安装:

pip install torch_geometric==2.0.4

接下来就可以跑一个图卷积神经网络试试:

import torch
import networkx as nx
import matplotlib.pyplot as plt
from torch_geometric.datasets import KarateClub
from torch_geometric.utils import to_networkx


dataset = KarateClub()

def visualize_graph(G, color):
    plt.figure(figsize=(7,7))
    plt.xticks([])
    plt.yticks([])
    nx.draw_networkx(G, pos=nx.spring_layout(G, seed=42), with_labels=False,
                     node_color=color, cmap="Set2")
    plt.show()


def visualize_embedding(h, color, epoch=None, loss=None):
    plt.figure(figsize=(7,7))
    plt.xticks([])
    plt.yticks([])
    h = h.detach().cpu().numpy()
    plt.scatter(h[:, 0], h[:, 1], s=140, c=color, cmap="Set2")
    if epoch is not None and loss is not None:
        plt.xlabel(f'Epoch: {epoch}, Loss: {loss.item():.4f}', fontsize=16)
    plt.show()
    
G = to_networkx(data, to_undirected=True)
visualize_graph(G, color=data.y)    
image-20230829103237533
import torch
from torch.nn import Linear
from torch_geometric.nn import GCNConv
class GCN(torch.nn.Module):
    def __init__(self):
        super().__init__()
        torch.manual_seed(1234)
        self.conv1 = GCNConv(dataset.num_features, 4) # 只需定义好输入特征和输出特征即可
        self.conv2 = GCNConv(4, 4)
        self.conv3 = GCNConv(4, 2)
        self.classifier = Linear(2, dataset.num_classes)

    def forward(self, x, edge_index):
        h = self.conv1(x, edge_index) # 输入特征与邻接矩阵(注意格式,上面那种)
        h = h.tanh()
        h = self.conv2(h, edge_index)
        h = h.tanh()
        h = self.conv3(h, edge_index)
        h = h.tanh()  
        
        # 分类层
        out = self.classifier(h)

        return out, h

model = GCN()
_, h = model(data.x, data.edge_index)
print(f'Embedding shape: {list(h.shape)}')

visualize_embedding(h, color=data.y)

Embedding shape: [34, 2]
image-20230829103342802

训练模型

import time

model = GCN()
criterion = torch.nn.CrossEntropyLoss()  # Define loss criterion.
optimizer = torch.optim.Adam(model.parameters(), lr=0.01)  # Define optimizer.

def train(data):
    optimizer.zero_grad()  
    out, h = model(data.x, data.edge_index) #h是两维向量,主要是为了咱们画个图 
    loss = criterion(out[data.train_mask], data.y[data.train_mask])  # semi-supervised
    loss.backward()  
    optimizer.step()  
    return loss, h

for epoch in range(401):
    loss, h = train(data)
    if epoch % 10 == 0:
        visualize_embedding(h, color=data.y, epoch=epoch, loss=loss)
        time.sleep(0.3)

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

<think>我们正在回答用户关于如何下载和安装pytorch_cluster库的问题。根据用户提供的引用,我们可以总结出几种安装方法,包括离线安装和在线安装。同时,用户可能是在特定的环境中(如conda虚拟环境)进行安装,并且需要注意与现有PyTorch版本和CUDA版本的兼容性。 根据引用[1][2][3][4],我们可以整理出以下步骤: 方法1:离线安装(适合网络环境较差的情况) 1. 确定你的PyTorch版本、CUDA版本和Python版本。 2. 访问 https://pytorch-geometric.com/whl/ 找到与你的环境匹配的torch_cluster的whl文件。 3. 下载对应的whl文件(例如:torch_cluster-1.5.9-cp38-cp38-win_amd64.whl,注意cp38表示Python3.8,win_amd64表示64位Windows系统)。 4. 在虚拟环境中使用pip安装下载的whl文件:`pip install <下载的文件路径>` 方法2:在线安装(适合网络环境较好的情况) 1. 确保你已经安装了与你的PyTorch版本和CUDA版本匹配的torch。 2. 使用以下命令安装(根据引用[2]): pip install torch-cluster -f https://pytorch-geometric.com/whl/torch-<你的torch版本>+<你的cuda版本>.html 例如,如果你的torch版本是2.4.1,cuda版本是11.8,则命令为: pip install torch-cluster -f https://pytorch-geometric.com/whl/torch-2.4.1+cu118.html 注意:在安装之前,建议先创建一个conda虚拟环境,并在该环境中安装。 步骤详细说明: 1. 确定环境信息 在安装之前,你需要知道以下信息: - PyTorch版本:可以通过`torch.__version__`查看 - CUDA版本:可以通过`torch.version.cuda`查看 - Python版本:通过`python --version`查看 - 操作系统(Windows/Linux)和位数(64位) 2. 下载whl文件(离线安装) 打开网址:https://pytorch-geometric.com/whl/ 根据你的环境找到对应的torch_cluster文件。注意,这个页面列出了很多文件,你需要找到与你的环境匹配的。例如: torch_cluster-1.6.0+pt20cu117-cp310-cp310-win_amd64.whl - pt20cu117: 表示PyTorch版本为2.0,CUDA版本为11.7 - cp310: 表示Python3.10 - win_amd64: 表示64位Windows系统 如果你使用的是Linux,则选择linux_x86_64。 3. 安装whl文件 在命令行中,进入你下载的whl文件所在目录,然后运行: pip install 文件名.whl 4. 在线安装(推荐网络好的情况下使用) 使用命令安装,注意替换命令中的torch版本和cuda版本。例如,如果你的PyTorch版本是1.8.0,CUDA版本是10.2,那么命令是: pip install torch-cluster -f https://pytorch-geometric.com/whl/torch-1.8.0+cu102.html 5. 验证安装 安装完成后,可以在Python中导入库来验证: import torch_cluster 注意:根据引用[3],安装torch_cluster只是安装PyTorch Geometric的其中一个依赖,通常还需要安装其他依赖(如torch_scatter, torch_sparse, torch_spline_conv)然后安装torch-geometric。但用户只询问了torch_cluster。 另外,引用[4]提到了通过conda-forge安装pytorch_scatter,但用户需要的是pytorch_cluster,且conda-forge可能没有提供所有版本的torch_cluster,所以这里还是建议使用pip安装。 因此,我们给出如下步骤: 步骤1:检查环境 步骤2:根据环境选择安装方式(离线或在线) 步骤3:安装 步骤4:验证 下面我们详细说明。</think>### 如何下载和安装 PyTorch Cluster 库 以下是完整的安装指南,包含离线安装和在线安装两种方法,请根据你的网络环境和需求选择合适的方式: --- #### 🔧 **安装前准备** 1. **确认环境信息**(必须步骤): ```bash # 查看 PyTorch 版本 python -c "import torch; print(torch.__version__)" # 查看 CUDA 版本 python -c "import torch; print(torch.version.cuda)" # 查看 Python 版本 python --version ``` 记录输出结果(例如:`torch=2.4.1, cuda=11.8, python=3.10`) 2. **创建虚拟环境**(推荐): ```bash conda create -n pyg_env python=3.10 conda activate pyg_env ``` --- #### 📥 **方法一:离线安装(适合网络不稳定环境)** 1. **下载匹配的 .whl 文件**: - 访问 PyTorch Geometric 官方仓库:[https://pytorch-geometric.com/whl/](https://pytorch-geometric.com/whl/) - 按格式查找对应文件: ``` torch_cluster-{版本}-cp{py版本}-cp{py版本}-{系统}_{架构}.whl ``` 示例:`torch_cluster-1.6.0+pt24cu118-cp310-cp310-win_amd64.whl` - `pt24cu118` = PyTorch 2.4 + CUDA 11.8 - `cp310` = Python 3.10 - `win_amd64` = Windows 64位 2. **安装下载的 .whl 文件**: ```bash pip install 下载路径/torch_cluster-xxx.whl ``` > 示例:`pip install C:/Downloads/torch_cluster-1.6.0+pt24cu118-cp310-cp310-win_amd64.whl` [^1][^3] --- #### 🌐 **方法二:在线安装(适合网络良好环境)** 直接运行以下命令(替换版本号): ```bash pip install torch-cluster -f https://pytorch-geometric.com/whl/torch-{TORCH_VERSION}+{CUDA_VERSION}.html ``` - **示例**: ```bash # 针对 torch=2.4.1 + CUDA 11.8 pip install torch-cluster -f https://pytorch-geometric.com/whl/torch-2.4.1+cu118.html [^2] # 针对 torch=1.13.0 + CUDA 11.6 pip install torch-cluster -f https://pytorch-geometric.com/whl/torch-1.13.0+cu116.html ``` --- #### ✅ **验证安装** ```python # 测试导入 python -c "import torch_cluster; print('Success!')" ``` 预期输出:`Success!` --- #### ⚠️ **常见问题解决** 1. **版本不匹配错误**: - 检查 CUDA 版本是否一致:`nvcc --version` - 重新安装匹配的 PyTorch: ```bash pip install torch==2.4.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118 ``` 2. **缺少依赖库**: - 先安装依赖项(按顺序): ```bash pip install torch-scatter torch-sparse pip install torch-cluster # 最后安装 ``` 3. **Windows 编译错误**: - 安装 Visual Studio Build Tools - 或直接使用预编译的 .whl 文件 --- > 提示:完整安装 PyTorch Geometric 需要四个依赖库(顺序安装): > `torch-scatter` → `torch-sparse` → `torch-cluster` → `torch-spline-conv` → `torch-geometric` [^1][^3]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值