在训练模型的时候,要加载一些预训练模型,比如vgg等,代码如下

model = torchvision.models.vgg19(pretrained=True)

train的时候会显示

Downloading: "https://download.pytorch.org/models/vgg19-dcbb9e9d.pth" to /root/.cache/torch/checkpoints/vgg19-dcbb9e9d.pth

然后出错:

socket.gaierror: [Errno -3] Temporary failure in name resolution
和
urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>

这是因为无法下载预训练模型,要用外网下载。
所以比较方便的做法就是先把模型下下来,自己想办法连外网然后输链接就自动下了https://download.pytorch.org/models/vgg19-dcbb9e9d.pth
然后把下载的.pth模型文件放在一个固定路径下面,比如

/home/team/torch/models/pre_model/vgg19-dcbb9e9d.pth

最后把代码改成

model = torchvision.models.vgg19(pretrained=False)
pthfile = r'/home/team/torch/models/pre_model/vgg19-dcbb9e9d.pth'
model.load_state_dict(torch.load(pthfile))```
就可以了。
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐