Missing key(s) in state_dict | unexpected_keys | 模型加载 [torch.load] 报错【解决方案】

目录

  • 错误分析
    • 该报错快速直接解决方法

Missing key(s) in state_dict | unexpected_keys | 模型加载 [torch.load] 报错【解决方案】_第1张图片

错误分析

代码块:

model.load_state_dict(torch.load(checkpoint, map_location='cpu'))

控制台报错提示:

Unexpected key(s) in state_dict: “epoch”, “model”.
或者是
Unexpected key(s) in state_dict: “XXX”, “XXX”.

该报错快速直接解决方法

model.load_state_dict 时设置 strict=False 即可解决该报错

代码为:

model.load_state_dict(torch.load(checkpoint, map_location='cpu'), strict=False)

这种方式适合,模型本身没有什么问题,只是多了一些推理时不需要的 类似 “module_list.total_ops”, “module_list.total_params”, “module_list.0.total_ops”, “module_list.0.total_params” 相关的统计变量

你可能感兴趣的:(深度学习代码错误解决,深度学习,python,机器学习,网络)