1樓:vmn171
不知道說的儲存是什麼引數
一些是可以提前定義,需要經常調整或自動搜尋的超引數:比如實驗名,batch size,epoch,lr……建議寫入argparse中,隨便寫入乙個字典也行,需要記錄的時候直接列印argparse就可以。
一些如網路、優化器什麼的,生成例項以後,直接print(model)或str(model)就可以列印或記錄。
開始訓練後生成的loss,metric這些,就自己設定個週期記錄就可以。
前面這些是文字的引數,可以全部統一在tensorboard中記錄,優點是好看,缺點是多了比較卡。自己用個csv,txt儲存也是可以的,都是文字。
儲存模型和優化器、apex等權重引數,用stat_dict()得到,打包到乙個字典中,儲存為檔案即可。如果想中斷後繼續訓練,儲存時候記錄一下全域性的step或epoch數。
2樓:Victor
如果是指儲存訓練過程中的loss,accuracy等metric的話,可以採用下面的方法:
import
logging
defget_logger
(filename
,verbosity=1
,name
=None
):level_dict
=formatter
=logging
.Formatter("[
%(asctime)s
][%(filename)s
][line:
%(lineno)d
][%(levelname)s
] %(message)s")
logger
=logging
.getLogger
(name
)logger
.setLevel
(level_dict
[verbosity
])fh
=logging
.FileHandler
(filename
,"w")fh
.setFormatter
(formatter
)logger
.addHandler(fh
)sh=logging
.StreamHandler
()sh
.setFormatter
(formatter
)logger
.addHandler(sh
)return
logger
可以在輸出到終端的同時輸出到filename檔案中。
使用時在訓練指令碼train.py中寫入:
logger
=get_logger
('/path/to/exp/exp.log'
)logger
.info
('start training!'
)for
epoch
inrange
(MAX_EPOCH
):...
loss
=...
acc=
...logger
.info
('Epoch:[{}/{}]
\tloss=
\tacc='
.format
(epoch
,MAX_EPOCH
,loss
,acc
))...
logger
.info
('finish training!'
)這樣在終端和'/path/to/exp/exp.log檔案中都會輸出相應的日誌,格式如下:
[2019-12
-1913:
56:52,
338]
[train.py]
[line:3
][INFO]
start
training![
2019-12
-1913:
57:52,
338]
[train.py]
[line:8
][INFO]
Epoch:[
1/10]
loss
=...
acc=...
[2019-12
-1913:
58:52,
338]
[train.py]
[line:8
][INFO]
Epoch:[
2/10]
loss
=...
acc=...
...2019-12
-1913:
59:52,
338]
[train.py]
[line:11
][INFO]
finish
training!
pytorch如何使用多塊gpu
東方碩 自己寫的多卡訓練框架,可多機多卡,供參考 artintel2017 torch multi gpu原答案 最近剛花幾天時間搞了下torch.distributed,寫了個demo測試一下,發現確實如官方文件所說,比DataParallel快,而且是快很多。4卡用DataParallel,2....
Pytorch為什麼使用分組卷積時訓練速度變慢了?
Angzz 可以參考ShuffleNet V2 Practical Guidelines for Efficient CNN Architecture Design 裡面對現在depth wise,group conv等op的bottleneck從訪存角度做了很詳細的分析。 準確的說,是group ...
新手如何入門pytorch?
君玉工作室 入門pytorch分六個步驟 1.配置好開發環境。這邊直接參考官網的教程就可。2.理解張量的概念,以及相應的運算,在pytorch中實現。3.用pytorch搭建感知機 神經網路 卷積神經網路以及LSTM等常見的簡單的網路,進行前向傳播推理,能夠執行即可,其中理解全連線,池化,卷積模組,...