2016-09-21 2 views
0

Я хочу просмотреть статистику своей модели, сохранив мой график в файл, затем запустив graph_metrics.py.Использование graph_metrics.py с сохраненным графом

Я пытался несколько различных вещей, чтобы написать файл, мое лучшее усилие:

tf.train.write_graph(session.graph_def, ".", "my_graph", as_text=True) 

Но вот что происходит:

$ python ./util/graph_metrics.py --noinput_binary --graph my_graph 
Traceback (most recent call last): 
    File "./util/graph_metrics.py", line 137, in <module> 
    tf.app.run() 
    File ".virtualenv/local/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 30, in run 
    sys.exit(main(sys.argv)) 
    File "./util/graph_metrics.py", line 85, in main 
    FLAGS.batch_size) 
    File "./util/graph_metrics.py", line 109, in calculate_graph_metrics 
    input_tensor = sess.graph.get_tensor_by_name(input_layer) 
    File ".virtualenv/local/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2531, in get_tensor_by_name 
    return self.as_graph_element(name, allow_tensor=True, allow_operation=False) 
    File ".virtualenv/local/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2385, in as_graph_element 
    return self._as_graph_element_locked(obj, allow_tensor, allow_operation) 
    File ".virtualenv/local/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2427, in _as_graph_element_locked 
    "graph." % (repr(name), repr(op_name))) 
KeyError: "The name 'Mul:0' refers to a Tensor which does not exist. The operation, 'Mul', does not exist in the graph." 

Есть полный рабочий пример сохранения графика , а затем проанализировать его с помощью graph_metrics.py?

Этот процесс, кажется, включает магическое заклинание, которое я еще не обнаружил.

+0

Связанный вопрос, где я получил свой базовый подход к сохранению: http://stackoverflow.com/q/36682832/86967 – nobar

ответ

1

вы удара об ошибке, потому что вы должны указать имя своего узла ввода с --input_layer= (это как раз по умолчанию в Mul: 0, потому что это то, что мы используем в одном из наших моделей Inception):

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/graph_metrics.py#L51

Скрипт graph_metrics по-прежнему очень продвинут к сожалению, и вы можете столкнуться с проблемами с выводом формы, но, надеюсь, это должно помочь вам преодолеть начальное препятствие.

+0

Спасибо. Это был хороший намек, и я двинулся вперед. Тем не менее, нет - слишком много движущихся частей для меня, чтобы угадать все остальное. На данный момент у меня есть 'calculate_graph_metrics()', работающий, когда я использую его как вызов функции из моего приложения - он просто не работает, если я пытаюсь использовать файл графика. – nobar