You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyTorch Lightning如何为每个验证epoch保存不被删除的检查点?

解决方案

要在PyTorch Lightning 1.2.10中实现每个验证epoch保存检查点且不被自动删除,只需通过ModelCheckpoint的参数配置即可,无需指定跟踪指标:

  • 设置save_top_k=-1:该参数设为-1时,会保留所有生成的检查点,不会根据任何指标进行删除
  • 设置every_n_epochs=1:控制每经过1个epoch就保存一次检查点,对应每个验证epoch都触发保存

代码示例

from pytorch_lightning.callbacks import ModelCheckpoint
import pytorch_lightning as pl

# 初始化检查点回调
checkpoint_callback = ModelCheckpoint(
    every_n_epochs=1,
    save_top_k=-1,
    dirpath="./checkpoints",  # 检查点保存目录
    filename="model-epoch-{epoch:02d}"  # 文件名包含epoch编号,便于区分
)

# 在Trainer中传入该回调
trainer = pl.Trainer(callbacks=[checkpoint_callback])

关键参数说明

  • every_n_epochs=1:确保每个验证epoch完成后都保存一次检查点
  • save_top_k=-1:禁用基于指标的检查点筛选,保留所有生成的检查点
  • filename:自定义文件名格式,加入epoch编号可以清晰区分不同阶段的检查点,避免覆盖

内容的提问来源于stack exchange,提问作者Gulzar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 21:28:08