我正在使用具有两个占位符的分类器,一个用于我的输入功能,一个用于输出标签。为了将数据放入图表中,我将ndarray放入feed_dict中。如何使用tf.train.Supervisor
评估验证数据模型,而无需手动评估summary_op
?是否只能使用reader而不是feed_dicts?
这是我目前的解决方法,我正在检查已用时间并手动评估summary_op
:
import time
import tensorflow as tf
t = time.time()
summary_op = tf.summary.merge_all()
sv = tf.train.Supervisor(logdir="tensorboard/my-run", summary_op=None)
with sv.managed_session() as sess:
for data in training_data:
# Fit training data.
sess.run(train_op, feed_dict={'input:0': data[0], 'output:0': data[1]})
# Evaluate on validation data.
if time.time() - t > 60.0:
t = time.time()
data = next(validation_data)
summary = sess.run(summary_op, feed_dict={'input:0': data[0], 'output:0': data[1]})
sv.summary_computed(sess, summary)
答案 0 :(得分:2)
编辑:tf.train.Supervisor可能会被弃用,所以没关系。请参阅this评论。
轻微清洁的一件事是使用tf.train.Supervisor.loop
而不是手动检查已用时间。
import tensorflow as tf
summary_op = tf.summary.merge_all()
sv = tf.train.Supervisor(logdir="tensorboard/my-run", summary_op=None)
with sv.managed_session() as sess:
sv.loop(60, lambda: sv.summary_computed(sess, sess.run(summary_op, feed_dict=next(validation_data))))
for data in training_data:
sess.run(train_op, feed_dict=data)
答案 1 :(得分:-1)
您可以使用解决方法。这应该有用。
雪利酒