Pythonのデバッガーpdbでは、Tensorflowのsessionの中身をみることができない。。。
Tensorflowのデバッグは、Tensorflow独自のデバッガーを使う必要がある。
https://www.tensorflow.org/programmers_guide/debugger
以下のように、「from tensorflow.python import debug as tf_debug」で、debugモジュールをインポートし、
「sess = tf_debug.LocalCLIDebugWrapperSession(sess)」で、セッションに組み込む。
import tensorflow as tf import numpy as np from tensorflow.python import debug as tf_debug x = tf.placeholder(tf.float32, shape=[10, 10]) y = tf.matmul(x, x) sess = tf.Session() sess = tf_debug.LocalCLIDebugWrapperSession(sess) rand_array = np.random.rand(10, 10) y = sess.run(y, feed_dict={x: rand_array})
そして、以下のように「--debug」オプションをつけて、pythonスクリプトを実行する。
python placeholder.py --debug ||<< 以下のように、デバッガーが起動する。 [f:id:hirotaka_hachiya:20170824122644p:plain] 画面の上にある「invoke stepper」をクリックすると、各ステップごとの処理を確認することができる。 [f:id:hirotaka_hachiya:20170824122911p:plain]