重点:
1、tf.namescope()、 tf.summary.FileWriter('logs/',ss.graph)
2、参数名、op都可以定义新的名称,如下A、B、C
3、启动tensorboard:tensorboard --logdir=C:\Users\vip_g\logs
4、用Google浏览器打开生成的http地址
一、简单代码
import tensorflow as tf
#定义命名空间
with tf.name_scope('input'):
#fetch:就是同时运行多个op的意思
input1 = tf.constant(3.0,name='A')#定义名称,会在tensorboard中代替显示
input2 = tf.constant(4.0,name='B')
input3 = tf.constant(5.0,name='C')
with tf.name_scope('op'):
#加法
add = tf.add(input2,input3)
#乘法
mul = tf.multiply(input1,add)
with tf.Session() as ss:
#默认在当前py目录下的logs文件夹,没有会自己创建
wirter = tf.summary.FileWriter('logs/',ss.graph)
result = ss.run([mul,add])
print(result)
执行代码后,找到py文件目录下找logs目录:
可以看到有一个:events.out.tfevents.前缀的文件
二、启动tensorboard:
打开终端,注意使用打开终端的方式:
1、系统自带的终端,cmd
2、名称为:Anaconda Prompt的终端
选择用哪种终端打开,根据当时安装tensorflow时用的那种终端安装的,我使用的是Anaconda Prompt终端安装的tensorflow,因此用它来打开。
我使用系统的cmd终端,输入命令提示报错
命令:
tensorboard --logdir=C:\Users\vip_g\logs
C:\Users\vip_g\logs这个路径可以任意定义的
使用Anaconda Prompt的终端,输入命令:tensorboard --logdir=C:\Users\vip_g\logs,表示运行成功,并且提供一个http地址,这个地址一般是不会改变的,在浏览器中输入提示的http地址,注意要用Google、火狐浏览器,其他的浏览器像360等是打不开的。
图中的输入就变成了定义好的名称:
3、如果logs在d盘,怎么做呢?
先要将盘符指向d盘,d:回车,再执行命令,不然也执行不了。其他盘类似操作。
4、要重新编译代码、更新图怎么做?
1)要去logs目录下把文件删除
2)运行代码
3)重新执行启动tensorboard命令
4)刷新tensorboard界面
5、如果更新后,发现tensorboard的计算图比较乱,怎么办?
是因为在内存中还存在以前的数据,清理掉就好了。
1)去logs目录下把文件删除
2)jupyter-->kernel-->restart&run all
3)重新执行启动tensorboard命令
4)刷新tensorboard界面