【无标题】加载自己的torch模型时报错,Unexpected key(s) in state_dict: “it“, “network“, “optimizer“, “scheduler“.

标题pytorch加载的预训练模型与自己的模型不匹配解决方案

看了许多解决方法,都不适用,下面是比较全面的一个参考,提到的方法都不适用

https://blog.csdn.net/ycc2011/article/details/89421767

本人使用的预训练模型为:RN50x16.pt
使用state_dict()方法保存模型,相关代码如下:

torch.save(net.state_dict(), f"{model_name}_epoch_{epoch}.pth")`
checkpoint = {
	'it': epoch,
	'network': net.state_dict(),
	'optimizer': optimizer.state_dict(),
	'scheduler': scheduler.state_dict()
                }
torch.save(checkpoint, checkpoint_path)

加载模型时,代码如下:

model, preprocess = clip.load(os.path.join(basedir, "model/RN50x16.pt"))
modelpath = os.path.join(basedir, 'RN50-0829_ckt.pth')
ckpt = torch.load(modelpath)
model.load_state_dict(ckpt)

报错如下:

RuntimeError: Error(s) in loading state_dict for CLIP:
	Missing key(s) in state_dict: "positional_embedding", "text_projection", "logit_scale", "visual.conv1.weight", "visual.bn1.weight", "visual.bn1.bias", "visual.bn1.running_mean", "visual.bn1.running_var", "visual.conv2.weight", "visual.bn2.weight", "visual.bn2.bias", "visual.bn2.running_mean", "visual.bn2.running_var", "visual.conv3.weight", "visual.bn3.weight", "visual.bn3.bias", "visual.bn3.running_mean", "visual.bn3.running_var", "visual.layer1.0.conv1.weight", "visual.layer1.0.bn1.weight", "visual.layer1.0.bn1.bias", "visual.layer1.0.bn1.running_mean", "visual.layer1.0.bn1.running_var", "visual.layer1.0.conv2.weight", "visual.layer1.0.bn2.weight", "visual.layer1.0.bn2.bias", "visual.layer1.0.bn2.running_mean", "visual.layer1.0.bn2.running_var", "visual.layer1.0.conv3.weight", "visual.layer1.0.bn3.weight", "visual.layer1.0.bn3.bias", "visual.layer1.0.bn3.running_mean", "visual.layer1.0.bn3.running_var", "visual.layer1.0.downsample.0.weight", "visual.layer1.0.downsample.1.weight", "visual.layer1.0.downsample.1.bias", "visual.layer1.0.downsample.1.running_mean", "visual.layer1.0.downsample.1.running_var", "visual.layer1.1.conv1.weight", "visual.layer1.1.bn1.weight", "visual.layer1.1.bn1.bias", "visual.layer1.1.bn1.running_mean", "visual.layer1.1.bn1.running_var", "visual.layer1.1.conv2.weight", "visual.layer1.1.bn2.weight", "visual.layer1.1.bn2.bias", "visual.layer1.1.bn2.running_mean", "visual.layer1.1.bn2.running_var", "visual.layer1.1.conv3.weight", "visual.layer1.1.bn3.weight", "visual.layer1.1.bn3.bias", "visual.layer1.1.bn3.running_mean", "visual.layer1.1.bn3.running_var", "visual.layer1.2.conv1.weight", "visual.layer1.2.bn1.weight", "visual.layer1.2.bn1.bias", "visual.layer1.2.bn1.running_mean", "visual.layer1.2.bn1.running_var", "visual.layer1.2.conv2.weight", "visual.layer1.2.bn2.weight", "visual.layer1.2.bn2.bias", "visual.layer1.2.bn2.running_mean", "visual.layer1.2.bn2.running_var", "visual.layer1.2.conv3.weight", "visual.layer1.2.bn3.weight", "visual.layer1.2.bn3.bias", "visual.layer1.2.bn3.running_mean", "visual.layer1.2.bn3.running_var", "visual.layer1.3.conv1.weight", "visual.layer1.3.bn1.weight", "visual.layer1.3.bn1.bias", "visual.layer1.3.bn1.running_mean", "visual.layer1.3.bn1.running_var", "visual.layer1.3.conv2.weight", "visual.layer1.3.bn2.weight", "visual.layer1.3.bn2.bias", "visual.layer1.3.bn2.running_mean", "visual.layer1.3.bn2.running_var", "visual.layer1.3.conv3.weight", "visual.layer1.3.bn3.weight", "visual.layer1.3.bn3.bias", "visual.layer1.3.bn3.running_mean", "visual.layer1.3.bn3.running_var", "visual.layer1.4.conv1.weight", "visual.layer1.4.bn1.weight", "visual.layer1.4.bn1.bias", "visual.layer1.4.bn1.running_mean", "visual.layer1.4.bn1.running_var", "visual.layer1.4.conv2.weight", "visual.layer1.4.bn2.weight", "visual.layer1.4.bn2.bias", "visual.layer1.4.bn2.running_mean", "visual.layer1.4.bn2.running_var", "visual.layer1.4.conv3.weight", "visual.layer1.4.bn3.weight", "visual.layer1.4.bn3.bias", "visual.layer1.4.bn3.running_mean", "visual.layer1.4.bn3.running_var", "visual.layer1.5.conv1.weight", "visual.layer1.5.bn1.weight", "visual.layer1.5.bn1.bias", "visual.layer1.5.bn1.running_mean", "visual.layer1.5.bn1.running_var", "visual.layer1.5.conv2.weight", "visual.layer1.5.bn2.weight", "visual.layer1.5.bn2.bias", "visual.layer1.5.bn2.running_mean", "visual.layer1.5.bn2.running_var", "visual.layer1.5.conv3.weight", "visual.layer1.5.bn3.weight", "visual.layer1.5.bn3.bias", "visual.layer1.5.bn3.running_mean", "visual.layer1.5.bn3.running_var", "visual.layer2.0.conv1.weight", "visual.layer2.0.bn1.weight", "visual.layer2.0.bn1.bias", "visual.layer2.0.bn1.running_mean", "visual.layer2.0.bn1.running_var", "visual.layer2.0.conv2.weight", "visual.layer2.0.bn2.weight", "visual.layer2.0.bn2.bias", "visual.layer2.0.bn2.running_mean", "visual.layer2.0.bn2.running_var", "visual.layer2.0.conv3.weight", "visual.layer2.0.bn3.weight", "visual.layer2.0.bn3.bias", "visual.layer2.0.bn3.running_mean", "visual.layer2.0.bn3.running_var", "visual.layer2.0.downsample.0.weight", "visual.layer2.0.downsample.1.weight", "visual.layer2.0.downsample.1.bias", "visual.layer2.0.downsample.1.running_mean", "visual.layer2.0.downsample.1.running_var", "visual.layer2.1.conv1.weight", "visual.layer2.1.bn1.weight", "visual.layer2.1.bn1.bias", "visual.layer2.1.bn1.running_mean", "visual.layer2.1.bn1.running_var", "visual.layer2.1.conv2.weight", "visual.layer2.1.bn2.weight", "visual.layer2.1.bn2.bias", "visual.layer2.1.bn2.running_mean", "visual.layer2.1.bn2.running_var", "visual.layer2.1.conv3.weight", "visual.layer2.1.bn3.weight", "visual.layer2.1.bn3.bias", "visual.layer2.1.bn3.running_mean", "visual.layer2.1.bn3.running_var", "visual.layer2.2.conv1.weight", "visual.layer2.2.bn1.weight", "visual.layer2.2.bn1.bias", "visual.layer2.2.bn1.running_mean", "visual.layer2.2.bn1.running_var", "visual.layer2.2.conv2.weight", "visual.layer2.2.bn2.weight", "visual.layer2.2.bn2.bias", "visual.layer2.2.bn2.running_mean", "visual.layer2.2.bn2.running_var", "visual.layer2.2.conv3.weight", "visual.layer2.2.bn3.weight", "visual.layer2.2.bn3.bias", "visual.layer2.2.bn3.running_mean", "visual.layer2.2.bn3.running_var", "visual.layer2.3.conv1.weight", "visual.layer2.3.bn1.weight", "visual.layer2.3.bn1.bias", "visual.layer2.3.bn1.running_mean", "visual.layer2.3.bn1.running_var", "visual.layer2.3.conv2.weight", "visual.layer2.3.bn2.weight", "visual.layer2.3.bn2.bias", "visual.layer2.3.bn2.running_mean", "visual.layer2.3.bn2.running_var", "visual.layer2.3.conv3.weight", "visual.layer2.3.bn3.weight", "visual.layer2.3.bn3.bias", "visual.layer2.3.bn3.running_mean", "visual.layer2.3.bn3.running_var", "visual.layer2.4.conv1.weight", "visual.layer2.4.bn1.weight", "visual.layer2.4.bn1.bias", "visual.layer2.4.bn1.running_mean", "visual.layer2.4.bn1.running_var", "visual.layer2.4.conv2.weight", "visual.layer2.4.bn2.weight", "visual.layer2.4.bn2.bias", "visual.layer2.4.bn2.running_mean", "visual.layer2.4.bn2.running_var", "visual.layer2.4.conv3.weight", "visual.layer2.4.bn3.weight", "visual.layer2.4.bn3.bias", "visual.layer2.4.bn3.running_mean", "visual.layer2.4.bn3.running_var", "visual.layer2.5.conv1.weight", "visual.layer2.5.bn1.weight", "visual.layer2.5.bn1.bias", "visual.layer2.5.bn1.running_mean", "visual.layer2.5.bn1.running_var", "visual.layer2.5.conv2.weight", "visual.layer2.5.bn2.weight", "visual.layer2.5.bn2.bias", "visual.layer2.5.bn2.running_mean", "visual.layer2.5.bn2.running_var", "visual.layer2.5.conv3.weight", "visual.layer2.5.bn3.weight", "visual.layer2.5.bn3.bias", "visual.layer2.5.bn3.running_mean", "visual.layer2.5.bn3.running_var", "visual.layer2.6.conv1.weight", "visual.layer2.6.bn1.weight", "visual.layer2.6.bn1.bias", "visual.layer2.6.bn1.running_mean", "visual.layer2.6.bn1.running_var", "visual.layer2.6.conv2.weight", "visual.layer2.6.bn2.weight", "visual.layer2.6.bn2.bias", "visual.layer2.6.bn2.running_mean", "visual.layer2.6.bn2.running_var", "visual.layer2.6.conv3.weight", "visual.layer2.6.bn3.weight", "visual.layer2.6.bn3.bias", "visual.layer2.6.bn3.running_mean", "visual.layer2.6.bn3.running_var", "visual.layer2.7.conv1.weight", "visual.layer2.7.bn1.weight", "visual.layer2.7.bn1.bias", "visual.layer2.7.bn1.running_mean", "visual.layer2.7.bn1.running_var", "visual.layer2.7.conv2.weight", "visual.layer2.7.bn2.weight", "visual.layer2.7.bn2.bias", "visual.layer2.7.bn2.running_mean", "visual.layer2.7.bn2.running_var", "visual.layer2.7.conv3.weight", "visual.layer2.7.bn3.weight", "visual.layer2.7.bn3.bias", "visual.layer2.7.bn3.running_mean", "visual.layer2.7.bn3.running_var", "visual.layer3.0.conv1.weight", "visual.layer3.0.bn1.weight", "visual.layer3.0.bn1.bias", "visual.layer3.0.bn1.running_mean", "visual.layer3.0.bn1.running_var", "visual.layer3.0.conv2.weight", "visual.layer3.0.bn2.weight", "visual.layer3.0.bn2.bias", "visual.layer3.0.bn2.running_mean", "visual.layer3.0.bn2.running_var", "visual.layer3.0.conv3.weight", "visual.layer3.0.bn3.weight", "visual.layer3.0.bn3.bias", "visual.layer3.0.bn3.running_mean", "visual.layer3.0.bn3.running_var", "visual.layer3.0.downsample.0.weight", "visual.layer3.0.downsample.1.weight", "visual.layer3.0.downsample.1.bias", "visual.layer3.0.downsample.1.running_mean", "visual.layer3.0.downsample.1.running_var", "visual.layer3.1.conv1.weight", "visual.layer3.1.bn1.weight", "visual.layer3.1.bn1.bias", "visual.layer3.1.bn1.running_mean", "visual.layer3.1.bn1.running_var", "visual.layer3.1.conv2.weight", "visual.layer3.1.bn2.weight", "visual.layer3.1.bn2.bias", "visual.layer3.1.bn2.running_mean", "visual.layer3.1.bn2.running_var", "visual.layer3.1.conv3.weight", "visual.layer3.1.bn3.weight", "visual.layer3.1.bn3.bias", "visual.layer3.1.bn3.running_mean", "visual.layer3.1.bn3.running_var", "visual.layer3.2.conv1.weight", "visual.layer3.2.bn1.weight", "visual.layer3.2.bn1.bias", "visual.layer3.2.bn1.running_mean", "visual.layer3.2.bn1.running_var", "visual.layer3.2.conv2.weight", "visual.layer3.2.bn2.weight", "visual.layer3.2.bn2.bias", "visual.layer3.2.bn2.running_mean", "visual.layer3.2.bn2.running_var", "visual.layer3.2.conv3.weight", "visual.layer3.2.bn3.weight", "visual.layer3.2.bn3.bias", "visual.layer3.2.bn3.running_mean", "visual.layer3.2.bn3.running_var", "visual.layer3.3.conv1.weight", "visual.layer3.3.bn1.weight", "visual.layer3.3.bn1.bias", "visual.layer3.3.bn1.running_mean", "visual.layer3.3.bn1.running_var", "visual.layer3.3.conv2.weight", "visual.layer3.3.bn2.weight", "visual.layer3.3.bn2.bias", "visual.layer3.3.bn2.running_mean", "visual.layer3.3.bn2.running_var", "visual.layer3.3.conv3.weight", "visual.layer3.3.bn3.weight", "visual.layer3.3.bn3.bias", "visual.layer3.3.bn3.running_mean", "visual.layer3.3.bn3.running_var", "visual.layer3.4.conv1.weight", "visual.layer3.4.bn1.weight", "visual.layer3.4.bn1.bias", "visual.layer3.4.bn1.running_mean", "visual.layer3.4.bn1.running_var", "visual.layer3.4.conv2.weight", "visual.layer3.4.bn2.weight", "visual.layer3.4.bn2.bias", "visual.layer3.4.bn2.running_mean", "visual.layer3.4.bn2.running_var", "visual.layer3.4.conv3.weight", "visual.layer3.4.bn3.weight", "visual.layer3.4.bn3.bias", "visual.layer3.4.bn3.running_mean", "visual.layer3.4.bn3.running_var", "visual.layer3.5.conv1.weight", "visual.layer3.5.bn1.weight", "visual.layer3.5.bn1.bias", "visual.layer3.5.bn1.running_mean", "visual.layer3.5.bn1.running_var", "visual.layer3.5.conv2.weight", "visual.layer3.5.bn2.weight", "visual.layer3.5.bn2.bias", "visual.layer3.5.bn2.running_mean", "visual.layer3.5.bn2.running_var", "visual.layer3.5.conv3.weight", "visual.layer3.5.bn3.weight", "visual.layer3.5.bn3.bias", "visual.layer3.5.bn3.running_mean", "visual.layer3.5.bn3.running_var", "visual.layer3.6.conv1.weight", "visual.layer3.6.bn1.weight", "visual.layer3.6.bn1.bias", "visual.layer3.6.bn1.running_mean", "visual.layer3.6.bn1.running_var", "visual.layer3.6.conv2.weight", "visual.layer3.6.bn2.weight", "visual.layer3.6.bn2.bias", "visual.layer3.6.bn2.running_mean", "visual.layer3.6.bn2.running_var", "visual.layer3.6.conv3.weight", "visual.layer3.6.bn3.weight", "visual.layer3.6.bn3.bias", "visual.layer3.6.bn3.running_mean", "visual.layer3.6.bn3.running_var", "visual.layer3.7.conv1.weight", "visual.layer3.7.bn1.weight", "visual.layer3.7.bn1.bias", "visual.layer3.7.bn1.running_mean", "visual.layer3.7.bn1.running_var", "visual.layer3.7.conv2.weight", "visual.layer3.7.bn2.weight", "visual.layer3.7.bn2.bias", "visual.layer3.7.bn2.running_mean", "visual.layer3.7.bn2.running_var", "visual.layer3.7.conv3.weight", "visual.layer3.7.bn3.weight", "visual.layer3.7.bn3.bias", "visual.layer3.7.bn3.running_mean", "visual.layer3.7.bn3.running_var", "visual.layer3.8.conv1.weight", "visual.layer3.8.bn1.weight", "visual.layer3.8.bn1.bias", "visual.layer3.8.bn1.running_mean", "visual.layer3.8.bn1.running_var", "visual.layer3.8.conv2.weight", "visual.layer3.8.bn2.weight", "visual.layer3.8.bn2.bias", "visual.layer3.8.bn2.running_mean", "visual.layer3.8.bn2.running_var", "visual.layer3.8.conv3.weight", "visual.layer3.8.bn3.weight", "visual.layer3.8.bn3.bias", "visual.layer3.8.bn3.running_mean", "visual.layer3.8.bn3.running_var", "visual.layer3.9.conv1.weight", "visual.layer3.9.bn1.weight", "visual.layer3.9.bn1.bias", "visual.layer3.9.bn1.running_mean", "visual.layer3.9.bn1.running_var", "visual.layer3.9.conv2.weight", "visual.layer3.9.bn2.weight", "visual.layer3.9.bn2.bias", "visual.layer3.9.bn2.running_mean", "visual.layer3.9.bn2.running_var", "visual.layer3.9.conv3.weight", "visual.layer3.9.bn3.weight", "visual.layer3.9.bn3.bias", "visual.layer3.9.bn3.running_mean", "visual.layer3.9.bn3.running_var", "visual.layer3.10.conv1.weight", "visual.layer3.10.bn1.weight", "visual.layer3.10.bn1.bias", "visual.layer3.10.bn1.running_mean", "visual.layer3.10.bn1.running_var", "visual.layer3.10.conv2.weight", "visual.layer3.10.bn2.weight", "visual.layer3.10.bn2.bias", "visual.layer3.10.bn2.running_mean", "visual.layer3.10.bn2.running_var", "visual.layer3.10.conv3.weight", "visual.layer3.10.bn3.weight", "visual.layer3.10.bn3.bias", "visual.layer3.10.bn3.running_mean", "visual.layer3.10.bn3.running_var", "visual.layer3.11.conv1.weight", "visual.layer3.11.bn1.weight", "visual.layer3.11.bn1.bias", "visual.layer3.11.bn1.running_mean", "visual.layer3.11.bn1.running_var", "visual.layer3.11.conv2.weight", "visual.layer3.11.bn2.weight", "visual.layer3.11.bn2.bias", "visual.layer3.11.bn2.running_mean", "visual.layer3.11.bn2.running_var", "visual.layer3.11.conv3.weight", "visual.layer3.11.bn3.weight", "visual.layer3.11.bn3.bias", "visual.layer3.11.bn3.running_mean", "visual.layer3.11.bn3.running_var", "visual.layer3.12.conv1.weight", "visual.layer3.12.bn1.weight", "visual.layer3.12.bn1.bias", "visual.layer3.12.bn1.running_mean", "visual.layer3.12.bn1.running_var", "visual.layer3.12.conv2.weight", "visual.layer3.12.bn2.weight", "visual.layer3.12.bn2.bias", "visual.layer3.12.bn2.running_mean", "visual.layer3.12.bn2.running_var", "visual.layer3.12.conv3.weight", "visual.layer3.12.bn3.weight", "visual.layer3.12.bn3.bias", "visual.layer3.12.bn3.running_mean", "visual.layer3.12.bn3.running_var", "visual.layer3.13.conv1.weight", "visual.layer3.13.bn1.weight", "visual.layer3.13.bn1.bias", "visual.layer3.13.bn1.running_mean", "visual.layer3.13.bn1.running_var", "visual.layer3.13.conv2.weight", "visual.layer3.13.bn2.weight", "visual.layer3.13.bn2.bias", "visual.layer3.13.bn2.running_mean", "visual.layer3.13.bn2.running_var", "visual.layer3.13.conv3.weight", "visual.layer3.13.bn3.weight", "visual.layer3.13.bn3.bias", "visual.layer3.13.bn3.running_mean", "visual.layer3.13.bn3.running_var", "visual.layer3.14.conv1.weight", "visual.layer3.14.bn1.weight", "visual.layer3.14.bn1.bias", "visual.layer3.14.bn1.running_mean", "visual.layer3.14.bn1.running_var", "visual.layer3.14.conv2.weight", "visual.layer3.14.bn2.weight", "visual.layer3.14.bn2.bias", "visual.layer3.14.bn2.running_mean", "visual.layer3.14.bn2.running_var", "visual.layer3.14.conv3.weight", "visual.layer3.14.bn3.weight", "visual.layer3.14.bn3.bias", "visual.layer3.14.bn3.running_mean", "visual.layer3.14.bn3.running_var", "visual.layer3.15.conv1.weight", "visual.layer3.15.bn1.weight", "visual.layer3.15.bn1.bias", "visual.layer3.15.bn1.running_mean", "visual.layer3.15.bn1.running_var", "visual.layer3.15.conv2.weight", "visual.layer3.15.bn2.weight", "visual.layer3.15.bn2.bias", "visual.layer3.15.bn2.running_mean", "visual.layer3.15.bn2.running_var", "visual.layer3.15.conv3.weight", "visual.layer3.15.bn3.weight", "visual.layer3.15.bn3.bias", "visual.layer3.15.bn3.running_mean", "visual.layer3.15.bn3.running_var", "visual.layer3.16.conv1.weight", "visual.layer3.16.bn1.weight", "visual.layer3.16.bn1.bias", "visual.layer3.16.bn1.running_mean", "visual.layer3.16.bn1.running_var", "visual.layer3.16.conv2.weight", "visual.layer3.16.bn2.weight", "visual.layer3.16.bn2.bias", "visual.layer3.16.bn2.running_mean", "visual.layer3.16.bn2.running_var", "visual.layer3.16.conv3.weight", "visual.layer3.16.bn3.weight", "visual.layer3.16.bn3.bias", "visual.layer3.16.bn3.running_mean", "visual.layer3.16.bn3.running_var", "visual.layer3.17.conv1.weight", "visual.layer3.17.bn1.weight", "visual.layer3.17.bn1.bias", "visual.layer3.17.bn1.running_mean", "visual.layer3.17.bn1.running_var", "visual.layer3.17.conv2.weight", "visual.layer3.17.bn2.weight", "visual.layer3.17.bn2.bias", "visual.layer3.17.bn2.running_mean", "visual.layer3.17.bn2.running_var", "visual.layer3.17.conv3.weight", "visual.layer3.17.bn3.weight", "visual.layer3.17.bn3.bias", "visual.layer3.17.bn3.running_mean", "visual.layer3.17.bn3.running_var", "visual.layer4.0.conv1.weight", "visual.layer4.0.bn1.weight", "visual.layer4.0.bn1.bias", "visual.layer4.0.bn1.running_mean", "visual.layer4.0.bn1.running_var", "visual.layer4.0.conv2.weight", "visual.layer4.0.bn2.weight", "visual.layer4.0.bn2.bias", "visual.layer4.0.bn2.running_mean", "visual.layer4.0.bn2.running_var", "visual.layer4.0.conv3.weight", "visual.layer4.0.bn3.weight", "visual.layer4.0.bn3.bias", "visual.layer4.0.bn3.running_mean", "visual.layer4.0.bn3.running_var", "visual.layer4.0.downsample.0.weight", "visual.layer4.0.downsample.1.weight", "visual.layer4.0.downsample.1.bias", "visual.layer4.0.downsample.1.running_mean", "visual.layer4.0.downsample.1.running_var", "visual.layer4.1.conv1.weight", "visual.layer4.1.bn1.weight", "visual.layer4.1.bn1.bias", "visual.layer4.1.bn1.running_mean", "visual.layer4.1.bn1.running_var", "visual.layer4.1.conv2.weight", "visual.layer4.1.bn2.weight", "visual.layer4.1.bn2.bias", "visual.layer4.1.bn2.running_mean", "visual.layer4.1.bn2.running_var", "visual.layer4.1.conv3.weight", "visual.layer4.1.bn3.weight", "visual.layer4.1.bn3.bias", "visual.layer4.1.bn3.running_mean", "visual.layer4.1.bn3.running_var", "visual.layer4.2.conv1.weight", "visual.layer4.2.bn1.weight", "visual.layer4.2.bn1.bias", "visual.layer4.2.bn1.running_mean", "visual.layer4.2.bn1.running_var", "visual.layer4.2.conv2.weight", "visual.layer4.2.bn2.weight", "visual.layer4.2.bn2.bias", "visual.layer4.2.bn2.running_mean", "visual.layer4.2.bn2.running_var", "visual.layer4.2.conv3.weight", "visual.layer4.2.bn3.weight", "visual.layer4.2.bn3.bias", "visual.layer4.2.bn3.running_mean", "visual.layer4.2.bn3.running_var", "visual.layer4.3.conv1.weight", "visual.layer4.3.bn1.weight", "visual.layer4.3.bn1.bias", "visual.layer4.3.bn1.running_mean", "visual.layer4.3.bn1.running_var", "visual.layer4.3.conv2.weight", "visual.layer4.3.bn2.weight", "visual.layer4.3.bn2.bias", "visual.layer4.3.bn2.running_mean", "visual.layer4.3.bn2.running_var", "visual.layer4.3.conv3.weight", "visual.layer4.3.bn3.weight", "visual.layer4.3.bn3.bias", "visual.layer4.3.bn3.running_mean", "visual.layer4.3.bn3.running_var", "visual.layer4.4.conv1.weight", "visual.layer4.4.bn1.weight", "visual.layer4.4.bn1.bias", "visual.layer4.4.bn1.running_mean", "visual.layer4.4.bn1.running_var", "visual.layer4.4.conv2.weight", "visual.layer4.4.bn2.weight", "visual.layer4.4.bn2.bias", "visual.layer4.4.bn2.running_mean", "visual.layer4.4.bn2.running_var", "visual.layer4.4.conv3.weight", "visual.layer4.4.bn3.weight", "visual.layer4.4.bn3.bias", "visual.layer4.4.bn3.running_mean", "visual.layer4.4.bn3.running_var", "visual.layer4.5.conv1.weight", "visual.layer4.5.bn1.weight", "visual.layer4.5.bn1.bias", "visual.layer4.5.bn1.running_mean", "visual.layer4.5.bn1.running_var", "visual.layer4.5.conv2.weight", "visual.layer4.5.bn2.weight", "visual.layer4.5.bn2.bias", "visual.layer4.5.bn2.running_mean", "visual.layer4.5.bn2.running_var", "visual.layer4.5.conv3.weight", "visual.layer4.5.bn3.weight", "visual.layer4.5.bn3.bias", "visual.layer4.5.bn3.running_mean", "visual.layer4.5.bn3.running_var", "visual.layer4.6.conv1.weight", "visual.layer4.6.bn1.weight", "visual.layer4.6.bn1.bias", "visual.layer4.6.bn1.running_mean", "visual.layer4.6.bn1.running_var", "visual.layer4.6.conv2.weight", "visual.layer4.6.bn2.weight", "visual.layer4.6.bn2.bias", "visual.layer4.6.bn2.running_mean", "visual.layer4.6.bn2.running_var", "visual.layer4.6.conv3.weight", "visual.layer4.6.bn3.weight", "visual.layer4.6.bn3.bias", "visual.layer4.6.bn3.running_mean", "visual.layer4.6.bn3.running_var", "visual.layer4.7.conv1.weight", "visual.layer4.7.bn1.weight", "visual.layer4.7.bn1.bias", "visual.layer4.7.bn1.running_mean", "visual.layer4.7.bn1.running_var", "visual.layer4.7.conv2.weight", "visual.layer4.7.bn2.weight", "visual.layer4.7.bn2.bias", "visual.layer4.7.bn2.running_mean", "visual.layer4.7.bn2.running_var", "visual.layer4.7.conv3.weight", "visual.layer4.7.bn3.weight", "visual.layer4.7.bn3.bias", "visual.layer4.7.bn3.running_mean", "visual.layer4.7.bn3.running_var", "visual.attnpool.positional_embedding", "visual.attnpool.k_proj.weight", "visual.attnpool.k_proj.bias", "visual.attnpool.q_proj.weight", "visual.attnpool.q_proj.bias", "visual.attnpool.v_proj.weight", "visual.attnpool.v_proj.bias", "visual.attnpool.c_proj.weight", "visual.attnpool.c_proj.bias", "transformer.resblocks.0.attn.in_proj_weight", "transformer.resblocks.0.attn.in_proj_bias", "transformer.resblocks.0.attn.out_proj.weight", "transformer.resblocks.0.attn.out_proj.bias", "transformer.resblocks.0.ln_1.weight", "transformer.resblocks.0.ln_1.bias", "transformer.resblocks.0.mlp.c_fc.weight", "transformer.resblocks.0.mlp.c_fc.bias", "transformer.resblocks.0.mlp.c_proj.weight", "transformer.resblocks.0.mlp.c_proj.bias", "transformer.resblocks.0.ln_2.weight", "transformer.resblocks.0.ln_2.bias", "transformer.resblocks.1.attn.in_proj_weight", "transformer.resblocks.1.attn.in_proj_bias", "transformer.resblocks.1.attn.out_proj.weight", "transformer.resblocks.1.attn.out_proj.bias", "transformer.resblocks.1.ln_1.weight", "transformer.resblocks.1.ln_1.bias", "transformer.resblocks.1.mlp.c_fc.weight", "transformer.resblocks.1.mlp.c_fc.bias", "transformer.resblocks.1.mlp.c_proj.weight", "transformer.resblocks.1.mlp.c_proj.bias", "transformer.resblocks.1.ln_2.weight", "transformer.resblocks.1.ln_2.bias", "transformer.resblocks.2.attn.in_proj_weight", "transformer.resblocks.2.attn.in_proj_bias", "transformer.resblocks.2.attn.out_proj.weight", "transformer.resblocks.2.attn.out_proj.bias", "transformer.resblocks.2.ln_1.weight", "transformer.resblocks.2.ln_1.bias", "transformer.resblocks.2.mlp.c_fc.weight", "transformer.resblocks.2.mlp.c_fc.bias", "transformer.resblocks.2.mlp.c_proj.weight", "transformer.resblocks.2.mlp.c_proj.bias", "transformer.resblocks.2.ln_2.weight", "transformer.resblocks.2.ln_2.bias", "transformer.resblocks.3.attn.in_proj_weight", "transformer.resblocks.3.attn.in_proj_bias", "transformer.resblocks.3.attn.out_proj.weight", "transformer.resblocks.3.attn.out_proj.bias", "transformer.resblocks.3.ln_1.weight", "transformer.resblocks.3.ln_1.bias", "transformer.resblocks.3.mlp.c_fc.weight", "transformer.resblocks.3.mlp.c_fc.bias", "transformer.resblocks.3.mlp.c_proj.weight", "transformer.resblocks.3.mlp.c_proj.bias", "transformer.resblocks.3.ln_2.weight", "transformer.resblocks.3.ln_2.bias", "transformer.resblocks.4.attn.in_proj_weight", "transformer.resblocks.4.attn.in_proj_bias", "transformer.resblocks.4.attn.out_proj.weight", "transformer.resblocks.4.attn.out_proj.bias", "transformer.resblocks.4.ln_1.weight", "transformer.resblocks.4.ln_1.bias", "transformer.resblocks.4.mlp.c_fc.weight", "transformer.resblocks.4.mlp.c_fc.bias", "transformer.resblocks.4.mlp.c_proj.weight", "transformer.resblocks.4.mlp.c_proj.bias", "transformer.resblocks.4.ln_2.weight", "transformer.resblocks.4.ln_2.bias", "transformer.resblocks.5.attn.in_proj_weight", "transformer.resblocks.5.attn.in_proj_bias", "transformer.resblocks.5.attn.out_proj.weight", "transformer.resblocks.5.attn.out_proj.bias", "transformer.resblocks.5.ln_1.weight", "transformer.resblocks.5.ln_1.bias", "transformer.resblocks.5.mlp.c_fc.weight", "transformer.resblocks.5.mlp.c_fc.bias", "transformer.resblocks.5.mlp.c_proj.weight", "transformer.resblocks.5.mlp.c_proj.bias", "transformer.resblocks.5.ln_2.weight", "transformer.resblocks.5.ln_2.bias", "transformer.resblocks.6.attn.in_proj_weight", "transformer.resblocks.6.attn.in_proj_bias", "transformer.resblocks.6.attn.out_proj.weight", "transformer.resblocks.6.attn.out_proj.bias", "transformer.resblocks.6.ln_1.weight", "transformer.resblocks.6.ln_1.bias", "transformer.resblocks.6.mlp.c_fc.weight", "transformer.resblocks.6.mlp.c_fc.bias", "transformer.resblocks.6.mlp.c_proj.weight", "transformer.resblocks.6.mlp.c_proj.bias", "transformer.resblocks.6.ln_2.weight", "transformer.resblocks.6.ln_2.bias", "transformer.resblocks.7.attn.in_proj_weight", "transformer.resblocks.7.attn.in_proj_bias", "transformer.resblocks.7.attn.out_proj.weight", "transformer.resblocks.7.attn.out_proj.bias", "transformer.resblocks.7.ln_1.weight", "transformer.resblocks.7.ln_1.bias", "transformer.resblocks.7.mlp.c_fc.weight", "transformer.resblocks.7.mlp.c_fc.bias", "transformer.resblocks.7.mlp.c_proj.weight", "transformer.resblocks.7.mlp.c_proj.bias", "transformer.resblocks.7.ln_2.weight", "transformer.resblocks.7.ln_2.bias", "transformer.resblocks.8.attn.in_proj_weight", "transformer.resblocks.8.attn.in_proj_bias", "transformer.resblocks.8.attn.out_proj.weight", "transformer.resblocks.8.attn.out_proj.bias", "transformer.resblocks.8.ln_1.weight", "transformer.resblocks.8.ln_1.bias", "transformer.resblocks.8.mlp.c_fc.weight", "transformer.resblocks.8.mlp.c_fc.bias", "transformer.resblocks.8.mlp.c_proj.weight", "transformer.resblocks.8.mlp.c_proj.bias", "transformer.resblocks.8.ln_2.weight", "transformer.resblocks.8.ln_2.bias", "transformer.resblocks.9.attn.in_proj_weight", "transformer.resblocks.9.attn.in_proj_bias", "transformer.resblocks.9.attn.out_proj.weight", "transformer.resblocks.9.attn.out_proj.bias", "transformer.resblocks.9.ln_1.weight", "transformer.resblocks.9.ln_1.bias", "transformer.resblocks.9.mlp.c_fc.weight", "transformer.resblocks.9.mlp.c_fc.bias", "transformer.resblocks.9.mlp.c_proj.weight", "transformer.resblocks.9.mlp.c_proj.bias", "transformer.resblocks.9.ln_2.weight", "transformer.resblocks.9.ln_2.bias", "transformer.resblocks.10.attn.in_proj_weight", "transformer.resblocks.10.attn.in_proj_bias", "transformer.resblocks.10.attn.out_proj.weight", "transformer.resblocks.10.attn.out_proj.bias", "transformer.resblocks.10.ln_1.weight", "transformer.resblocks.10.ln_1.bias", "transformer.resblocks.10.mlp.c_fc.weight", "transformer.resblocks.10.mlp.c_fc.bias", "transformer.resblocks.10.mlp.c_proj.weight", "transformer.resblocks.10.mlp.c_proj.bias", "transformer.resblocks.10.ln_2.weight", "transformer.resblocks.10.ln_2.bias", "transformer.resblocks.11.attn.in_proj_weight", "transformer.resblocks.11.attn.in_proj_bias", "transformer.resblocks.11.attn.out_proj.weight", "transformer.resblocks.11.attn.out_proj.bias", "transformer.resblocks.11.ln_1.weight", "transformer.resblocks.11.ln_1.bias", "transformer.resblocks.11.mlp.c_fc.weight", "transformer.resblocks.11.mlp.c_fc.bias", "transformer.resblocks.11.mlp.c_proj.weight", "transformer.resblocks.11.mlp.c_proj.bias", "transformer.resblocks.11.ln_2.weight", "transformer.resblocks.11.ln_2.bias", "token_embedding.weight", "ln_final.weight", "ln_final.bias". 
	Unexpected key(s) in state_dict: "it", "network", "optimizer", "scheduler". 

查询到的其他办法:

http://t.csdn.cn/4eVWQ
http://t.csdn.cn/les0Q
http://t.csdn.cn/g3ycG
http://t.csdn.cn/7y71K
http://t.csdn.cn/5JR8t

以上方法皆不适用
原模型的keys为

Missing key(s) in state_dict: "positional_embedding", "text_projection", "logit_scale", "visual.conv1.weight", "visual.bn1.weight", "visual.bn1.bias", "visual.bn1.running_mean"......

而我自己训练的模型结构是

checkpoint = {
	'it': epoch,
	'network': net.state_dict(),
	'optimizer': optimizer.state_dict(),
	'scheduler': scheduler.state_dict()
                }

checkpoint没有"state_dict"的key,按照查询到的方法,不能直接使用checkpoint[“state_dict”],查看键network、optimizer、scheduler三个键中的内容,发现:

for k, v in ckpt.items():
    if k != 'it':
        print(ckpt[k].keys())
        
结果为:
odict_keys(['positional_embedding', 'text_projection', 'logit_scale', 'visual.conv1.weight', 'visual.bn1.weight', 'visual.bn1.bias', 'visual.bn1.running_mean', 'visual.bn1.running_var', 'visual.bn1.num_batches_tracked', 'visual.conv2.weight', 'visual.bn2.weight', 'visual.bn2.bias', 'visual.bn2.running_mean', 'visual.bn2.running_var', 'visual.bn2.num_batches_tracked', 'visual.conv3.weight', 'visual.bn3.weight', 'visual.bn3.bias', 'visual.bn3.running_mean', 'visual.bn3.running_var', 'visual.bn3.num_batches_tracked', 'visual.layer1.0.conv1.weight', 'visual.layer1.0.bn1.weight', 'visual.layer1.0.bn1.bias', 'visual.layer1.0.bn1.running_mean', 'visual.layer1.0.bn1.running_var', 'visual.layer1.0.bn1.num_batches_tracked', 'visual.layer1.0.conv2.weight', 'visual.layer1.0.bn2.weight', 'visual.layer1.0.bn2.bias', 'visual.layer1.0.bn2.running_mean', 'visual.layer1.0.bn2.running_var', 'visual.layer1.0.bn2.num_batches_tracked', 'visual.layer1.0.conv3.weight', 'visual.layer1.0.bn3.weight', 'visual.layer1.0.bn3.bias', 'visual.layer1.0.bn3.running_mean', 'visual.layer1.0.bn3.running_var', 'visual.layer1.0.bn3.num_batches_tracked', 'visual.layer1.0.downsample.0.weight', 'visual.layer1.0.downsample.1.weight', 'visual.layer1.0.downsample.1.bias', 'visual.layer1.0.downsample.1.running_mean', 'visual.layer1.0.downsample.1.running_var', 'visual.layer1.0.downsample.1.num_batches_tracked', 'visual.layer1.1.conv1.weight', 'visual.layer1.1.bn1.weight', 'visual.layer1.1.bn1.bias', 'visual.layer1.1.bn1.running_mean', 'visual.layer1.1.bn1.running_var', 'visual.layer1.1.bn1.num_batches_tracked', 'visual.layer1.1.conv2.weight', 'visual.layer1.1.bn2.weight', 'visual.layer1.1.bn2.bias', 'visual.layer1.1.bn2.running_mean', 'visual.layer1.1.bn2.running_var', 'visual.layer1.1.bn2.num_batches_tracked', 'visual.layer1.1.conv3.weight', 'visual.layer1.1.bn3.weight', 'visual.layer1.1.bn3.bias', 'visual.layer1.1.bn3.running_mean', 'visual.layer1.1.bn3.running_var', 'visual.layer1.1.bn3.num_batches_tracked', 'visual.layer1.2.conv1.weight', 'visual.layer1.2.bn1.weight', 'visual.layer1.2.bn1.bias', 'visual.layer1.2.bn1.running_mean', 'visual.layer1.2.bn1.running_var', 'visual.layer1.2.bn1.num_batches_tracked', 'visual.layer1.2.conv2.weight', 'visual.layer1.2.bn2.weight', 'visual.layer1.2.bn2.bias', 'visual.layer1.2.bn2.running_mean', 'visual.layer1.2.bn2.running_var', 'visual.layer1.2.bn2.num_batches_tracked', 'visual.layer1.2.conv3.weight', 'visual.layer1.2.bn3.weight', 'visual.layer1.2.bn3.bias', 'visual.layer1.2.bn3.running_mean', 'visual.layer1.2.bn3.running_var', 'visual.layer1.2.bn3.num_batches_tracked', 'visual.layer1.3.conv1.weight', 'visual.layer1.3.bn1.weight', 'visual.layer1.3.bn1.bias', 'visual.layer1.3.bn1.running_mean', 'visual.layer1.3.bn1.running_var', 'visual.layer1.3.bn1.num_batches_tracked', 'visual.layer1.3.conv2.weight', 'visual.layer1.3.bn2.weight', 'visual.layer1.3.bn2.bias', 'visual.layer1.3.bn2.running_mean', 'visual.layer1.3.bn2.running_var', 'visual.layer1.3.bn2.num_batches_tracked', 'visual.layer1.3.conv3.weight', 'visual.layer1.3.bn3.weight', 'visual.layer1.3.bn3.bias', 'visual.layer1.3.bn3.running_mean', 'visual.layer1.3.bn3.running_var', 'visual.layer1.3.bn3.num_batches_tracked', 'visual.layer1.4.conv1.weight', 'visual.layer1.4.bn1.weight', 'visual.layer1.4.bn1.bias', 'visual.layer1.4.bn1.running_mean', 'visual.layer1.4.bn1.running_var', 'visual.layer1.4.bn1.num_batches_tracked', 'visual.layer1.4.conv2.weight', 'visual.layer1.4.bn2.weight', 'visual.layer1.4.bn2.bias', 'visual.layer1.4.bn2.running_mean', 'visual.layer1.4.bn2.running_var', 'visual.layer1.4.bn2.num_batches_tracked', 'visual.layer1.4.conv3.weight', 'visual.layer1.4.bn3.weight', 'visual.layer1.4.bn3.bias', 'visual.layer1.4.bn3.running_mean', 'visual.layer1.4.bn3.running_var', 'visual.layer1.4.bn3.num_batches_tracked', 'visual.layer1.5.conv1.weight', 'visual.layer1.5.bn1.weight', 'visual.layer1.5.bn1.bias', 'visual.layer1.5.bn1.running_mean', 'visual.layer1.5.bn1.running_var', 'visual.layer1.5.bn1.num_batches_tracked', 'visual.layer1.5.conv2.weight', 'visual.layer1.5.bn2.weight', 'visual.layer1.5.bn2.bias', 'visual.layer1.5.bn2.running_mean', 'visual.layer1.5.bn2.running_var', 'visual.layer1.5.bn2.num_batches_tracked', 'visual.layer1.5.conv3.weight', 'visual.layer1.5.bn3.weight', 'visual.layer1.5.bn3.bias', 'visual.layer1.5.bn3.running_mean', 'visual.layer1.5.bn3.running_var', 'visual.layer1.5.bn3.num_batches_tracked', 'visual.layer2.0.conv1.weight', 'visual.layer2.0.bn1.weight', 'visual.layer2.0.bn1.bias', 'visual.layer2.0.bn1.running_mean', 'visual.layer2.0.bn1.running_var', 'visual.layer2.0.bn1.num_batches_tracked', 'visual.layer2.0.conv2.weight', 'visual.layer2.0.bn2.weight', 'visual.layer2.0.bn2.bias', 'visual.layer2.0.bn2.running_mean', 'visual.layer2.0.bn2.running_var', 'visual.layer2.0.bn2.num_batches_tracked', 'visual.layer2.0.conv3.weight', 'visual.layer2.0.bn3.weight', 'visual.layer2.0.bn3.bias', 'visual.layer2.0.bn3.running_mean', 'visual.layer2.0.bn3.running_var', 'visual.layer2.0.bn3.num_batches_tracked', 'visual.layer2.0.downsample.0.weight', 'visual.layer2.0.downsample.1.weight', 'visual.layer2.0.downsample.1.bias', 'visual.layer2.0.downsample.1.running_mean', 'visual.layer2.0.downsample.1.running_var', 'visual.layer2.0.downsample.1.num_batches_tracked', 'visual.layer2.1.conv1.weight', 'visual.layer2.1.bn1.weight', 'visual.layer2.1.bn1.bias', 'visual.layer2.1.bn1.running_mean', 'visual.layer2.1.bn1.running_var', 'visual.layer2.1.bn1.num_batches_tracked', 'visual.layer2.1.conv2.weight', 'visual.layer2.1.bn2.weight', 'visual.layer2.1.bn2.bias', 'visual.layer2.1.bn2.running_mean', 'visual.layer2.1.bn2.running_var', 'visual.layer2.1.bn2.num_batches_tracked', 'visual.layer2.1.conv3.weight', 'visual.layer2.1.bn3.weight', 'visual.layer2.1.bn3.bias', 'visual.layer2.1.bn3.running_mean', 'visual.layer2.1.bn3.running_var', 'visual.layer2.1.bn3.num_batches_tracked', 'visual.layer2.2.conv1.weight', 'visual.layer2.2.bn1.weight', 'visual.layer2.2.bn1.bias', 'visual.layer2.2.bn1.running_mean', 'visual.layer2.2.bn1.running_var', 'visual.layer2.2.bn1.num_batches_tracked', 'visual.layer2.2.conv2.weight', 'visual.layer2.2.bn2.weight', 'visual.layer2.2.bn2.bias', 'visual.layer2.2.bn2.running_mean', 'visual.layer2.2.bn2.running_var', 'visual.layer2.2.bn2.num_batches_tracked', 'visual.layer2.2.conv3.weight', 'visual.layer2.2.bn3.weight', 'visual.layer2.2.bn3.bias', 'visual.layer2.2.bn3.running_mean', 'visual.layer2.2.bn3.running_var', 'visual.layer2.2.bn3.num_batches_tracked', 'visual.layer2.3.conv1.weight', 'visual.layer2.3.bn1.weight', 'visual.layer2.3.bn1.bias', 'visual.layer2.3.bn1.running_mean', 'visual.layer2.3.bn1.running_var', 'visual.layer2.3.bn1.num_batches_tracked', 'visual.layer2.3.conv2.weight', 'visual.layer2.3.bn2.weight', 'visual.layer2.3.bn2.bias', 'visual.layer2.3.bn2.running_mean', 'visual.layer2.3.bn2.running_var', 'visual.layer2.3.bn2.num_batches_tracked', 'visual.layer2.3.conv3.weight', 'visual.layer2.3.bn3.weight', 'visual.layer2.3.bn3.bias', 'visual.layer2.3.bn3.running_mean', 'visual.layer2.3.bn3.running_var', 'visual.layer2.3.bn3.num_batches_tracked', 'visual.layer2.4.conv1.weight', 'visual.layer2.4.bn1.weight', 'visual.layer2.4.bn1.bias', 'visual.layer2.4.bn1.running_mean', 'visual.layer2.4.bn1.running_var', 'visual.layer2.4.bn1.num_batches_tracked', 'visual.layer2.4.conv2.weight', 'visual.layer2.4.bn2.weight', 'visual.layer2.4.bn2.bias', 'visual.layer2.4.bn2.running_mean', 'visual.layer2.4.bn2.running_var', 'visual.layer2.4.bn2.num_batches_tracked', 'visual.layer2.4.conv3.weight', 'visual.layer2.4.bn3.weight', 'visual.layer2.4.bn3.bias', 'visual.layer2.4.bn3.running_mean', 'visual.layer2.4.bn3.running_var', 'visual.layer2.4.bn3.num_batches_tracked', 'visual.layer2.5.conv1.weight', 'visual.layer2.5.bn1.weight', 'visual.layer2.5.bn1.bias', 'visual.layer2.5.bn1.running_mean', 'visual.layer2.5.bn1.running_var', 'visual.layer2.5.bn1.num_batches_tracked', 'visual.layer2.5.conv2.weight', 'visual.layer2.5.bn2.weight', 'visual.layer2.5.bn2.bias', 'visual.layer2.5.bn2.running_mean', 'visual.layer2.5.bn2.running_var', 'visual.layer2.5.bn2.num_batches_tracked', 'visual.layer2.5.conv3.weight', 'visual.layer2.5.bn3.weight', 'visual.layer2.5.bn3.bias', 'visual.layer2.5.bn3.running_mean', 'visual.layer2.5.bn3.running_var', 'visual.layer2.5.bn3.num_batches_tracked', 'visual.layer2.6.conv1.weight', 'visual.layer2.6.bn1.weight', 'visual.layer2.6.bn1.bias', 'visual.layer2.6.bn1.running_mean', 'visual.layer2.6.bn1.running_var', 'visual.layer2.6.bn1.num_batches_tracked', 'visual.layer2.6.conv2.weight', 'visual.layer2.6.bn2.weight', 'visual.layer2.6.bn2.bias', 'visual.layer2.6.bn2.running_mean', 'visual.layer2.6.bn2.running_var', 'visual.layer2.6.bn2.num_batches_tracked', 'visual.layer2.6.conv3.weight', 'visual.layer2.6.bn3.weight', 'visual.layer2.6.bn3.bias', 'visual.layer2.6.bn3.running_mean', 'visual.layer2.6.bn3.running_var', 'visual.layer2.6.bn3.num_batches_tracked', 'visual.layer2.7.conv1.weight', 'visual.layer2.7.bn1.weight', 'visual.layer2.7.bn1.bias', 'visual.layer2.7.bn1.running_mean', 'visual.layer2.7.bn1.running_var', 'visual.layer2.7.bn1.num_batches_tracked', 'visual.layer2.7.conv2.weight', 'visual.layer2.7.bn2.weight', 'visual.layer2.7.bn2.bias', 'visual.layer2.7.bn2.running_mean', 'visual.layer2.7.bn2.running_var', 'visual.layer2.7.bn2.num_batches_tracked', 'visual.layer2.7.conv3.weight', 'visual.layer2.7.bn3.weight', 'visual.layer2.7.bn3.bias', 'visual.layer2.7.bn3.running_mean', 'visual.layer2.7.bn3.running_var', 'visual.layer2.7.bn3.num_batches_tracked', 'visual.layer3.0.conv1.weight', 'visual.layer3.0.bn1.weight', 'visual.layer3.0.bn1.bias', 'visual.layer3.0.bn1.running_mean', 'visual.layer3.0.bn1.running_var', 'visual.layer3.0.bn1.num_batches_tracked', 'visual.layer3.0.conv2.weight', 'visual.layer3.0.bn2.weight', 'visual.layer3.0.bn2.bias', 'visual.layer3.0.bn2.running_mean', 'visual.layer3.0.bn2.running_var', 'visual.layer3.0.bn2.num_batches_tracked', 'visual.layer3.0.conv3.weight', 'visual.layer3.0.bn3.weight', 'visual.layer3.0.bn3.bias', 'visual.layer3.0.bn3.running_mean', 'visual.layer3.0.bn3.running_var', 'visual.layer3.0.bn3.num_batches_tracked', 'visual.layer3.0.downsample.0.weight', 'visual.layer3.0.downsample.1.weight', 'visual.layer3.0.downsample.1.bias', 'visual.layer3.0.downsample.1.running_mean', 'visual.layer3.0.downsample.1.running_var', 'visual.layer3.0.downsample.1.num_batches_tracked', 'visual.layer3.1.conv1.weight', 'visual.layer3.1.bn1.weight', 'visual.layer3.1.bn1.bias', 'visual.layer3.1.bn1.running_mean', 'visual.layer3.1.bn1.running_var', 'visual.layer3.1.bn1.num_batches_tracked', 'visual.layer3.1.conv2.weight', 'visual.layer3.1.bn2.weight', 'visual.layer3.1.bn2.bias', 'visual.layer3.1.bn2.running_mean', 'visual.layer3.1.bn2.running_var', 'visual.layer3.1.bn2.num_batches_tracked', 'visual.layer3.1.conv3.weight', 'visual.layer3.1.bn3.weight', 'visual.layer3.1.bn3.bias', 'visual.layer3.1.bn3.running_mean', 'visual.layer3.1.bn3.running_var', 'visual.layer3.1.bn3.num_batches_tracked', 'visual.layer3.2.conv1.weight', 'visual.layer3.2.bn1.weight', 'visual.layer3.2.bn1.bias', 'visual.layer3.2.bn1.running_mean', 'visual.layer3.2.bn1.running_var', 'visual.layer3.2.bn1.num_batches_tracked', 'visual.layer3.2.conv2.weight', 'visual.layer3.2.bn2.weight', 'visual.layer3.2.bn2.bias', 'visual.layer3.2.bn2.running_mean', 'visual.layer3.2.bn2.running_var', 'visual.layer3.2.bn2.num_batches_tracked', 'visual.layer3.2.conv3.weight', 'visual.layer3.2.bn3.weight', 'visual.layer3.2.bn3.bias', 'visual.layer3.2.bn3.running_mean', 'visual.layer3.2.bn3.running_var', 'visual.layer3.2.bn3.num_batches_tracked', 'visual.layer3.3.conv1.weight', 'visual.layer3.3.bn1.weight', 'visual.layer3.3.bn1.bias', 'visual.layer3.3.bn1.running_mean', 'visual.layer3.3.bn1.running_var', 'visual.layer3.3.bn1.num_batches_tracked', 'visual.layer3.3.conv2.weight', 'visual.layer3.3.bn2.weight', 'visual.layer3.3.bn2.bias', 'visual.layer3.3.bn2.running_mean', 'visual.layer3.3.bn2.running_var', 'visual.layer3.3.bn2.num_batches_tracked', 'visual.layer3.3.conv3.weight', 'visual.layer3.3.bn3.weight', 'visual.layer3.3.bn3.bias', 'visual.layer3.3.bn3.running_mean', 'visual.layer3.3.bn3.running_var', 'visual.layer3.3.bn3.num_batches_tracked', 'visual.layer3.4.conv1.weight', 'visual.layer3.4.bn1.weight', 'visual.layer3.4.bn1.bias', 'visual.layer3.4.bn1.running_mean', 'visual.layer3.4.bn1.running_var', 'visual.layer3.4.bn1.num_batches_tracked', 'visual.layer3.4.conv2.weight', 'visual.layer3.4.bn2.weight', 'visual.layer3.4.bn2.bias', 'visual.layer3.4.bn2.running_mean', 'visual.layer3.4.bn2.running_var', 'visual.layer3.4.bn2.num_batches_tracked', 'visual.layer3.4.conv3.weight', 'visual.layer3.4.bn3.weight', 'visual.layer3.4.bn3.bias', 'visual.layer3.4.bn3.running_mean', 'visual.layer3.4.bn3.running_var', 'visual.layer3.4.bn3.num_batches_tracked', 'visual.layer3.5.conv1.weight', 'visual.layer3.5.bn1.weight', 'visual.layer3.5.bn1.bias', 'visual.layer3.5.bn1.running_mean', 'visual.layer3.5.bn1.running_var', 'visual.layer3.5.bn1.num_batches_tracked', 'visual.layer3.5.conv2.weight', 'visual.layer3.5.bn2.weight', 'visual.layer3.5.bn2.bias', 'visual.layer3.5.bn2.running_mean', 'visual.layer3.5.bn2.running_var', 'visual.layer3.5.bn2.num_batches_tracked', 'visual.layer3.5.conv3.weight', 'visual.layer3.5.bn3.weight', 'visual.layer3.5.bn3.bias', 'visual.layer3.5.bn3.running_mean', 'visual.layer3.5.bn3.running_var', 'visual.layer3.5.bn3.num_batches_tracked', 'visual.layer3.6.conv1.weight', 'visual.layer3.6.bn1.weight', 'visual.layer3.6.bn1.bias', 'visual.layer3.6.bn1.running_mean', 'visual.layer3.6.bn1.running_var', 'visual.layer3.6.bn1.num_batches_tracked', 'visual.layer3.6.conv2.weight', 'visual.layer3.6.bn2.weight', 'visual.layer3.6.bn2.bias', 'visual.layer3.6.bn2.running_mean', 'visual.layer3.6.bn2.running_var', 'visual.layer3.6.bn2.num_batches_tracked', 'visual.layer3.6.conv3.weight', 'visual.layer3.6.bn3.weight', 'visual.layer3.6.bn3.bias', 'visual.layer3.6.bn3.running_mean', 'visual.layer3.6.bn3.running_var', 'visual.layer3.6.bn3.num_batches_tracked', 'visual.layer3.7.conv1.weight', 'visual.layer3.7.bn1.weight', 'visual.layer3.7.bn1.bias', 'visual.layer3.7.bn1.running_mean', 'visual.layer3.7.bn1.running_var', 'visual.layer3.7.bn1.num_batches_tracked', 'visual.layer3.7.conv2.weight', 'visual.layer3.7.bn2.weight', 'visual.layer3.7.bn2.bias', 'visual.layer3.7.bn2.running_mean', 'visual.layer3.7.bn2.running_var', 'visual.layer3.7.bn2.num_batches_tracked', 'visual.layer3.7.conv3.weight', 'visual.layer3.7.bn3.weight', 'visual.layer3.7.bn3.bias', 'visual.layer3.7.bn3.running_mean', 'visual.layer3.7.bn3.running_var', 'visual.layer3.7.bn3.num_batches_tracked', 'visual.layer3.8.conv1.weight', 'visual.layer3.8.bn1.weight', 'visual.layer3.8.bn1.bias', 'visual.layer3.8.bn1.running_mean', 'visual.layer3.8.bn1.running_var', 'visual.layer3.8.bn1.num_batches_tracked', 'visual.layer3.8.conv2.weight', 'visual.layer3.8.bn2.weight', 'visual.layer3.8.bn2.bias', 'visual.layer3.8.bn2.running_mean', 'visual.layer3.8.bn2.running_var', 'visual.layer3.8.bn2.num_batches_tracked', 'visual.layer3.8.conv3.weight', 'visual.layer3.8.bn3.weight', 'visual.layer3.8.bn3.bias', 'visual.layer3.8.bn3.running_mean', 'visual.layer3.8.bn3.running_var', 'visual.layer3.8.bn3.num_batches_tracked', 'visual.layer3.9.conv1.weight', 'visual.layer3.9.bn1.weight', 'visual.layer3.9.bn1.bias', 'visual.layer3.9.bn1.running_mean', 'visual.layer3.9.bn1.running_var', 'visual.layer3.9.bn1.num_batches_tracked', 'visual.layer3.9.conv2.weight', 'visual.layer3.9.bn2.weight', 'visual.layer3.9.bn2.bias', 'visual.layer3.9.bn2.running_mean', 'visual.layer3.9.bn2.running_var', 'visual.layer3.9.bn2.num_batches_tracked', 'visual.layer3.9.conv3.weight', 'visual.layer3.9.bn3.weight', 'visual.layer3.9.bn3.bias', 'visual.layer3.9.bn3.running_mean', 'visual.layer3.9.bn3.running_var', 'visual.layer3.9.bn3.num_batches_tracked', 'visual.layer3.10.conv1.weight', 'visual.layer3.10.bn1.weight', 'visual.layer3.10.bn1.bias', 'visual.layer3.10.bn1.running_mean', 'visual.layer3.10.bn1.running_var', 'visual.layer3.10.bn1.num_batches_tracked', 'visual.layer3.10.conv2.weight', 'visual.layer3.10.bn2.weight', 'visual.layer3.10.bn2.bias', 'visual.layer3.10.bn2.running_mean', 'visual.layer3.10.bn2.running_var', 'visual.layer3.10.bn2.num_batches_tracked', 'visual.layer3.10.conv3.weight', 'visual.layer3.10.bn3.weight', 'visual.layer3.10.bn3.bias', 'visual.layer3.10.bn3.running_mean', 'visual.layer3.10.bn3.running_var', 'visual.layer3.10.bn3.num_batches_tracked', 'visual.layer3.11.conv1.weight', 'visual.layer3.11.bn1.weight', 'visual.layer3.11.bn1.bias', 'visual.layer3.11.bn1.running_mean', 'visual.layer3.11.bn1.running_var', 'visual.layer3.11.bn1.num_batches_tracked', 'visual.layer3.11.conv2.weight', 'visual.layer3.11.bn2.weight', 'visual.layer3.11.bn2.bias', 'visual.layer3.11.bn2.running_mean', 'visual.layer3.11.bn2.running_var', 'visual.layer3.11.bn2.num_batches_tracked', 'visual.layer3.11.conv3.weight', 'visual.layer3.11.bn3.weight', 'visual.layer3.11.bn3.bias', 'visual.layer3.11.bn3.running_mean', 'visual.layer3.11.bn3.running_var', 'visual.layer3.11.bn3.num_batches_tracked', 'visual.layer3.12.conv1.weight', 'visual.layer3.12.bn1.weight', 'visual.layer3.12.bn1.bias', 'visual.layer3.12.bn1.running_mean', 'visual.layer3.12.bn1.running_var', 'visual.layer3.12.bn1.num_batches_tracked', 'visual.layer3.12.conv2.weight', 'visual.layer3.12.bn2.weight', 'visual.layer3.12.bn2.bias', 'visual.layer3.12.bn2.running_mean', 'visual.layer3.12.bn2.running_var', 'visual.layer3.12.bn2.num_batches_tracked', 'visual.layer3.12.conv3.weight', 'visual.layer3.12.bn3.weight', 'visual.layer3.12.bn3.bias', 'visual.layer3.12.bn3.running_mean', 'visual.layer3.12.bn3.running_var', 'visual.layer3.12.bn3.num_batches_tracked', 'visual.layer3.13.conv1.weight', 'visual.layer3.13.bn1.weight', 'visual.layer3.13.bn1.bias', 'visual.layer3.13.bn1.running_mean', 'visual.layer3.13.bn1.running_var', 'visual.layer3.13.bn1.num_batches_tracked', 'visual.layer3.13.conv2.weight', 'visual.layer3.13.bn2.weight', 'visual.layer3.13.bn2.bias', 'visual.layer3.13.bn2.running_mean', 'visual.layer3.13.bn2.running_var', 'visual.layer3.13.bn2.num_batches_tracked', 'visual.layer3.13.conv3.weight', 'visual.layer3.13.bn3.weight', 'visual.layer3.13.bn3.bias', 'visual.layer3.13.bn3.running_mean', 'visual.layer3.13.bn3.running_var', 'visual.layer3.13.bn3.num_batches_tracked', 'visual.layer3.14.conv1.weight', 'visual.layer3.14.bn1.weight', 'visual.layer3.14.bn1.bias', 'visual.layer3.14.bn1.running_mean', 'visual.layer3.14.bn1.running_var', 'visual.layer3.14.bn1.num_batches_tracked', 'visual.layer3.14.conv2.weight', 'visual.layer3.14.bn2.weight', 'visual.layer3.14.bn2.bias', 'visual.layer3.14.bn2.running_mean', 'visual.layer3.14.bn2.running_var', 'visual.layer3.14.bn2.num_batches_tracked', 'visual.layer3.14.conv3.weight', 'visual.layer3.14.bn3.weight', 'visual.layer3.14.bn3.bias', 'visual.layer3.14.bn3.running_mean', 'visual.layer3.14.bn3.running_var', 'visual.layer3.14.bn3.num_batches_tracked', 'visual.layer3.15.conv1.weight', 'visual.layer3.15.bn1.weight', 'visual.layer3.15.bn1.bias', 'visual.layer3.15.bn1.running_mean', 'visual.layer3.15.bn1.running_var', 'visual.layer3.15.bn1.num_batches_tracked', 'visual.layer3.15.conv2.weight', 'visual.layer3.15.bn2.weight', 'visual.layer3.15.bn2.bias', 'visual.layer3.15.bn2.running_mean', 'visual.layer3.15.bn2.running_var', 'visual.layer3.15.bn2.num_batches_tracked', 'visual.layer3.15.conv3.weight', 'visual.layer3.15.bn3.weight', 'visual.layer3.15.bn3.bias', 'visual.layer3.15.bn3.running_mean', 'visual.layer3.15.bn3.running_var', 'visual.layer3.15.bn3.num_batches_tracked', 'visual.layer3.16.conv1.weight', 'visual.layer3.16.bn1.weight', 'visual.layer3.16.bn1.bias', 'visual.layer3.16.bn1.running_mean', 'visual.layer3.16.bn1.running_var', 'visual.layer3.16.bn1.num_batches_tracked', 'visual.layer3.16.conv2.weight', 'visual.layer3.16.bn2.weight', 'visual.layer3.16.bn2.bias', 'visual.layer3.16.bn2.running_mean', 'visual.layer3.16.bn2.running_var', 'visual.layer3.16.bn2.num_batches_tracked', 'visual.layer3.16.conv3.weight', 'visual.layer3.16.bn3.weight', 'visual.layer3.16.bn3.bias', 'visual.layer3.16.bn3.running_mean', 'visual.layer3.16.bn3.running_var', 'visual.layer3.16.bn3.num_batches_tracked', 'visual.layer3.17.conv1.weight', 'visual.layer3.17.bn1.weight', 'visual.layer3.17.bn1.bias', 'visual.layer3.17.bn1.running_mean', 'visual.layer3.17.bn1.running_var', 'visual.layer3.17.bn1.num_batches_tracked', 'visual.layer3.17.conv2.weight', 'visual.layer3.17.bn2.weight', 'visual.layer3.17.bn2.bias', 'visual.layer3.17.bn2.running_mean', 'visual.layer3.17.bn2.running_var', 'visual.layer3.17.bn2.num_batches_tracked', 'visual.layer3.17.conv3.weight', 'visual.layer3.17.bn3.weight', 'visual.layer3.17.bn3.bias', 'visual.layer3.17.bn3.running_mean', 'visual.layer3.17.bn3.running_var', 'visual.layer3.17.bn3.num_batches_tracked', 'visual.layer4.0.conv1.weight', 'visual.layer4.0.bn1.weight', 'visual.layer4.0.bn1.bias', 'visual.layer4.0.bn1.running_mean', 'visual.layer4.0.bn1.running_var', 'visual.layer4.0.bn1.num_batches_tracked', 'visual.layer4.0.conv2.weight', 'visual.layer4.0.bn2.weight', 'visual.layer4.0.bn2.bias', 'visual.layer4.0.bn2.running_mean', 'visual.layer4.0.bn2.running_var', 'visual.layer4.0.bn2.num_batches_tracked', 'visual.layer4.0.conv3.weight', 'visual.layer4.0.bn3.weight', 'visual.layer4.0.bn3.bias', 'visual.layer4.0.bn3.running_mean', 'visual.layer4.0.bn3.running_var', 'visual.layer4.0.bn3.num_batches_tracked', 'visual.layer4.0.downsample.0.weight', 'visual.layer4.0.downsample.1.weight', 'visual.layer4.0.downsample.1.bias', 'visual.layer4.0.downsample.1.running_mean', 'visual.layer4.0.downsample.1.running_var', 'visual.layer4.0.downsample.1.num_batches_tracked', 'visual.layer4.1.conv1.weight', 'visual.layer4.1.bn1.weight', 'visual.layer4.1.bn1.bias', 'visual.layer4.1.bn1.running_mean', 'visual.layer4.1.bn1.running_var', 'visual.layer4.1.bn1.num_batches_tracked', 'visual.layer4.1.conv2.weight', 'visual.layer4.1.bn2.weight', 'visual.layer4.1.bn2.bias', 'visual.layer4.1.bn2.running_mean', 'visual.layer4.1.bn2.running_var', 'visual.layer4.1.bn2.num_batches_tracked', 'visual.layer4.1.conv3.weight', 'visual.layer4.1.bn3.weight', 'visual.layer4.1.bn3.bias', 'visual.layer4.1.bn3.running_mean', 'visual.layer4.1.bn3.running_var', 'visual.layer4.1.bn3.num_batches_tracked', 'visual.layer4.2.conv1.weight', 'visual.layer4.2.bn1.weight', 'visual.layer4.2.bn1.bias', 'visual.layer4.2.bn1.running_mean', 'visual.layer4.2.bn1.running_var', 'visual.layer4.2.bn1.num_batches_tracked', 'visual.layer4.2.conv2.weight', 'visual.layer4.2.bn2.weight', 'visual.layer4.2.bn2.bias', 'visual.layer4.2.bn2.running_mean', 'visual.layer4.2.bn2.running_var', 'visual.layer4.2.bn2.num_batches_tracked', 'visual.layer4.2.conv3.weight', 'visual.layer4.2.bn3.weight', 'visual.layer4.2.bn3.bias', 'visual.layer4.2.bn3.running_mean', 'visual.layer4.2.bn3.running_var', 'visual.layer4.2.bn3.num_batches_tracked', 'visual.layer4.3.conv1.weight', 'visual.layer4.3.bn1.weight', 'visual.layer4.3.bn1.bias', 'visual.layer4.3.bn1.running_mean', 'visual.layer4.3.bn1.running_var', 'visual.layer4.3.bn1.num_batches_tracked', 'visual.layer4.3.conv2.weight', 'visual.layer4.3.bn2.weight', 'visual.layer4.3.bn2.bias', 'visual.layer4.3.bn2.running_mean', 'visual.layer4.3.bn2.running_var', 'visual.layer4.3.bn2.num_batches_tracked', 'visual.layer4.3.conv3.weight', 'visual.layer4.3.bn3.weight', 'visual.layer4.3.bn3.bias', 'visual.layer4.3.bn3.running_mean', 'visual.layer4.3.bn3.running_var', 'visual.layer4.3.bn3.num_batches_tracked', 'visual.layer4.4.conv1.weight', 'visual.layer4.4.bn1.weight', 'visual.layer4.4.bn1.bias', 'visual.layer4.4.bn1.running_mean', 'visual.layer4.4.bn1.running_var', 'visual.layer4.4.bn1.num_batches_tracked', 'visual.layer4.4.conv2.weight', 'visual.layer4.4.bn2.weight', 'visual.layer4.4.bn2.bias', 'visual.layer4.4.bn2.running_mean', 'visual.layer4.4.bn2.running_var', 'visual.layer4.4.bn2.num_batches_tracked', 'visual.layer4.4.conv3.weight', 'visual.layer4.4.bn3.weight', 'visual.layer4.4.bn3.bias', 'visual.layer4.4.bn3.running_mean', 'visual.layer4.4.bn3.running_var', 'visual.layer4.4.bn3.num_batches_tracked', 'visual.layer4.5.conv1.weight', 'visual.layer4.5.bn1.weight', 'visual.layer4.5.bn1.bias', 'visual.layer4.5.bn1.running_mean', 'visual.layer4.5.bn1.running_var', 'visual.layer4.5.bn1.num_batches_tracked', 'visual.layer4.5.conv2.weight', 'visual.layer4.5.bn2.weight', 'visual.layer4.5.bn2.bias', 'visual.layer4.5.bn2.running_mean', 'visual.layer4.5.bn2.running_var', 'visual.layer4.5.bn2.num_batches_tracked', 'visual.layer4.5.conv3.weight', 'visual.layer4.5.bn3.weight', 'visual.layer4.5.bn3.bias', 'visual.layer4.5.bn3.running_mean', 'visual.layer4.5.bn3.running_var', 'visual.layer4.5.bn3.num_batches_tracked', 'visual.layer4.6.conv1.weight', 'visual.layer4.6.bn1.weight', 'visual.layer4.6.bn1.bias', 'visual.layer4.6.bn1.running_mean', 'visual.layer4.6.bn1.running_var', 'visual.layer4.6.bn1.num_batches_tracked', 'visual.layer4.6.conv2.weight', 'visual.layer4.6.bn2.weight', 'visual.layer4.6.bn2.bias', 'visual.layer4.6.bn2.running_mean', 'visual.layer4.6.bn2.running_var', 'visual.layer4.6.bn2.num_batches_tracked', 'visual.layer4.6.conv3.weight', 'visual.layer4.6.bn3.weight', 'visual.layer4.6.bn3.bias', 'visual.layer4.6.bn3.running_mean', 'visual.layer4.6.bn3.running_var', 'visual.layer4.6.bn3.num_batches_tracked', 'visual.layer4.7.conv1.weight', 'visual.layer4.7.bn1.weight', 'visual.layer4.7.bn1.bias', 'visual.layer4.7.bn1.running_mean', 'visual.layer4.7.bn1.running_var', 'visual.layer4.7.bn1.num_batches_tracked', 'visual.layer4.7.conv2.weight', 'visual.layer4.7.bn2.weight', 'visual.layer4.7.bn2.bias', 'visual.layer4.7.bn2.running_mean', 'visual.layer4.7.bn2.running_var', 'visual.layer4.7.bn2.num_batches_tracked', 'visual.layer4.7.conv3.weight', 'visual.layer4.7.bn3.weight', 'visual.layer4.7.bn3.bias', 'visual.layer4.7.bn3.running_mean', 'visual.layer4.7.bn3.running_var', 'visual.layer4.7.bn3.num_batches_tracked', 'visual.attnpool.positional_embedding', 'visual.attnpool.k_proj.weight', 'visual.attnpool.k_proj.bias', 'visual.attnpool.q_proj.weight', 'visual.attnpool.q_proj.bias', 'visual.attnpool.v_proj.weight', 'visual.attnpool.v_proj.bias', 'visual.attnpool.c_proj.weight', 'visual.attnpool.c_proj.bias', 'transformer.resblocks.0.attn.in_proj_weight', 'transformer.resblocks.0.attn.in_proj_bias', 'transformer.resblocks.0.attn.out_proj.weight', 'transformer.resblocks.0.attn.out_proj.bias', 'transformer.resblocks.0.ln_1.weight', 'transformer.resblocks.0.ln_1.bias', 'transformer.resblocks.0.mlp.c_fc.weight', 'transformer.resblocks.0.mlp.c_fc.bias', 'transformer.resblocks.0.mlp.c_proj.weight', 'transformer.resblocks.0.mlp.c_proj.bias', 'transformer.resblocks.0.ln_2.weight', 'transformer.resblocks.0.ln_2.bias', 'transformer.resblocks.1.attn.in_proj_weight', 'transformer.resblocks.1.attn.in_proj_bias', 'transformer.resblocks.1.attn.out_proj.weight', 'transformer.resblocks.1.attn.out_proj.bias', 'transformer.resblocks.1.ln_1.weight', 'transformer.resblocks.1.ln_1.bias', 'transformer.resblocks.1.mlp.c_fc.weight', 'transformer.resblocks.1.mlp.c_fc.bias', 'transformer.resblocks.1.mlp.c_proj.weight', 'transformer.resblocks.1.mlp.c_proj.bias', 'transformer.resblocks.1.ln_2.weight', 'transformer.resblocks.1.ln_2.bias', 'transformer.resblocks.2.attn.in_proj_weight', 'transformer.resblocks.2.attn.in_proj_bias', 'transformer.resblocks.2.attn.out_proj.weight', 'transformer.resblocks.2.attn.out_proj.bias', 'transformer.resblocks.2.ln_1.weight', 'transformer.resblocks.2.ln_1.bias', 'transformer.resblocks.2.mlp.c_fc.weight', 'transformer.resblocks.2.mlp.c_fc.bias', 'transformer.resblocks.2.mlp.c_proj.weight', 'transformer.resblocks.2.mlp.c_proj.bias', 'transformer.resblocks.2.ln_2.weight', 'transformer.resblocks.2.ln_2.bias', 'transformer.resblocks.3.attn.in_proj_weight', 'transformer.resblocks.3.attn.in_proj_bias', 'transformer.resblocks.3.attn.out_proj.weight', 'transformer.resblocks.3.attn.out_proj.bias', 'transformer.resblocks.3.ln_1.weight', 'transformer.resblocks.3.ln_1.bias', 'transformer.resblocks.3.mlp.c_fc.weight', 'transformer.resblocks.3.mlp.c_fc.bias', 'transformer.resblocks.3.mlp.c_proj.weight', 'transformer.resblocks.3.mlp.c_proj.bias', 'transformer.resblocks.3.ln_2.weight', 'transformer.resblocks.3.ln_2.bias', 'transformer.resblocks.4.attn.in_proj_weight', 'transformer.resblocks.4.attn.in_proj_bias', 'transformer.resblocks.4.attn.out_proj.weight', 'transformer.resblocks.4.attn.out_proj.bias', 'transformer.resblocks.4.ln_1.weight', 'transformer.resblocks.4.ln_1.bias', 'transformer.resblocks.4.mlp.c_fc.weight', 'transformer.resblocks.4.mlp.c_fc.bias', 'transformer.resblocks.4.mlp.c_proj.weight', 'transformer.resblocks.4.mlp.c_proj.bias', 'transformer.resblocks.4.ln_2.weight', 'transformer.resblocks.4.ln_2.bias', 'transformer.resblocks.5.attn.in_proj_weight', 'transformer.resblocks.5.attn.in_proj_bias', 'transformer.resblocks.5.attn.out_proj.weight', 'transformer.resblocks.5.attn.out_proj.bias', 'transformer.resblocks.5.ln_1.weight', 'transformer.resblocks.5.ln_1.bias', 'transformer.resblocks.5.mlp.c_fc.weight', 'transformer.resblocks.5.mlp.c_fc.bias', 'transformer.resblocks.5.mlp.c_proj.weight', 'transformer.resblocks.5.mlp.c_proj.bias', 'transformer.resblocks.5.ln_2.weight', 'transformer.resblocks.5.ln_2.bias', 'transformer.resblocks.6.attn.in_proj_weight', 'transformer.resblocks.6.attn.in_proj_bias', 'transformer.resblocks.6.attn.out_proj.weight', 'transformer.resblocks.6.attn.out_proj.bias', 'transformer.resblocks.6.ln_1.weight', 'transformer.resblocks.6.ln_1.bias', 'transformer.resblocks.6.mlp.c_fc.weight', 'transformer.resblocks.6.mlp.c_fc.bias', 'transformer.resblocks.6.mlp.c_proj.weight', 'transformer.resblocks.6.mlp.c_proj.bias', 'transformer.resblocks.6.ln_2.weight', 'transformer.resblocks.6.ln_2.bias', 'transformer.resblocks.7.attn.in_proj_weight', 'transformer.resblocks.7.attn.in_proj_bias', 'transformer.resblocks.7.attn.out_proj.weight', 'transformer.resblocks.7.attn.out_proj.bias', 'transformer.resblocks.7.ln_1.weight', 'transformer.resblocks.7.ln_1.bias', 'transformer.resblocks.7.mlp.c_fc.weight', 'transformer.resblocks.7.mlp.c_fc.bias', 'transformer.resblocks.7.mlp.c_proj.weight', 'transformer.resblocks.7.mlp.c_proj.bias', 'transformer.resblocks.7.ln_2.weight', 'transformer.resblocks.7.ln_2.bias', 'transformer.resblocks.8.attn.in_proj_weight', 'transformer.resblocks.8.attn.in_proj_bias', 'transformer.resblocks.8.attn.out_proj.weight', 'transformer.resblocks.8.attn.out_proj.bias', 'transformer.resblocks.8.ln_1.weight', 'transformer.resblocks.8.ln_1.bias', 'transformer.resblocks.8.mlp.c_fc.weight', 'transformer.resblocks.8.mlp.c_fc.bias', 'transformer.resblocks.8.mlp.c_proj.weight', 'transformer.resblocks.8.mlp.c_proj.bias', 'transformer.resblocks.8.ln_2.weight', 'transformer.resblocks.8.ln_2.bias', 'transformer.resblocks.9.attn.in_proj_weight', 'transformer.resblocks.9.attn.in_proj_bias', 'transformer.resblocks.9.attn.out_proj.weight', 'transformer.resblocks.9.attn.out_proj.bias', 'transformer.resblocks.9.ln_1.weight', 'transformer.resblocks.9.ln_1.bias', 'transformer.resblocks.9.mlp.c_fc.weight', 'transformer.resblocks.9.mlp.c_fc.bias', 'transformer.resblocks.9.mlp.c_proj.weight', 'transformer.resblocks.9.mlp.c_proj.bias', 'transformer.resblocks.9.ln_2.weight', 'transformer.resblocks.9.ln_2.bias', 'transformer.resblocks.10.attn.in_proj_weight', 'transformer.resblocks.10.attn.in_proj_bias', 'transformer.resblocks.10.attn.out_proj.weight', 'transformer.resblocks.10.attn.out_proj.bias', 'transformer.resblocks.10.ln_1.weight', 'transformer.resblocks.10.ln_1.bias', 'transformer.resblocks.10.mlp.c_fc.weight', 'transformer.resblocks.10.mlp.c_fc.bias', 'transformer.resblocks.10.mlp.c_proj.weight', 'transformer.resblocks.10.mlp.c_proj.bias', 'transformer.resblocks.10.ln_2.weight', 'transformer.resblocks.10.ln_2.bias', 'transformer.resblocks.11.attn.in_proj_weight', 'transformer.resblocks.11.attn.in_proj_bias', 'transformer.resblocks.11.attn.out_proj.weight', 'transformer.resblocks.11.attn.out_proj.bias', 'transformer.resblocks.11.ln_1.weight', 'transformer.resblocks.11.ln_1.bias', 'transformer.resblocks.11.mlp.c_fc.weight', 'transformer.resblocks.11.mlp.c_fc.bias', 'transformer.resblocks.11.mlp.c_proj.weight', 'transformer.resblocks.11.mlp.c_proj.bias', 'transformer.resblocks.11.ln_2.weight', 'transformer.resblocks.11.ln_2.bias', 'token_embedding.weight', 'ln_final.weight', 'ln_final.bias'])
dict_keys(['state', 'param_groups'])
dict_keys(['step_size', 'gamma', 'base_lrs', 'last_epoch', '_step_count', 'verbose', '_get_lr_called_within_step', '_last_lr'])

发现和原模型键对应的数据在checkpoint[“network”]中,代码修改为:

model.load_state_dict(ckpt["network"])

又报错,发现ckpt[“network”]中的部分键名开头多了’moudle.',需要去掉
修改代码:

new_ckpt = {k.replace('module.', ''): v for k, v in ckpt['network'].items()}
model.load_state_dict(new_ckpt)

注意此时原来ckpt[‘network’]的类型为OrderedDict,new_ckpt的类型变为了Dict,可能会出现错误提示,修改一下数据类型即可。

完整代码如下:

device = "cuda" if torch.cuda.is_available() else "cpu"
basedir = os.path.abspath(os.path.dirname(__file__))  # 定义一个根目录
model, preprocess = clip.load(os.path.join(basedir, "model/RN50x16.pt"))  # 预训练模型
#params = model.state_dict()  # 获得模型的原始状态以及参数。
#for k, v in params.items():
#    print(k)  # 只打印key值,不打印具体参数。
modelpath = os.path.join(basedir, 'RN50-0829_ckt.pth')  #自己的模型地址
ckpt = torch.load(modelpath)
# 方法1,new_ckpt类型为有序字典OrderedDict()
new_ckpt = OrderedDict()
for k, v in ckpt['network'].items():
    if k.startswith('module'):
        name = k[7:]  # remove `module.`
        new_ckpt[name] = v
    else:
        new_ckpt[k] = v
# 方法2,ckpt2类型为字典Dict()
ckpt2 = {k.replace('module.', ''): v for k, v in ckpt['network'].items()}
model.load_state_dict(ckpt2)  # or model.load_state_dict(new_ckpt)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值