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

2024-05-23 22:09:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个模型,每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值。默认情况下,当我恢复时,保存程序将寻找最后的检查点。那么,我怎样才能具体地装载型号-50呢。请帮忙,否则,我必须从头开始运行模型增益,这很耗时。在


Tags: 文件of模型程序目录dataindexmodel
3条回答

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

save_path: Path where parameters were previously saved.

所以,您可以在那里找到任何字符串的路径,而最新的检查点只是一个从checkpoint文件中提取该路径的方便函数。在笔记本中打开此文件,您将看到所有可用的模型路径以及最新的路径。在

你可以用任何你想要的路径来代替这个路径。您可以从该文件中获取它(可以手动打开它,也可以使用get_checkpoin_state以编程方式为您完成)。在

因为您使用的是tf.train.Saver的函数restore(),所以可以使用^{}函数来获取所有可用检查点的列表。您将在该列表中看到model-50和{}。在

选择正确的模型,然后像这样直接传递给restore()

saver.restore(sess, ckpt_path)

{u{1}模型中的所有路径都可以,但至少现在你可以使用。在

相关问题 更多 >