tensorflow 可视化

summaries 生成

class

  • tf.summary.FileWriter
  • tf.summary.FileWriterCache

summary Ops

  • tf.summary.tensor_summary
  • tf.summary.scalar
  • tf.summary.histogram
  • tf.summary.audio
  • tf.summary.image
  • tf.summary.merge
  • tf.summary.merge_all

Utilities

  • tf.summary.get_summary_description

Class FileWriter

常见方法

__init__

创建一个FileWriter 和一个事件文件

init(
logdir,
graph=None,
max_queue=10,
flush_secs=120,
graph_def=None,
filename_suffix=None
)

add_graph

添加一个Graph 到事件文件中

add_graph(
graph,
global_step=None,
graph_def=None
)

add_summary

添加一个Summary 的buffer到时间文件中

add_summary(
summary,
global_step=None
)

close

将事件文件写入到硬盘 并关闭文件

flush

将缓冲区的内容写到磁盘

Ops

tf.summary.scalar

标量

tf.summary.scalar(
name, #生成节点的名字
tensor,#数值张量
collections=None, #集合的keys
family=None
)

Return:
A scalar Tensor of type string. Which contains a Summary protobuf.

tf.summary.image

添加图片

tf.summary.image(
name,
tensor, #[batch_size, height, width, channels]
max_outputs=3,
collections=None,
family=None
)

tf.summary.merge_all

合并

tf.summary.merge_all(
key=tf.GraphKeys.SUMMARIES,
scope=None
)

可视化步骤

  • 建立summary,合并所有summary操作
  • 创建summary writer
  • 运行summary_ops,得到summary_str
  • 将summary_str 添加到buffer区
  • 将buffer区内容写入文件

示例

import tensorflow as tf 
import numpy as np 
import pandas as  pd 


#建立summary,合并所有summary操作,summary_vars 也可用tf.placeholder
x = tf.Variable(0.) 

y = tf.Variable(0.)

z = tf.Variable(0.)

#定义几个summary操作
tf.summary.scalar("x", x)

tf.summary.scalar("y", y)

tf.summary.scalar("z", z)

summary_vars =[x,  y, z]

#合并所有summary操作
summary_ops = tf.summary.merge_all()

global_step =0

with tf.Session() as sess:

    #initial global variables
    sess.run(tf.global_variables_initializer())

    #create file writer
    writer = tf.summary.FileWriter("./log", sess.graph)

    ##1000 step 
    while global_step < 1000:
        #运行summary_ops
        summary_str = sess.run(summary_ops, feed_dict={
            summary_vars[0] : global_step ,
            summary_vars[1] : global_step * global_step +1,
            summary_vars[2] : np.log(global_step + 8) 
            })
        #将summary_str 添加到缓冲区
        writer.add_summary(summary_str, global_step)
        #写入文件
        writer.flush()

        global_step +=1 

    ##close file writer
    writer.close()

运行效果

在命令行输入

tensorboard --logdir =./log

然后在浏览器中输入

http://desktop-8k0unat:6006/

运行结果

Reference

tensorflow api_guides

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值