我有inception_resnet_v2_2016_08_30.ckpt
文件,它是一个预先训练的初始模型。我想使用恢复此模型
saver.restore(sess, ckpt_filename)
但为此,我需要编写训练该模型时使用的变量集。我在哪里可以找到这些内容(脚本或详细说明)?
最佳答案
首先,你已经了解了内存中的网络架构。网络架构可以从here获取
一旦您拥有此程序,请使用以下方法来使用该模型:
from inception_resnet_v2 import inception_resnet_v2, inception_resnet_v2_arg_scope
height = 299
width = 299
channels = 3
X = tf.placeholder(tf.float32, shape=[None, height, width, channels])
with slim.arg_scope(inception_resnet_v2_arg_scope()):
logits, end_points = inception_resnet_v2(X, num_classes=1001,is_training=False)
这样你就可以将所有网络存储在内存中,现在你可以使用 tf.train.saver 使用检查点文件(ckpt)初始化网络:
saver = tf.train.Saver()
sess = tf.Session()
saver.restore(sess, "/home/pramod/Downloads/inception_resnet_v2_2016_08_30.ckpt")
如果你想进行瓶子提取,很简单,比如你想从最后一层获取特征,那么你只需声明 predictions = end_points["Logits"]
如果你想为其他中间层获取它,你可以从上面的程序 inception_resnet_v2.py 中获取这些名称
之后您可以调用:output = sess.run(predictions, feed_dict={X:batch_images})
关于python - 如何恢复tensorflow inceptions检查点文件(ckpt)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39983591/