RuntimeError: Error(s) in loading state_dict for GoogLeNet:
    size mismatch for fc.weight: copying a param with shape torch.Size([3, 1024]) from checkpoint, the shape in current model is torch.Size([5, 1024]).
    size mismatch for fc.bias: copying a param with shape torch.Size([3]) from checkpoint, the shape in current model is torch.Size([5]).

在使用pytorch的时候出现了这种情况,大概的意思是参数不匹配,上网查找了一番,把不匹配的删除就行了,那我的错误做示范,如下所示:

weights_path = "./googleNet.pth"
assert os.path.exists(weights_path), "file: '{}' dose not exist.".format(weights_path)

ckpt=torch.load(weights_path, map_location=device)
# ckpt.pop('fc.weight')
# ckpt.pop('fc.bias')
missing_keys, unexpected_keys = model.load_state_dict(ckpt,strict=False)

我注释的这一部分就是问题提示的部分,报错显示fc.weight和fc.bias,比对我的错误,看自己的是那个不匹配,修改成自己的就行

weights_path = "./googleNet.pth"

assert os.path.exists(weights_path), "file: '{}' dose not exist.".format(weights_path) ckpt=torch.load(weights_path, map_location=device)

ckpt.pop('fc.weight')

ckpt.pop('fc.bias')

missing_keys, unexpected_keys = model.load_state_dict(ckpt,strict=False)

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐