“Checkpoint(检查点)”这个概念在不同领域含义差别很大,下面按常见场景分别说明怎么做,你可以对号入座:
目的:保存模型训练过程中的状态,方便中断后恢复或选最优模型。
# 保存
torch.save({
'epoch': epoch,
'model_state_dict': model.state_dict(),
'optimizer_state_dict': optimizer.state_dict(),
'loss': loss,
}, 'checkpoint.pth')
# 恢复
checkpoint = torch.load('checkpoint.pth')
model.load_state_dict(checkpoint['model_state_dict'])
optimizer.load_state_dict(checkpoint['optimizer_state_dict'])
建议:
目的:保证数据一致性和可恢复性。
CHECKPOINT;
checkpoint_timeout = 5min
max_wal_size = 1GB
目的:故障后从最近状态恢复,避免重算。
env.enableCheckpointing(5000); // 每5秒一次
env.getCheckpointConfig().setCheckpointingMode(CheckpointingMode.EXACTLY_ONCE);
目的:阶段性确认进度和质量。
做法:
如果你说的是某一个具体技术或场景(比如 TensorFlow、K8s、写小说大纲),告诉我,我可以给你更针对性的步骤。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。