可视化TensorFlow中的批量优化过程

时间:2017-10-26 10:17:49

标签: python optimization tensorflow tensorboard

我想使用TensorBoard来显示优化过程(即,在最小化步骤中损失如何减少)。为此,我使用摘要。在图表中,我有以下内容:

global_step = tf.Variable(0, dtype=tf.int64, trainable=False, name="global_step")
tf_loss = ...
tf_minimize = optimizer.minimize(tf_loss, var_list=[...], global_step=global_step)
summaries = {"mysummary": tf.summary.merge([tf.summary.scalar("loss", tf.reduce_mean(tf_loss))])}

记录摘要的优化过程如下所示:

timestamp = datetime.now().strftime("%Y-%m-%d_%H%M%S")
summary_writer = tf.summary.FileWriter(("{}/{}").format('logs', timestamp), flush_secs=10)

for batch in data:
    with tf.Session() as sess:
        _, sm = sess.run([tf_minimize, summaries["mysummary"]])
        summary_writer.add_summary(sm, sess.run(global_step))

问题是到目前为止TensorBoard在每个最小化步骤的图表中显示了几个点。但是,我想想象一下批次平均的学习过程,即对于每个global_step,我希望看到平均损失。

是否有更方便的方法,然后制作最大步数的1D张量并手动存储平均值?

0 个答案:

没有答案