我在这里看到很多关于恢复已保存的 TF 模型的帖子,但没有一个能回答我的问题。 使用 TF 1.0.0
具体来说,我有兴趣查看 .pb
文件中公开可用的 inceptionv3
模型的权重 here .我设法使用一小段 Python 代码将其恢复,并且可以访问 tensorboard
中的图形高级 View :
from tensorflow.python.platform import gfile
INCEPTION_LOG_DIR = '/tmp/inception_v3_log'
if not os.path.exists(INCEPTION_LOG_DIR):
os.makedirs(INCEPTION_LOG_DIR)
with tf.Session() as sess:
model_filename = './model/tensorflow_inception_v3_stripped_optimized_quantized.pb'
with gfile.FastGFile(model_filename, 'rb') as f:
graph_def = tf.GraphDef()
graph_def.ParseFromString(f.read())
_= tf.import_graph_def(graph_def,name='')
writer = tf.train.SummaryWriter(INCEPTION_LOG_DIR, graph_def)
writer=tf.summary.FileWriter(INCEPTION_LOG_DIR, graph_def)
writer.close()
但是,我无法访问任何图层的权重。
tensors= tf.import_graph_def(graph_def,name='')
返回空值,即使我添加任意 return_elements=
。它有任何重量吗?如果是,这里的适当程序是什么?谢谢。
最佳答案
使用此代码打印张量的值:
with tf.Session() as sess:
print sess.run('your_tensor_name')
您可以使用此代码检索张量名称:
op = sess.graph.get_operations()
for m in op :
print(m.values())
关于python - 恢复已保存的 Tensorflow .pb 模型的权重,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45362602/