0

我想将 Resnet50 预训练文件“ResNet-50-model.caffemodel”导入到chainer。这是链接器代码:

class chexnet(L.ResNet50Layers):

def __init__(self, pretrained_model="auto", out_features=2):
    super(chexnet, self).__init__(pretrained_model)
    with self.init_scope():
        self.classifier = L.Linear(2048, out_features)

但我收到如下错误消息:

  File "/home/tamnt27/.local/lib/python3.5/site-packages/chainer/links/model/vision/resnet.py", line 148, in convert_caffemodel_to_npz
    caffemodel = CaffeFunction(path_caffemodel)
  File "/home/tamnt27/.local/lib/python3.5/site-packages/chainer/links/caffe/caffe_function.py", line 151, in __init__
    net.MergeFromString(model_file.read())
google.protobuf.message.DecodeError: Error parsing message

我不知道为什么会发生这个错误,它应该可以工作,请帮助我。谢谢你们。

4

1 回答 1

1

我试图重现你的情况,但不能。

我的环境是

  • python2.7
  • chainer4.2.0
  • Cupy4.2.0

我从https://onedrive.live.com/?authkey=%21AAFW2-FVoxeVRck&id=4006CBB8476FF777%2117887&cid=4006CBB8476FF777下载了一个模型

并将其放在~/.chainer/dataset/pfnet/chainer/models/ResNet-50-model.caffemodel

我认为下载的文件已损坏,因此我建议您通过以下方式检查 md5sum

$ md5sum ~/.chainer/dataset/pfnet/chainer/models/ResNet-50-model.caffemodel
44b20660c5948391734036963e855dd2

如果 md5sum 与我的不同,请尝试再次下载模型。

于 2018-07-18T05:08:24.140 回答