Posted in Python onAugust 20, 2019
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 预训练层的使用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。
pytorch 预训练层的使用方法
- Author -
zzw小凡声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@