tensorflow学习4:使用tensorboard可视化网络

采用tensorboard可视化我们的网络,主要就是利用 with tf.name_scope("inputs"): 进行命名,在每句要进行可视化的句子上加上这一句话,并在括号中写上对应的名字。在session中执行writer = tf.summary.FileWriter("D:/资料/code/tensorflow/log/", sess.graph) 把图像进行写入。

我们根据上一节搭建自己的神经网络来进行修改:

import tensorflow as tf
import numpy as np
 
#构造数据
x_data = np.linspace(-1,1,300, dtype=np.float32)[:, np.newaxis] #在-1 到 1之间生成300个数据,
noise = np.random.normal(0, 0.05, x_data.shape).astype(np.float32) #增加 noise项目,给数据增加一些波动
y_data = np.square(x_data) - 0.5 + noise #数据的
 
#采用占位符为变量预定义位置 None 代表后面无论输入多少特征都可以
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")
def add_layer(inputs, in_size, out_size, activation_function=None): # inputs代表输入的数据, in_size 输入的神经元数目,出入的神经元数目,a_f代表激活函数
    with tf.name_scope("layers"):
        with tf.name_scope("weights"):
            Weights = tf.Variable(tf.random_normal([in_size, out_size])) #生成对应大小的权重
        with tf.name_scope("biase"):
            biases = tf.Variable(tf.zeros([1, out_size]) + 0.1) #偏执项
        Wx_plus_b = tf.matmul(inputs, Weights) + biases
        if activation_function is None: #是否有激活函数
            outputs = Wx_plus_b
        else:
            outputs = activation_function(Wx_plus_b)
        return outputs
 
#build network
#构建一个输入层一个神经元,隐含层都是10个神经元,输出层1个神经元的神经网络
l1=add_layer(xs,1,10,activation_function=tf.nn.relu)
prediction=add_layer(l1,10,1)
 
#定义损失函数
with tf.name_scope("weights"):
    loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys - prediction),
                         reduction_indices=[1]))
#定义优化器
optimizer=tf.train.AdamOptimizer(0.1).minimize(loss)
 
#初始化变量
init=tf.global_variables_initializer()
#定义好各种运算操作后,放到Session中进行
with tf.Session() as sess:
    sess.run(init)  # 变量一定要进行初始化
    writer = tf.summary.FileWriter("D:/资料/code/tensorflow/log/", sess.graph)
    for i in range(1000):
        sess.run(optimizer,feed_dict={xs:x_data,ys:y_data}) #训练对应的优化器
        if i%100==0:
             print(sess.run(loss, feed_dict={xs: x_data, ys: y_data}))  #每一百步打印一下对应的损失

可视化的结果如下所示:

tensorflow学习4:使用tensorboard可视化网络_第1张图片

运行方式: 在cmd窗口中输入 tensorboard --logdir 绝对路径 后复出来的网址到chorme浏览器进行读取。复制到浏览器的时候命令行窗口不要关闭。

遇到的问题:

我的问题是复制网址到浏览器打不开,断网之后却可以。

其他打不开问题的可以看看这个链接:https://blog.csdn.net/it_xiao_bai/article/details/82842205

打开方式问题的可以看看这个链接:https://blog.csdn.net/dbsdzxq/article/details/79903242

显示ValueError: Invalid format string 可以用这个方法进行解决:https://blog.csdn.net/KID_yuan/article/details/88352444

你可能感兴趣的:(TensorFlow)