Le code modifié disponible ici: https://github.com/BIGBALLON/CIFAR-ZOO/blob/master/eval.py
1. Le modèle a-t-il été importé avec succès?
1.1 problème
Missing key(s) in state_dict: "features.0.weight"
Unexpected key(s) in state_dict: "module.features.0.weight"
Par exemple, si la commande suivante est utilisée à ce stade pour importer le modèle:
net.load_state_dict(checkpoint["state_dict"], strict=False)
Ici, le paramètre strict est défini sur False (les paramètres de couche réseau sans correspondance seront ignorés). Comment utiliser le nom du modèle de formation parallèle multi-GPU lors de la formation, il y aura plus de "module"., Le modèle peut ne pas être importé avec succès.
référence:
https://blog.csdn.net/shiwanghualuo/article/details/101756876
https://blog.csdn.net/qq_32998593/article/details/89343507
1.2 Résoudre
net.load_state_dict({k.replace('module.',''):v for k,v in checkpoint["state_dict"].items()}, strict=True)
2. Prétraitement de l'image d'entrée
Torch utilise souvent PIL pour lire les images, certains prétraitements dans les transformations (redimensionnement, ToTensor, etc.). Il a été vérifié auparavant que PIL et opencv ne doivent être convertis que dans le même espace colorimétrique, et ce n'est fondamentalement pas un problème.