3

我正在尝试使用 TensorFlow 0.7.1 中的 TensorBoard 可视化 Google 的 Inception v3 模型,但我无法这样做。TensorBoard Graph 选项卡与语句停止

数据:读取graph.pbtxt

数据:读取graph.pbtxt

我下载了一个 un-Tarred the inception v3 model。图 protobuffer 位于/tmp/imagenet/classify_image_graph_def.pb.

这是我转储模型的代码:

import os
import os.path
import tensorflow as tf
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 = '/tmp/imagenet/classify_image_graph_def.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.close()

这会转储一个 91 MB 的文件,称为events.out.tfevents.1456423256.[hostname](与图形 protobuffer 大小相同),因此图形似乎在某处。

我按如下方式运行 TensorBoard:

tensorboard --logdir /tmp/inception_v3_log

这会导致 Graph 页面上出现上述挂起的加载栏。

Chrome JavaScript 控制台产生此错误:

未捕获的类型错误:无法读取未定义的属性“0”

我认为这与图表丢失的事实有关。

我已经在 OS X 10.11.3 上使用 Chrome 48.0.2564.116(64 位)尝试了这个,两者都使用 Bazel 构建的 Python 3 的 TensorFlow 0.7.1 和通过 pip 安装的 Python 2 的 TensorFlow 0.7.1,结果完全相同。

我还验证了我可以可视化使用mnist_with_summaries 示例生成的图形,因此这是 Inception 模型特有的问题。

4

2 回答 2

0

丹尼尔,

我不知道你提到的 protobuffer 的东西,但我想你可能想卸载 protobuf 并重新安装 tensorflow。

在我(在 Ubuntu 上)从 tensorflow v0.6 升级到 v0.7.1 之后,当我无法启动 tensorboard 时,我发现了以下帖子。

我认为protobuf有问题。谈到这里:https ://github.com/tensorflow/tensorflow/issues/1134#issuecomment-185279000

我最终卸载了 protobuf 并重新安装了 tensorboard。现在我可以启动板并查看我的图表。祝你好运!:)

大学教师

于 2016-02-25T19:30:20.777 回答
0

使用此代码:这对我有用:

import tensorflow as tf
from tensorflow.python.platform import gfile
with tf.Session() as sess:
    model_filename ='YouGraphNameWithPath.pb'
    with gfile.FastGFile(model_filename, 'rb') as f:
        graph_def = tf.GraphDef()
        graph_def.ParseFromString(f.read())
        g_in = tf.import_graph_def(graph_def)
LOGDIR='PathWhereSummaryWillBeSaved'
train_writer = tf.summary.FileWriter(LOGDIR)
train_writer.add_graph(sess.graph)
于 2018-08-17T14:42:40.277 回答