Moved to torch.hub.
torch.utils.model_zoo.load_url(url, model_dir=None, map_location=None, progress=True, check_hash=False, file_name=None, weights_only=False)
在给定 URL 加载 Torch 序列化对象。
如果下载的文件是zip文件,它将自动解压。
如果该对象已存在于model_dir中,则将其反序列化并返回。model_dir默认值是<hub_dir>/checkpoints where hub_dir是get_dir()返回的目录。
import torch
from torchvision import models
# 定义模型的URL
model_url = 'https://download.pytorch.org/models/resnet18-5c106cde.pth'
# 加载预训练好的ResNet模型
pretrained_model = models.resnet18()
pretrained_dict = torch.utils.model_zoo.load_url(model_url)
# 将加载的权重赋值给模型
pretrained_model.load_state_dict(pretrained_dict)
在这个例子中,我们首先导入了PyTorch和models模块,然后定义了要加载的模型的URL。接下来,我们创建了一个新的ResNet模型实例,并使用load_url函数下载并加载模型的预训练权限。最后,我们将加载的权限重分配给模型。
或者
state_dict = torch.hub.load_state_dict_from_url('https://s3.amazonaws.com/pytorch/models/resnet18-5c106cde.pth')