tensorflow中针对迭代产生数据和对列表数据不使用feed_dict进行tensorboard表示

在tensorflow中存在一种情况,如果数据本身是通过迭代产生的,这时无法拿到数据集进行tensorboard显示,这时可以先把计算的结果存到列表中,然后使用列表进行显示操作。

代码如下:

import tensorflow as tf
import numpy as np

x = np.array([2*i*i + 3*i + 4 for i in range(-10, 15, 1)])
print(x)

loss = 0.0
#tf.summary模块的定义位于summary.py文件中,该文件中主要定义了在进行可视化将要用到的各种函数
loss_summary = tf.Summary()
#调用tf.summary.Summary.Value子类
loss_summary.value.add(tag='loss', simple_value=loss)  #tag就是待会产生的图标名称

with tf.Session() as sess:
    #生成一个写日志的writer,将当前tensorflow计算图写入日志。
    summary_writer1 = tf.summary.FileWriter("./train1", sess.graph)
    
    tf.global_variables_initializer().run()
    for i in range(len(x)):
        print(x[i])
        #固定用法,具体为什么我也不懂
        loss_summary.value[0].simple_value = x[i]
        summary_writer1.add_summary(loss_summary, i)

因为以上代码并没有调用数据集,因此不需要使用sess.run,而完全可以看成是简单的函数调用操作。

你可能感兴趣的:(人工智能,调bug,tensorflow学习)