sess.run({確認したい値})、または{確認したい値}.eval()が利用できるようです
変数が次のように設定されている場合
import tensorflow as tf sess = tf.InteractiveSession() x=tf.constant([11,22,33,44,55]) y=tf.constant([1,2,3,4,5]) z=tf.add(x,y) z_ndarray=sess.run(z) #placeholderを使っている場合はsess.runの実行時に、feed_dictでplaceholderに値を設定します x_p=tf.placeholder("float", [5]) y_p=tf.placeholder("float", [5]) z_p=tf.add(x_p,y_p) z_p_ndarray=sess.run(z_p, feed_dict={x_p:[12.,22.,33.,44.,55.],y_p:[1.,2.,3.,4.,5.]})
値の確認方法
1 sess.run()の返り値を使う(ndarrayなのでインデックスを指定してアクセスすることもできます)
print(z_p_ndarray[2])
2 .eval()を使う(InteractiveSessionを利用している場合に利用できます)
print(z.eval())
3 sess.run()の返り値をTensorBoardに表示する
#(演算からSummaryを作成して、sess.run()で実行。その返り値(縦軸)と横軸の値をwriterで書き出します) # 本家の解説http://www.tensorflow.org/how_tos/summaries_and_tensorboard/index.html i_p=tf.placeholder(tf.types.float32,name="i") i_2=tf.mul(i_p, i_p, name="i2") i_3=tf.pow(i_p, tf.constant(3.), name="i3") s1 = tf.scalar_summary("i2", i_2) #i**2のSummary protocol bufferを作成 s2 = tf.scalar_summary("i3", i_3) #i**3のSummary protocol bufferを作成 merged = tf.merge_all_summaries() #SummaryをマージしてSummary protocol bufferを作成 writer = tf.train.SummaryWriter("log", graph_def=sess.graph_def)#書き出し先をlogフォルダに指定 for i in range(30): m_str=sess.run(merged,feed_dict={i_p:i})#strが返る writer.add_summary(m_str, i)#strを書き出し print("end") #実行後、Pythonを実行したフォルダにlogフォルダができているので、 #コンソールからtensorboard --logdir=/Users/hoge/tensorflow/log とか実行して、 #ブラウザでhttp://localhost:6006/にアクセスすれば見れます
tf.add(x,y,name)以外の演算はGithubにReferenceがあります。https://github.com/tensorflow/tensorflow/blob/795f35da2d458cbae477ac2fe2bff80c1427a771/tensorflow/g3doc/api_docs/python/index.md
やりたいことに適した演算が用意されていない場合は、sess.run()の返り値がndarrayとか数値型になっているので、普通に演算することも出来ます