预训练权重和预训练模型的区别(预训练权重不匹配怎么办)

预训练权重和预训练模型的区别(预训练权重不匹配怎么办)在 pytorch 微调 mobilenetV3 模型时遇到的问题 1 KeyError features 4 block 2 fc1 weight 这个是因为模型结构修改了 没有正确修改预训练权重 导致载入权重与模型不同 使用下面说的两种方法适当修改载入权重即可 2 size mismatch for fc weight copying a param with shape torch

大家好,我是讯享网,很高兴认识大家。



在pytorch微调mobilenetV3模型时遇到的问题
1.KeyError: ‘features.4.block.2.fc1.weight’
这个是因为模型结构修改了,没有正确修改预训练权重,导致载入权重与模型不同,使用下面说的两种方法适当修改载入权重即可。
2.size mismatch for fc.weight: copying a param with shape torch.Size([1000, 1280]) from checkpoint, the shape in current model is torch.Size([4, 1280]).
size mismatch for fc.bias: copying a param with shape torch.Size([1000]) from checkpoint, the shape in current model is torch.Size([4]).
下载的预训练模型中的全连接层是1000类别的,而本人的类别只有4类,所以会报不匹配的错误。













因此我就学习了PyTorch载入预训练权重方法
方法一 :自称为万能法,直接删掉分类层,直接避免最后全连接层权重不匹配问题。


讯享网

 
  
讯享网


小讯
上一篇 2025-05-11 21:13
下一篇 2025-05-26 14:39

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/207949.html