Pytorch保存模型用于测试和用于继续训练的区别是什么

  介绍

小编给大家分享一下Pytorch保存模型用于测试和用于继续训练的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

<强>保存模型

保存模型仅仅是为了测试的时候,只需要

torch.save (model.state_dict,路径)

路径为保存的路径

但是有时候模型及数据太多,难以一次性训练完的时候,而且用的还是亚当优化器的时候,一定要保存好训练的优化器参数以及时代

state =,{, & # 39;模型# 39;:,model.state_dict(), & # 39;优化器# 39;:optimizer.state_dict(), & # 39;时代# 39;:,epoch },,   torch.save(状态,,路径)

因为这里

def  adjust_learning_rate(优化器,时代):   lr_t 才能=lr   时间=lr_t 才能;lr_t  *,(0.3, * *,(时间//epoch  2))   for 才能;param_group  optimizer.param_groups:拷贝   ,,,param_group [& # 39; lr # 39;],=, lr_t

学习率是根据时代变化的,如果不保存时代的话,基本上每次都从时代为0开始训练,这样学习率就相当于不变了! !

<>强恢复模型

恢复模型只用于测试的时候,

model.load_state_dict (torch.load(路径))

路径为之前存储模型时的路径

但是如果是用于继续训练的话,

checkpoint =, torch.load(路径)   model.load_state_dict(检查点[& # 39;模型# 39;])   optimizer.load_state_dict(检查点[& # 39;优化器# 39;])   start_epoch =,检查点(& # 39;时代# 39;)+ 1

依次恢复出模型优化器参数以及时代

以上是“Pytorch保存模型用于测试和用于继续训练的区别是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

Pytorch保存模型用于测试和用于继续训练的区别是什么