私はthe interactive demo in tensorflowを見ていました。彼らはトグルすることができるテストとトレーニングの別々のプロットを持っているようです。例えば、それらは、テストや電車のために別々の精度があります。インタラクティブなデモのように、TensorBoardのテストとトレーニングのための個別のカーブを作成するにはどうすればよいですか?
を、もう一方はそれらを切り替えることができます:
を彼らも、別々のパーセンタイル(HIST)もグラフいる:
をTensorFlowコードとはそのような便利な機能を提供しますか?
私はテストと列車の両方のエラーを抱えていましたが、そのようなプロットはありません。これは私が試したものです:
with open(path+errors_pretty, 'w+') as f_err_msgs:
with tf.Session() as sess:
merged = tf.merge_all_summaries()
writer = tf.train.SummaryWriter(tensorboard_data_dump, sess.graph)
sess.run(tf.initialize_all_variables())
for i in xrange(steps):
## Create fake data for y = W.x + b where W = 2, b = 0
#(batch_xs, batch_ys) = get_batch_feed(X_train, Y_train, M, phase_train)
feed_dict_batch = get_batch_feed(X_train, Y_train, M, phase_train)
## Train
if i%report_error_freq == 0:
(summary_str_train,train_error) = sess.run(fetches=[merged, l2_loss], feed_dict=feed_dict_train)
(summary_str_test,test_error) = sess.run(fetches=[merged, l2_loss], feed_dict=feed_dict_test)
writer.add_summary(summary_str_train, i)
loss_msg = "Model *%s%s*, step %d/%d, training error %g, test error %g \n"%(model,nb_hidden_layers,i,steps,train_error,test_error)
mdl_info_msg = "Opt: %s, BN %s, After %d/%d iteration, Init: %s \n" % (optimization_alg,bn,i,steps,init_type)
print_messages(loss_msg, mdl_info_msg)
# store results
results['train_errors'].append(train_error)
results['test_errors'].append(test_error)
# write errors to pretty print
f_err_msgs.write(loss_msg)
f_err_msgs.write(mdl_info_msg)
# save mdl
#save_path = saver.save(sess, path+'/tmp_mdls/model.ckpt',global_step=i)
if mdl_save:
save_path = saver.save(sess, path+mdl_dir+'/model.ckpt',global_step=i)
sess.run(fetches=[merged,train_step], feed_dict=feed_dict_batch)
#sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
今私は2つの 'sess.run()'テスト用との列車のための1つを持っているし、彼らは両方の要約文字列を与えます。対応する文字列を対応するライターに渡すだけですか?私は自分の質問を小さなコードのクリップで更新して、自分が何をしているのかを見分けることができます。多分実用的な例がどのように機能するかを見るためにいくつかのコードを提供していますか?その作家を正しく訴える方法がわかりません。 – Pinocchio
@Pinocchioあなたが与えたコードに基づいて、私はこれを反映する答えを更新しました。私が作ったコードの変更は***でマークされています。 – Kashyap
答えにプロットを提供するコードを入力してください。あなたが提案した変更を加えましたが、今度は 'tensorboard_train_data_dump'と' tensorboard_test_data_dump'という名前のテンソルボード用の2つのフォルダがあります。今私は1つの 'tensorboard --logdir =/tmp/mdl_logs_train'を実行していますが、1つの画面で両方の代わりに1つの実行結果しか見ることができません。あなたはテンソルボードに2つのランがあり、それらをブラウザで組み合わせるべきだとどのように指示しますか? – Pinocchio