时间:2021-05-22
pytorch 预训练层的使用方法
将其他地方训练好的网络,用到新的网络里面
加载预训练网络
1.原先已经训练好一个网络 AutoEncoder_FC()
2.首先加载该网络,读取其存储的参数
3.设置一个参数集
cnnpre = AutoEncoder_FC()cnnpre.load_state_dict(torch.load('autoencoder_FC.pkl')['state_dict'])cnnpre_dict =cnnpre.state_dict()加载新网络
1.设置新的网络
2.设置新网络参数集
cnn= AutoEncoder()cnn_dict = cnn.state_dict()更新新网络参数
1.将两个参数集比对,存在的网络参数保留
2.使用保留下的参数更新新网络参数集
3.加载新网络参数集到新网络中
cnnpre_dict = {k: v for k, v in cnnpre_dict.items() if k in cnn_dict}cnn_dict.update(cnnpre_dict)cnn.load_state_dict(cnn_dict)以上这篇pytorch 预训练层的使用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
最近使用pytorch时,需要用到一个预训练好的人脸识别模型提取人脸ID特征,想到很多人都在用用vgg-face,但是vgg-face没有pytorch的模型,
接触pytorch一天,发现pytorch上手的确比TensorFlow更快。可以更方便地实现用预训练的网络提特征。以下是提取一张jpg图像的特征的程序:#-*
之前在用预训练的ResNet的模型进行迁移训练时,是固定除最后一层的前面层权重,然后把全连接层输出改为自己需要的数目,进行最后一层的训练,那么现在假如想要只是把
如何在pytorch中使用word2vec训练好的词向量torch.nn.Embedding()这个方法是在pytorch中将词向量和词对应起来的一个方法.一般
使用预训练模型的代码如下:#加载预训练模型resNet50=models.resnet50(pretrained=True)ResNet50=ResNet(Bo