pytorch錯誤解決:Missing key(s) in state_dict: Unexpected key(s) in state_dict:

在進行模型測試時報錯:測試

Missing key(s) in state_dict: xxxxxxxxxx.net

Unexpected key(s) in state_dict:xxxxxxxxxxcode

 

報錯緣由:blog

在模型訓練時有加上:【能夠加速訓練速度】get

model = nn.DataParallel(model)博客

#cudnn.benchmark = Trueio

可是在模型測試推斷時,在模型參數被加載到模型前沒有加這句話,故報出上面的錯誤。class

 

解決:model

在模型參數被加載到模型前加下面的語句:map

model = nn.DataParallel(model)

#cudnn.benchmark = True

 

同時在加載模型的時候,添加一個False

 

weight = os.path.join(weight_path)
chkpt = torch.load(weight, map_location=self.__device)
self.__model.load_state_dict(chkpt, False)

 

參考博客:

https://blog.csdn.net/u013925378/article/details/104749000/

https://blog.csdn.net/sinat_34054843/article/details/88046041

相關文章
相關標籤/搜索