首页 > 解决方案 > 使用估计器从经过训练的模型加载检查点

问题描述

我想做非常简单的任务。让我们假设我已经执行了一个模型并使用 tf.estimator 为这个模型保存了多个检查点和元数据。我们可以再次假设我有 3 个检查点。1、2 和 3。当我在张量板上评估训练结果时,我意识到检查点 2 为我的目标提供了更好的权重。

因此,我想加载检查点 2 并做出预测。我想简单地问的是,是否可以从模型目录中删除检查点 3 并让估计器从检查点 2 自动加载它,或者我可以做些什么来为.my 的预测加载特定的检查点?

谢谢你。

标签: tensorflowmachine-learningdeep-learningtensorflow-estimator

解决方案


是的你可以。默认情况下,Estimator 会在model_dir. 所以你可以手动删除文件,或者指定检查点文件

warm_start = tf.estimator.WarmStartSettings(ckpt_to_initialize_from='file.ckpt')

并将其传递给估算器

tf.estimator.Estimator(model_fn=model_fn,
                       config=run_config,
                       model_dir='dir',
                       warm_start_from=warm_start)

后一个选项不会弄乱张量板摘要,因此通常更干净


推荐阅读