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

PyTorch离线加载本地VGG19.pth权重文件报错求助

解决VGG19本地权重加载引发的RuntimeError问题

问题原因

你当前的代码加载了完整的VGG19模型(包含分类头classifier模块),但神经风格迁移只需要使用模型的特征提取部分features(原代码中models.vgg19(pretrained=True).features就是这个逻辑)。后续风格迁移的代码会遍历模型的子层,识别卷积、ReLU等层,而完整模型的第一层是Sequential类型的features模块,不在代码的识别范围内,因此抛出Unrecognized layer: Sequential错误。

修正步骤

加载本地权重后,必须提取模型的features子模块,和原代码的结构保持一致:

import torch
import torchvision.models as models

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

# 加载本地权重文件
checkpoint = torch.load('models/vgg19-dcbb9e9d.pth', map_location=device)
# 初始化空的VGG19模型
cnn = models.vgg19()
# 加载完整模型权重
cnn.load_state_dict(checkpoint)
# 提取特征提取部分,与原代码逻辑对齐
cnn = cnn.features.to(device).eval()

额外说明

  • 官方下载的vgg19-dcbb9e9d.pth包含完整模型的权重(features和classifier),因此直接用cnn.load_state_dict(checkpoint)可以正常加载。
  • 如果你的本地权重仅保存了features部分的参数,需要改为cnn.features.load_state_dict(checkpoint)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 21:18:19