深度学习与计算机视觉:从基础到实践
1. 深度学习工作流中的检查点与工具
在深度学习开发中,检查点(checkpoint)是一项重要的功能,它允许我们在训练过程中保存模型和优化器的状态,以便在需要时恢复训练。返回的处理程序具有普通事件处理程序的所有功能,并且可以为 Ignite 触发的任何事件设置。以下是一个为 ITERATION_COMPLETED 事件设置检查点处理程序的示例:
dirname = 'path/to/checkpoint/directory'
objects_to_checkpoint = {"model": model, "optimizer": optimizer}
engine_checkpoint = ModelCheckpoint(
dirname=dirname,
to_save=objects_to_checkpoint,
save_interval=100)
trainer.add_event_handler(Events.ITERATION_COMPLETED, engine_checkpoint)
在这个示例中,我们希望每 100 次迭代保存一次检查点。虽然触发器会在每次 ITERATION_COMPLETED 事件调用处理程序,但 Ignite 允许用户在处理程序内部进行自定义检查。以下代码片段展示了如何在检查点处理程序中实现这一功能:
if engine.state.iteration %
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



