Tensorflow语法

在Jupyter中打开查看TensorBoard

2019-12-16  本文已影响0人  Dorrrris

不知道这样描述是否正确,我做的事情是 在Jupyter中用tensorflow写了一个模型,希望在tensorboard中看到输出的各种图形。

  1. Jupyter中加载tensorflow
    总之 用anaconda navigator可以解决一切问题。因为以前创建过一个tensorflow环境(不同人的命名不一样,我记得是一个csdn的帖子,反正按照他的方式创建环境是OK的),navigator的Home界面中,在tensorflow环境里安装jupyter(之前只安装了spyder)。
    安装好之后,启动新的Jupyter Notebook(tensorflow)程序就叫这个,就像spyder(tensorflow)一样。
  2. 测试一下tensorflow安装好了没
    完全参考https://blog.csdn.net/xiaoyw71/article/details/86514017这个帖子。
    new一个文件,
import tensorflow as tf

a = tf.random_normal([2,20]) #定义2x20的随机数矩阵
sess = tf.Session()  #启动一个tensorflow会话
out = sess.run(a)    # 用在sess会话里执行a,结果放out里
x, y = out               
 
plt.scatter(x, y)    #用pyplot创建一系列散列点,坐标为x和y
plt.show()
sess.close()
  1. 测试一下tensorboard安装好了没
    我这里是自动安装过tensorboard的。没有任何pip install过程。可以先检查一下自己装没装过。
anaconda prompt -> activate tensorflow 
pip list

出来一大列安装过的包,找找有没有tensorboard,有的话就是安装过。
仍然参考上面的帖子,测试代码:

weight = tf.Variable(1.0, name="weight")
input_value = tf.constant(0.5, name="input_value")
expected_output = tf.constant(0.0, name="expected_output")
model = tf.multiply(input_value,weight, "model")   #计算模型为input_value与weight的乘积
loss_function = tf.pow(expected_output - model, 2, name="loss_function")  #损失函数为输出差的平方

optimizer = tf.train.GradientDescentOptimizer(0.025).minimize(loss_function)  #梯度下降优化

for value in [input_value, weight, expected_output, model, loss_function]:
    tf.summary.scalar(value.op.name, value)

summaries = tf.summary.merge_all()
sess = tf.Session()
# 训练过程中直接向日志文件添加数据,日志文件为'log_simple_stats'
summary_writer = tf.summary.FileWriter('log_simple_stats', sess.graph)

sess.run(tf.global_variables_initializer())

for i in range(100):
    summary_writer.add_summary(sess.run(summaries), i)
    sess.run(optimizer)

之后,在这个.ipynb所在的文件夹下,会有一个新的文件夹log_simple_stats。

  1. 查看tensorboard
    很多帖子说直接cmd,但我不可以,会报错说tensorboard不是内部或外部命令,也不是可运行的程序。
    解决方法是:命令行
anaconda prompt >activate tensorflow
>H:
>cd JupyterTensoflowBook
>tensorboard --logdir=log_simple_stats

成功的话 会提示

TensorBoard 1.13.1 at http://DESKTOP-ITEASRP:6006 (Press CTRL+C to quit)

chrome浏览器输入http://DESKTOP-ITEASRP:6006 就可以看到tensorboard界面了~

*5. 如果graph界面有多个流图,说明这个程序之前run过很多遍。可以先清掉log文件夹里的eventsout文件,然后在JupyterNotebook的菜单栏-> kernel ->run and restart. 重复上面的步骤打开浏览器->查看tensorboard。

上一篇下一篇

猜你喜欢

热点阅读