• tensorboard 使用


    TensorBoard是TensorFlow 的可视化工具。主要为了更方便用户理解 TensorFlow 程序、调试与优化,用户可以用 TensorBoard 来展现 TensorFlow 图像,绘制图像生成的定量指标图以及附加数据。

    TensorBoard 通过读取 TensorFlow 的事件文件来运行。TensorFlow 的事件文件包括了在 TensorFlow 运行中涉及到的主要数据,在运行计算图后,tensorflow会在当前文件夹下,生成一个log文件夹,所有的事件文件都会放在文件夹中,每次运行文件都会生成一个日志文件。tensorboard是通过运行这些日志文件把计算图过程可视化。

    1 import tensorflow as tf
    2 
    3 with tf.Graph().as_default():
    4     
    5     x=tf.placeholder(tf.float32,name='x')
    6     y_true=tf.placeholder(tf.float32,name='y_true')
    7 
    8     writer=tf.summary.FileWriter(logdir='logs',graph=tf.get_default_graph())
    9     writer.close()

    运行上面代码会在当前目录下生成一个logs的文件夹,然后我们可以通过tensorboard运行这个日志文件来展示计算图。

    tensorboard --logdir=C:UsersAdministratorPycharmProjectsuntitled2logs

    其中tensorboard --logdir运行事件文件的命令行,C:UsersAdministratorPycharmProjectsuntitled2logs为日志文件的路径
    需要注意的是运行tensorboard命令时,需要先进入到tesorboard的安装文件夹下,或者已经在系统中设定好了环境变量

    运行后会生成一段类似这样的代码TensorBoard 0.4.0rc3 at http://20170318-133753:6006 (Press CTRL+C to quit)

    把其中http://20170318-133753:6006的地址复制到浏览器打开,就能进入tensorboard界面。

    import tensorflow as tf
    with tf.Graph().as_default():
        #name_scope作用是给节点添加名称,以便生成简洁的tensorboard
        with tf.name_scope('input'):
        #添加占位符
            x=tf.placeholder(tf.float32,name='x')
            y_true=tf.placeholder(tf.float32,name='y_true')
    
       with tf.name_scope('inference'):
            #添加变量
            w=tf.Variable(tf.zeros([1]),name='weight')
            b = tf.Variable(tf.zeros([1]),name='bias')
    
    
        #添加模型函数
        y_pre=tf.add(tf.multiply(x,w),b)
    
       #添加损失函数
        loss_function=tf.reduce_mean(tf.pow(y_true-y_pre,2))/2
    
        #梯度计算(learning_rate  是学习步长)
        optimizer=tf.train.GradientDescentOptimizer(learning_rate=0.01)
    
        #添加训练节点
        trian=optimizer.minimize(loss_function)
    
        #添加评估节点
        envalue=tf.reduce_mean(tf.pow(y_true-y_pre,2))/2
    
        #初始化变量和节点
        init=tf.global_variables_initializer()
    
        writer=tf.summary.FileWriter(logdir='logs',graph=tf.get_default_graph())
        writer.close()
  • 相关阅读:
    Linux下hook指定库
    一行一行往上爬
    高可用数据同步方案-SqlServer迁移Mysql实战
    Hystrix核心基础
    Fastjson解析多级泛型的几种方式—使用class文件来解析多级泛型
    面试大全之JVM篇
    云原生下的CICD
    学习Raft算法的笔记
    Go语言下的线程模型
    分布式事务解决方案以及 .Net Core 下的实现(上)
  • 原文地址:https://www.cnblogs.com/pacino12134/p/10026699.html
Copyright © 2020-2023  润新知