TensorFlow中的Tensorboard该怎么理解

TensorFlow中的Tensorboard该怎么理解,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

创新互联专业为企业提供邢台县网站建设、邢台县做网站、邢台县网站设计、邢台县网站制作等企业网站建设、网页设计与制作、邢台县企业网站模板建站服务,10年邢台县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

01

Tensor是什么?

Tensor是一个 n 维数组:

  • 0-d tensor: scalar (标量)

  • 1-d tensor: vector (向量)

  • 2-d tensor: matrix(矩阵)

  • 等等

02

数据流图


TensorFlow中的Tensorboard该怎么理解

以上就是数据流图。


下面从最简单的图开始:

import tensorflow as tf 

a = tf.add(3, 5)

通过TensorBoard进行可视化:

TensorFlow中的Tensorboard该怎么理解

为什么是 x, y ?

TF 自动地命名节点,当我们没有显示地指定节点名称时,

 x = 3 

 y = 5

接下来,我们打印 a,看看发生什么:

print (a) 

Tensor("Add:0", shape=(), dtype=int32)

图graph只是定义了操作operations  , 如何得到a的值?

03

执行环境:Session

创建一个Session,并在这个Session中执行上面的图,抓取到 a 的值。

创建sess,并在当前的sess中执行图:

with tf.Session() as sess:

    print(sess.run(a))

TensorFlow中的Tensorboard该怎么理解

Session对象,封装了TF的执行环境。大家如果开发过多线程,分布式软件的话,对于Session的理解可能更容易些,Session尤其对于高并发环境,并行计算显得更重要。

记住

图graph只是定义了操作operations,但是操作operations只能在session里面执行,但是graph和session是独立创建的。

04

Tensorboard入门

以windows下的使用Tensorboard为例,如果在Linux系统下,请在个别地方做出修改。

首先,必须在终端启动tensorboard,如果采用anaconda安装地话,在目录Anaconda3\Scripts下有个启动项: tensorboard.exe,这就是tensorboard的服务端。在cmd窗口,cd 到这个目录。

然后,编写tensorboard,代码:

import tensorflow as tf

with tf.name_scope('input1'):

    input1 = tf.constant(3.0,name='input1')

with tf.name_scope('input2'):

    input2 = tf.constant(5.0,name='input2')

output = tf.add(input1,input2,name='add')

with tf.Session() as sess:

    output = sess.run(output)

    graph = tf.get_default_graph()

   #将日志文件写入到目录../log/下

    writer = tf.summary.FileWriter('log',graph)

    writer.close()

这样在log文件夹下,增加了一个event文件,

再在终端,输入 tensorboard.exe --logdir = 刚在生成的log文件夹的绝对路径,回车,这样服务端就启动了,

接下来,启动客户端,即浏览器,输入localhost:6006,端口是6006,选中graphs,得到如下的可视化图:

TensorFlow中的Tensorboard该怎么理解

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。


网站栏目:TensorFlow中的Tensorboard该怎么理解
网页地址:http://scyanting.com/article/ggdisg.html