【问题标题】:How to cache Pytorch models for use when not connected to the internet?如何在未连接到互联网时缓存 Pytorch 模型以供使用?
【发布时间】:2020-06-04 08:30:43
【问题描述】:

我在分类问题中使用 vgg19。我可以访问校园研究计算机进行训练,但完成计算的节点无法访问互联网。所以运行像self.net = models.vgg19(pretrained=True)这样的代码行失败,错误urllib.error.URLError: <urlopen error [Errno 101] Network is unreachable>

有没有办法可以将模型缓存在头节点(我可以访问互联网的地方),并从缓存而不是计算节点上的互联网加载模型?

【问题讨论】:

标签: python pytorch vgg-net


【解决方案1】:

如果您只是将预训练网络的权重保存在某处,则可以像加载任何其他网络权重一样加载它们。

保存:

import torchvision

#  I am assuming we have internet access here
model = torchvision.models.vgg16(pretrained=True)
torch.save(model.state_dict(), "Somewhere")

加载中:

import torchvision

def create_vgg16(dict_path=None):
    model = torchvision.models.vgg16(pretrained=False)
    if (dict_path != None):
        model.load_state_dict(torch.load(dict_path))
    return model

model = create_vgg16("Somewhere")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多