pytorch预训练模型的下载地址以及解决下载速度慢的方法

时间:2024-10-30 08:37:14

pytorch快速加载预训练模型参数的方式

https://github.com/pytorch/vision/tree/master/torchvision/models

常用预训练模型在这里面

总结下各种模型的下载地址:

 1 Resnet:

model_urls = {
'resnet18': 'https://download.pytorch.org/models/resnet18-5c106cde.pth',
'resnet34': 'https://download.pytorch.org/models/resnet34-333f7ec4.pth',
'resnet50': 'https://download.pytorch.org/models/resnet50-19c8e357.pth',
'resnet101': 'https://download.pytorch.org/models/resnet101-5d3b4d8f.pth',
'resnet152': 'https://download.pytorch.org/models/resnet152-b121ed2d.pth',
} inception:

model_urls = {
# Inception v3 ported from TensorFlow
'inception_v3_google': 'https://download.pytorch.org/models/inception_v3_google-1a9a5a14.pth',
} Densenet: model_urls = {
'densenet121': 'https://download.pytorch.org/models/densenet121-a639ec97.pth',
'densenet169': 'https://download.pytorch.org/models/densenet169-b2777c0a.pth',
'densenet201': 'https://download.pytorch.org/models/densenet201-c1103571.pth',
'densenet161': 'https://download.pytorch.org/models/densenet161-8d451a50.pth',
} 29 Alexnet:

model_urls = {
'alexnet': 'https://download.pytorch.org/models/alexnet-owt-4df8aa71.pth',
} vggnet:

model_urls = {
'vgg11': 'https://download.pytorch.org/models/vgg11-bbd30ac9.pth',
'vgg13': 'https://download.pytorch.org/models/vgg13-c768596a.pth',
'vgg16': 'https://download.pytorch.org/models/vgg16-397923af.pth',
'vgg19': 'https://download.pytorch.org/models/vgg19-dcbb9e9d.pth',
'vgg11_bn': 'https://download.pytorch.org/models/vgg11_bn-6002323d.pth',
'vgg13_bn': 'https://download.pytorch.org/models/vgg13_bn-abd245e5.pth',
'vgg16_bn': 'https://download.pytorch.org/models/vgg16_bn-6c64b313.pth',
'vgg19_bn': 'https://download.pytorch.org/models/vgg19_bn-c79401a0.pth',
}

解决下载速度慢的方法:

1.换移动网络,有些公司网、校园网对于pytorch网站有很大的限速。

2.*(有时不*也可)先下载下来,放入文件夹中,方法如下两种(推荐第二种)

针对的预训练模型是通用的模型,也可以是自定义模型,大多是vgg16 ,  resnet50 , resnet101 , 等,从官网加载太慢

1.直接修改源码,改为本地地址

直接使用默认程序里的下载方式,往往比较慢;

通过修改源代码,使得模型加载已经下载好的参数,修改地方如下:

通过查找自己代码里所调用网络的类,使用pycharm自带的函数查找功能(ctrl+鼠标左键),查看此网络的加载方法,修改model.load_state_dict()函数。

例如:已经下载好的resnet50的参数文件:放在model_urls里面,这样就可以提前下载直接使用。

model_urls = {
'resnet50': '/home/huihua/NewDisk1/pretrain_parameter/resnet50-19c8e357.pth',
}

pytorch预训练模型的下载地址以及解决下载速度慢的方法

2.把模型权重下载至torch的缓存文件夹

由于torch在加载模型时候首先检查本地缓存是否已经存在模型,所以在本用户目录下,预先下载放入可快速加载模型。

cd .cache/torch/checkpoints
cd /home/team/.torch/models
两种方式,常常是用第二种作为torch模型的缓存文件夹 

进入文件夹把所需模型权重放入即可自动加载,相比第一种方法简单点。