做互动电影的网站,外贸商城网站系统,做网站需要投资多少钱,怎么推广小程序话不多说#xff0c;直接进入正题。
#xff01;#xff01;#xff01;不过要注意一点#xff0c;本文保存模型采用的都是只保存模型参数的情况#xff0c;而不是保存整个模型的情况。一定要看清楚再用啊#xff01;
1 单卡训练#xff0c;单卡加载
#保存模型
torc…话不多说直接进入正题。
不过要注意一点本文保存模型采用的都是只保存模型参数的情况而不是保存整个模型的情况。一定要看清楚再用啊
1 单卡训练单卡加载
#保存模型
torch.save(model.state_dict(),model.pt)#加载模型
modelMyModel()#MyModel()是你定义的创建模型的函数就是先初始化得到一个模型实例之后再将模型参数加载到该实例上
model.load_state_dict(torch.load(model.pt))
2 单卡训练多卡加载
保存模型的过程同第一种情况一样但是要注意多卡加载模型时 是先加载模型参数再对模型做并行化处理。
#保存模型
torch.save(model.state_dict(),model.pt)#加载模型
modelMyModel()
model.load_state_dict(torch.load(model.pt))modelnn.DataParallel(model)#将模型进行并行化处理3 多卡保存单卡加载
方法一
考虑到之后可能需要单卡加载你多卡训练的模型所以建议在保存的时候要去除模型参数字典里面的module即使用model.module.state_dict()代替model.state_dict()来进行去除。
因为是单卡加载所以还是要先加载 模型参数再对模型做并行化处理。
#保存模型
torch.save(model.module.state_dict(),modle.pt)#加载模型
modelMyModel()
model.load_state_dict(torch.load(model.pt))modelnn.DataParallel(model)方法二
仍然使用model.state_dict()保存但是单卡加载的时候要把模型做并行化在单卡上并行加载的时候要注意由于我们保存到 方式是以多卡方式保存的所以无论加载之后的模型是 在答案卡上运行还是在多卡上运行都要先把模型并行化处理然后再去加载模型。
#保存模型
torch.save(model.state_dict(),model.pt)#加载模型
modelMyModel()modelnn.DataParallel(model)model.load_state_dict(torch.load(model.pt))
4 多卡保存多卡加载
这里保存模型采用”多卡保存单卡加载“的第二种方法加载的时候要先把模型做并行化在多卡上并行然后再加载。
#保存模型
torch.save(model.state_dict(),model.pt)#加载模型
modelMyModel()modelnn.DataParallel(model)model.load_state_dict(torch.load(model.pt)) 希望以上内容能够帮助到你这里是希望你能越来越好的 小白冲鸭 ~~~