Python 使用步长间隔而不是时间间隔(秒)保存tensorflow slim模型
我正在使用api。在我以前的工作中,我经常检查当前步骤,并每n个步骤保存一次模型,类似于前面提到的方法 在这种情况下,尽管作者使用了。因此,他们使用一个Python 使用步长间隔而不是时间间隔(秒)保存tensorflow slim模型,python,tensorflow,tensorflow-slim,Python,Tensorflow,Tensorflow Slim,我正在使用api。在我以前的工作中,我经常检查当前步骤,并每n个步骤保存一次模型,类似于前面提到的方法 在这种情况下,尽管作者使用了。因此,他们使用一个tf.train.Saver,它被传递给执行训练的实际函数:slim.learning.train()。虽然此函数有一些关于使用参数记录训练模型的时间间隔的参数,但它是时间相关的,而不是步长相关的 因此,由于tf.train.Saver如前所述是一个“被动”实用程序,仅使用提供的参数保存模型,这意味着不知道任何时间或步长概念,而且在目标检测代码中
tf.train.Saver
,它被传递给执行训练的实际函数:slim.learning.train()
。虽然此函数有一些关于使用参数记录训练模型的时间间隔的参数,但它是时间相关的,而不是步长相关的
因此,由于tf.train.Saver
如前所述是一个“被动”实用程序,仅使用提供的参数保存模型,这意味着不知道任何时间或步长概念,而且在目标检测代码中,控制通过TensorFlow Slim传递,通过将Saver作为参数传递,在这种情况下,我如何实现保存模型步进病房(每n步而不是每x秒)
唯一的解决方案是深入研究slim代码并对其进行编辑(所有的风险都来自于此)?还是有其他我不熟悉的选择
p.S.1我发现关于这个选项有一个惊人的相似问题,但不幸的是,它没有任何答案。因此,由于我的问题仍然存在,我将保留这个问题,以引起人们对这个问题的兴趣 p.S.2
查看
slim.learning
code,我发现在train()
中,在传递参数后,它只是将控制权传递给supervisor.supervisor
,它指的是一个有点奇怪的类,因为该类被认为是不推荐的。slim.learning
的文档字符串中也提到了使用supervisor