2017-01-26 4 views
5

Я пытался проверить контрольно-пропускные пункты, используя код на inspect_checkpoint.py. Тем не менее, я не смог заставить его работать, потому что они действительно не привели пример. Я попробовал простейшую вещь, я думал, будет работать:Как проверять переменные в файле контрольной точки в TensorFlow, когда TensorFlow не может найти атрибут tools?

tf.python.tools.inspect_checkpoint.print_tensors_in_checkpoint_file(file_name='./tmp/mdl_ckpt',tensor_name='',all_tensors='') 

однако я понимаю, что python не имеет атрибута tools:

AttributeError: module 'tensorflow.python' has no attribute 'tools' 

это кажется (ошеломляюще) тривиальна ошибка/вопрос. Кто-нибудь знает, что происходит? Почему он не может найти инструменты? Кроме того, даже если он его нашел, как запустить функцию, предоставленную в этом файле?


К сожалению, очень близкий вопрос на самом деле не дает ответа на вопрос о том, как обойти эту проблему. Вопрос здесь How can find the variable names that saved in tensorflow checkpoint?

+0

Работает для меня. Какую версию тензорного потока вы используете? Вы установили через пипс или из источника? – DomJack

+0

@DomJack Im использует 'tensorflow (0.12.1)', и я просто использовал pip install. Также версия python 3.5.1. А как насчет вас? И что вы запустили, именно то, что я написал? – Pinocchio

+0

python: 2.7.6, tensorflow: 0.12.1 Код: от tensorflow.python.tools.inspect_checkpoint import print_tensors_in_checkpoint_file; print_tensors_in_checkpoint_file (имя_файла = './Tmp/mdl_ckpt', tensor_name = '', all_tensors = '') – DomJack

ответ

0

Ну, не проверка_checkpoint.py двоичного?

Нечто подобное может работать:

bazel run tensorflow/python/tools:inspect_checkpoint -- --file_name=YOUR_CKPT 

EDIT:

Или без Базэла:

Найти, где установлен tensorflow и запустить команду с python:

python PATH_TO_VENV/lib/python3.6/site-packages/tensorflow/python/tools/inspect_checkpoint.py --file_name=YOUR_CKPT 

Для всех параметров см. Сам файл: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/inspect_checkpoint.py

+0

ah binary? Извините, если я ужасно запутался в этом, но ссылку, которую я предоставил, насколько я могу рассказать ссылки на файл python, или я ошибаюсь? – Pinocchio

+0

также что такое базел? Зачем мне базель? – Pinocchio

+0

Вероятно, установка pip не устанавливает все инструменты. Bazel - это инструмент для сборки с открытым исходным кодом google, поэтому, если вы устанавливаете его из источника, bazel - это то, что вы используете. Не знаете, как сделать то, что вы хотите от установки pip, но я могу подтвердить, что встроенная версия имеет соответствующие инструменты. – DomJack

10

Попробуйте это:

from tensorflow.python.tools.inspect_checkpoint import print_tensors_in_checkpoint_file 
print_tensors_in_checkpoint_file(file_name='./tmp/mdl_ckpt', tensor_name='', all_tensors=False) 

all_tensors аргумент был добавлен, так как Tensorflow 0.12.0-rc0.