You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyTorch加载预训练ResNet50模型报错,升级torchvision仍未解决

解决PyTorch加载ResNet50预训练模型报错的思路

1. 核对Torch与TorchVision版本兼容性

不同版本的PyTorch和TorchVision对weights参数的支持存在差异,早期版本可能不支持"IMAGENET1K_V2"这类字符串参数格式。

  • 先查看当前安装版本:
    pip show torch torchvision
    
  • 确保两者版本匹配(例如Torch 2.0+对应TorchVision 0.15+),若版本不兼容,重新安装对应版本:
    pip install torch==2.0.1 torchvision==0.15.2 --index-url https://download.pytorch.org/whl/cu118
    
    (CPU版本可去掉--index-url部分,CUDA版本根据自身环境调整)

2. 更换权重参数的写法

如果版本符合要求但仍报错,尝试用权重类替代字符串参数:

import torch
from torchvision.models import ResNet50_Weights

model = torch.hub.load("pytorch/vision", "resnet50", weights=ResNet50_Weights.IMAGENET1K_V2)

或者直接使用torchvision.models的原生API加载,稳定性更高:

import torchvision.models as models

model = models.resnet50(weights=models.ResNet50_Weights.IMAGENET1K_V2)

3. 排查网络与缓存问题

torch.hub.load需要从GitHub拉取代码和权重文件,网络异常或缓存损坏都可能导致加载失败:

  • 确认网络可正常访问GitHub,若无法访问,可手动下载权重文件放到Torch Hub默认缓存目录~/.cache/torch/hub
  • 清理旧缓存后重试:
    rm -rf ~/.cache/torch/hub
    

4. 验证权重参数的有效性

部分旧版本可能仅支持"IMAGENET1K_V1"权重,可尝试切换版本测试:

model = torch.hub.load("pytorch/vision", "resnet50", weights="IMAGENET1K_V1")

内容的提问来源于stack exchange,提问作者dtr43

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 11:42:24