在特定迭代或检查点将模型加载/恢复到张量流

时间:2017-01-04 03:01:34

标签: python tensorflow restore

我有一个模型,我每10次迭代就会保存一次。所以,我在保存的目录中有以下文件。

checkpoint  model-50.data-00000-of-00001  model-50.index  model-50.meta
model-60.data-00000-of-00001  model-60.index  model-60.meta

等等达到100。我只需加载模型-50。因为我有 70次迭代后的NaN值。通过deafault,当我恢复保护程序时,将寻找最终的检查点。那么,我怎么能专门加载模型-50。请帮助,否则,我必须从头开始运行模型增益,这很费时间。

3 个答案:

答案 0 :(得分:6)

由于您使用的是$result = DB::table('table_name') ->leftJoin('tbl_country_city', 'table_name.quiz_id', '=', 'tbl_country_city.quiz_id') ->whereRaw('FIND_IN_SET('.$b.',field_name)') ->get(); 函数tf.train.Saver,因此您可以使用last_checkpoints函数获取所有可用检查点的列表。您会在此列表中看到restore()model-50

选择正确的模型,并将其直接传递给model-60,如下所示

restore()

答案 1 :(得分:0)

我不确定过去是否有所不同,但至少到目前为止,您可以使用tf.train.get_checkpoint_state()来获取包含all_model_checkpoint_paths的CheckpointState原型。

答案 2 :(得分:0)

当执行大多数教程中显示的关于保存/恢复模型saver.restore(sess, tf.train.latest_checkpoint(_dir_models))的命令时,您传递的第二个参数只是模型路径的字符串。这是在saver.restore文档中定义的。

  

save_path:先前保存参数的路径。

因此,您可以在其中定位任何字符串,并且last_checkpoint只是从checkpoint文件提取此路径的便捷功能。在笔记本中打开此文件,您将看到所有可用的模型路径以及最新的模型。

您可以将该路径替换为所需的任何路径。您可以从该文件中获取文件(手动打开文件或使用get_checkpoin_state它将以编程方式为您完成文件。