Pytorch保存模型用于測試和用于繼續(xù)訓練的區(qū)別詳解
保存模型
保存模型僅僅是為了測試的時候,只需要
torch.save(model.state_dict, path)
path 為保存的路徑
但是有時候模型及數(shù)據(jù)太多,難以一次性訓練完的時候,而且用的還是 Adam優(yōu)化器的時候, 一定要保存好訓練的優(yōu)化器參數(shù)以及epoch
state = { 'model': model.state_dict(), 'optimizer':optimizer.state_dict(), 'epoch': epoch }
torch.save(state, path)
因為這里
def adjust_learning_rate(optimizer, epoch):
lr_t = lr
lr_t = lr_t * (0.3 ** (epoch // 2))
for param_group in optimizer.param_groups:
param_group['lr'] = lr_t
學習率是根據(jù)epoch變化的, 如果不保存epoch的話,基本上每次都從epoch為0開始訓練,這樣學習率就相當于不變了!!
恢復模型
恢復模型只用于測試的時候,
model.load_state_dict(torch.load(path))
path為之前存儲模型時的路徑
但是如果是用于繼續(xù)訓練的話,
checkpoint = torch.load(path) model.load_state_dict(checkpoint['model']) optimizer.load_state_dict(checkpoint['optimizer']) start_epoch = checkpoint['epoch']+1
依次恢復出模型 優(yōu)化器參數(shù)以及epoch
以上這篇Pytorch保存模型用于測試和用于繼續(xù)訓練的區(qū)別詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python中Jupyter notebook快捷鍵總結(jié)
在本篇文章里小編給大家整理的是一篇關(guān)于Python中Jupyter notebook快捷鍵總結(jié)內(nèi)容,有興趣的朋友們可以學習下。2021-04-04
Python 內(nèi)置函數(shù)memoryview(obj)的具體用法
本篇文章主要介紹了Python 內(nèi)置函數(shù)memoryview(obj)的具體用法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11
使用Python 統(tǒng)計文件夾內(nèi)所有pdf頁數(shù)的小工具
這篇文章主要介紹了Python 統(tǒng)計文件夾內(nèi)所有pdf頁數(shù)的小工具,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03

