我们知道,使用int *def_arr(int size)
{
int* arr = new int[size];
return arr;
}
保存检查点时,我们有3个文件,例如:
model.ckpt.data-00000-of-00001
model.ckpt.index
model.ckpt.meta
我检查了更快的tensorflow
n,发现它们有一个Evaluation.py脚本,可以帮助评估经过预先训练的模型,但是该脚本仅接受.ckpt文件(因为它们提供了一些经过预先训练的模型以上)。
我已经从他们的预训练模型中进行了一些微调
然后我想知道是否有一种方法可以将所有rcn
、. index和.meta转换为一个单独的.ckpt文件,以便在检查点上运行valuate.py脚本?
(我还注意到,他们在仓库中提供的经过预先训练的模型确实只有1个.data-00000-of-00001
文件,当save-checkpoint函数生成3个文件时,它们怎么做?)
答案 0 :(得分:0)
这些
{ model.ckpt.data-00000-of-00001
model.ckpt.index
model.ckpt.meta }
是更新的检查点格式
同时
{model.ckpt}
是以前的检查点格式
与将Nintendo Switch转换为NES或将3张CD捆绑到单个ROM盒中的概念相同。
答案 1 :(得分:0)
不需要转换,可以使用
保存网络中的变量saver = tf.train.Saver()
saver.save(sess, 'path of save/fileName.ckpt')
要恢复网络以供稍后或在另一个脚本中重用,请使用:
saver = tf.train.Saver()
saver.restore(sess, tf.train.latest_checkpoint('path of save/')
sess.run(....)
要点:
第一次和以后运行的 sess 必须相同(连贯的结构)。
saver.restore 需要保存文件的文件夹路径,而不是 单个文件路径。