如何仅保留Keras超调优关键文件以复用试验并重建模型
Keras超调优轻量化复用方案
核心结论:仅需2个文件即可实现复用
你不需要保留所有试验目录,只需要保存tuner.json和oracle.json这两个文件,就能在下次运行时跳过已完成的试验,无缝继续超调优流程。
关键文件作用说明
oracle.json:记录所有已完成试验的参数、结果和执行状态,是超调优器判断哪些试验已执行的核心依据。只要该文件存在,下次启动时Oracle会自动跳过所有历史试验,只执行新的搜索任务。tuner.json:保存超调优器的核心配置(包括搜索空间、目标函数、超调算法类型等),确保下次启动时使用与之前完全一致的超调规则。
无需保留的文件
- 单个试验的子目录:这些目录中的检查点、日志仅用于查看单试验过程,对后续继续超调优无必要。若需保留最优模型,可单独导出
model.h5或SavedModel格式文件,但这不是继续超调的必需项。 - 其他临时文件:Keras Tuner生成的零散辅助文件均无需保留,核心依赖就是上述两个JSON文件。
复用操作步骤
- 当前超调完成后,从容器内的超调工作目录中复制出
tuner.json和oracle.json。 - 下次启动新Docker容器时,将这两个文件放入新的超调工作目录(需与之前的目录路径一致,或在初始化Tuner时指定该目录)。
- 初始化Tuner时保持
overwrite=False(默认值),超调优器会自动加载已有Oracle记录,跳过已完成试验,继续新的搜索。
补充说明
如果仅需基于历史最优参数重新训练模型,单独保存最优参数JSON文件即可;但如果要无缝延续超调流程、自动跳过已做试验,必须保留上述两个JSON文件。
内容的提问来源于stack exchange,提问作者KingOtto
相关产品推荐
相关产品推荐

