zoukankan      html  css  js  c++  java
  • tensorboard实现训练的可视化

      tensorboard是tensorflow自带的可视化工具

      输入命令可以启动tensorboard服务。

    tensorboard --logdir=your log dir

      通过浏览器localhost:6006进入可视化界面,可以看到能够进行可视化的选项,包括

    • SCALARS:显示训练过程中的损失值、准确率、权重偏置变化
    • IMAGES:显示训练的图像
    • AUDIO:显示训练的音频
    • GRAPHS:可视化模型
    • DISTRIBUTIONS:记录数据的分布
    • HISTOGRAMS:数据的直方图
    • EMBEDDINGS:词向量的投影

      想用tensorboard展示哪些量,只需要在变量后添加tf.summary底下相应的函数即可,举个栗子

    1 def loss(logits,label_batches):
    2     cross_entropy = tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits,labels=label_batches)
    3     cost = tf.reduce_mean(cross_entropy)
    4     tf.summary.scalar("loss",cost)
    5     return cost

      在scalars中展示损失值,只需要添加第4行所示代码即可。其余功能可以去官网查看。

      最后,在想要可视化的地方进行汇总,一行代码就可以汇总截止到该代码之前的所有summary,添加代码:

    summary_op = tf.summary.merge_all()

      然后,使用如下代码,将summary保存下来,最终在目录下生成events.out....的文件。

    train_writer = tf.summary.FileWriter(log_dir,sess.graph)

      再session中执行的时候,使用下面两行代码运行汇总操作,第2行中的step是汇总的步数,你也可以规定多少个step后进行一次汇总。

    1 summary = sess.run(summary_op)
    2 train_writer.add_summary(summary,step)

    实际展示的结果如下

    SCALARS

    IMAGES

    GRAPHS

  • 相关阅读:
    替代PhotoShop:GIMP图形编辑器的使用
    Matlab: 主函数和子函数间接传递变量
    代码管理:SVN的使用
    Python: 科学计算
    Python: 代码调试
    Latex: article模板
    Matlab: 程序优化和调试
    LibreOffice的使用技巧
    mysql--多表联合查询
    mysql--数据查询
  • 原文地址:https://www.cnblogs.com/wktwj/p/7236020.html
Copyright © 2011-2022 走看看