最近使用tensorboard显示神经网络,但是一连找了1个多小时一直都是inactive,没有任何显示。
我的环境:
win10,anaconda3搭建的python3.7虚拟环境
命令行操作:
E:\PycharmProjects\untitled>conda activate python37
(python37) E:\PycharmProjects\untitled>tensorboard --logdir ./log
TensorBoard 1.15.0a20190727 at http://DESKTOP-0M5OH3G:6006/ (Press CTRL+C to quit)
现象:
一直都是inactive,啥都没有
解决方案:
由于我是在虚拟环境进入到文件目录的,好像直接用./log会有问题,后来我就换成了绝对路径就ok了。正常后发现还是inactive但是有图了。
(python37) E:\PycharmProjects\untitled>tensorboard --logdir E:\PycharmProjects\untitled\logs
TensorBoard 1.15.0a20190727 at http://DESKTOP-0M5OH3G:6006/ (Press CTRL+C to quit)
其它说法:
路径不能有中文,路径中不能有空格,使用http://localhost:6006等等。
我的代码如下:
import tensorflow as tf
import numpy as np
def add_layer(inputs, in_size, out_size, activation_function=None):
with tf.name_scope('layer'):
with tf.name_scope('weights'):
Weights = tf.Variable(tf.random_normal([in_size, out_size]), name='W')
with tf.name_scope('biases'):
biases = tf.Variable(tf.zeros([1, out_size]) + 0.1, name='b')
with tf.name_scope('Wx_plus_b'):
Wx_plus_b = tf.add(tf.matmul(inputs, Weights), biases)
if activation_function is None:
outputs = Wx_plus_b
else:
outputs = activation_function(Wx_plus_b)
return outputs
x_data = np.linspace(-1, 1, 300)[:, np.newaxis]
noise = np.random.normal(0, 0.05, x_data.shape)
y_data = np.square(x_data) - 0.5 + noise
with tf.name_scope('inputs'):
xs = tf.placeholder(tf.float32, [None, 1], name='x_input')
ys = tf.placeholder(tf.float32, [None, 1], name='y_input')
l1 = add_layer(xs, 1, 10, activation_function=tf.nn.relu)
prediction = add_layer(l1, 10, 1, activation_function=None)
with tf.name_scope('loss'):
loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys - prediction),
reduction_indices=[1]))
with tf.name_scope('train'):
train_step = tf.train.GradientDescentOptimizer(0.1).minimize(loss)
sess = tf.Session()
writer = tf.summary.FileWriter('./logs/', tf.get_default_graph())
sess.run(tf.global_variables_initializer())
writer.close()
sess.close()