【初学者系列】tensorboard学习笔记

2019 年 10 月 4 日 专知

【导读】TensorFlow主要优势是灵活和可视化。TensorBoard是TensorFlow的一组可视化工具。熟悉的使用TensorBoard可以大大提高训练的效率。今天本文将介绍一下TensorBoard。

TensorBoard介绍

TensorBoard是TensorFlow的一个可视化工具。我们用TensorFlow定义的数据以及做的运算都可以在TensorBoard中可视化的展现。其实TensorFlow可以抽象为一个图,每一个TensorFlow的操作都是往图中添加节点或者线。TensorBoard基本界面如下:

重要概念

Summary从TensorFlow获取数据

Tags给数据一个name

Event Files & LogDirsTensorBoard 从硬盘LogDirs路径的(Event Files)文件中加载数据

Runs比较模型的不同执行情况

可视化面板介绍

Scalar Dashboard记录标量变化,比如损失和学习率

Histogram Dashboard显示张量的统计分布如何随时间变化

Distribution Dashboard高级统计信息,可视化直方图数据

Image Dashboard图像仪表板可以显示通过tf.summary.image保存的png

Audio Dashboard音频仪表板可以嵌入可播放的音频小部件,以存储通过tf.summary.audio保存的音频,类似Image Dashboard

Graph ExplorerGraph Explorer可以可视化TensorBoard图,从而可以检查TensorFlow模型。

Embedding Projector嵌入式投影仪可以可视化高维数据

Text Dashboard文本仪表板,显示通过tf.summary.text保存的文本片段。支持超链接、列表和表等标记功能。

不说废话,do it!

安装TensorFlow环境这里就不说了,可以用

pip show tensorboard检查TensorBoard是否安装好。

我们开始讲怎么使用TensorBoard:

首先新建python文件,内容如下:

其中,FileWriter是将图保存到事件文件中,它有两个参数,一个是日志文件的路径,一个是图,图可以指定图,也可以是默认图。

运行python文件成功之后,在命令行运行:

tensorboard --logdir=./graphs --port=8081

浏览器http://localhost:8081/可以看见界面如下:

注意logdir后的路径不要用引号!否则会出现如下图的错误

这只是一个简单的代码,绘制的图也比较简单。可是我们的神经网络模型复杂,如何在庞杂的代码中追踪数据并显示呢?

更复杂的代码来啦

TensorBoard官网上有示例函数,网址如下:

https://www.tensorflow.org/tensorboard/r1/summaries

如上方法的作用是计算平均值,将各种参数记录在Summary中,有平均值,标准差,最大值,最小值以及直方图。

如上方法是创建神经网络层,将神经网络层的一些常量记录下来,如线性模型y=wx+b中的权值w与偏置值b。也将信号总和以及激活函数画成直方图。

这个方法是记录dropout、交叉熵、训练、准确率。

这里比较重要,merge_all方法,管理Summary,合并默认图中收集的所有Summary。

如上,初始化之后FileWriters之后必须在FileWriters训练和测试模型时向中添加Summary。

根据以上官方示例,写一个具体的python程序,参考链接为:

https://blog.csdn.net/iamcfb_/article/details/86776358

程序如下:

程序Tensorboard结果如下:

运行3次后SCALARS结果如下:

可以看出Tensorboard可以记录每一次运行的一些标量变化。它的日志文件是以append的方式写入日志文件夹的,运行Tensorboard命令时读取所有的日志文件,所以不要轻易删除某些日志文件,否则会出现修改程序不刷新Tensorboard界面的现象。

资源来啦

本文程序在百度网盘链接是:

https://pan.baidu.com/s/1cjGKVU4G_88KSA9MPdB3_Q

提取码:6v2q


-END-

专 · 知


专知,专业可信的人工智能知识分发,让认知协作更快更好!欢迎登录www.zhuanzhi.ai,注册登录专知,获取更多AI知识资料!

欢迎微信扫一扫加入专知人工智能知识星球群,获取最新AI专业干货知识教程视频资料和与专家交流咨询

请加专知小助手微信(扫一扫如下二维码添加),加入专知人工智能主题群,咨询技术商务合作~

专知《深度学习:算法到实战》课程全部完成!560+位同学在学习,现在报名,限时优惠!网易云课堂人工智能畅销榜首位!

点击“阅读原文”,了解报名专知《深度学习:算法到实战》课程

登录查看更多
7

相关内容

TensorBoard是深度学习框架TensorFlow的一个可视化工具,能够有效地展示Tensorflow在运行过程中的计算图、各种指标随着时间的变化趋势以及训练中使用到的数据信息。
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
194+阅读 · 2020年6月29日
一份简短《图神经网络GNN》笔记,入门小册
专知会员服务
224+阅读 · 2020年4月11日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
【干货】谷歌Joshua Gordon 《TensorFlow 2.0讲解》,63页PPT
专知会员服务
27+阅读 · 2019年11月2日
TensorFlow 2.0 学习资源汇总
专知会员服务
66+阅读 · 2019年10月9日
MIT新书《强化学习与最优控制》
专知会员服务
276+阅读 · 2019年10月9日
盘一盘 Python 系列 10 - Keras (上)
平均机器
5+阅读 · 2019年8月26日
PyTorch模型训练特征图可视化(TensorboardX)
极市平台
33+阅读 · 2019年6月29日
PyTorch 学习笔记(一):让PyTorch读取你的数据集
极市平台
16+阅读 · 2019年4月24日
tensorflow系列笔记:流程,概念和代码解析
北京思腾合力科技有限公司
30+阅读 · 2017年11月11日
用 Scikit-Learn 和 Pandas 学习线性回归
Python开发者
9+阅读 · 2017年9月26日
TensorFlow学习笔记2:构建CNN模型
黑龙江大学自然语言处理实验室
3+阅读 · 2016年6月14日
Image Captioning: Transforming Objects into Words
Arxiv
7+阅读 · 2019年6月14日
Arxiv
19+阅读 · 2018年10月25日
Arxiv
5+阅读 · 2018年6月5日
Arxiv
4+阅读 · 2018年3月30日
VIP会员
相关VIP内容
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
194+阅读 · 2020年6月29日
一份简短《图神经网络GNN》笔记,入门小册
专知会员服务
224+阅读 · 2020年4月11日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
【干货】谷歌Joshua Gordon 《TensorFlow 2.0讲解》,63页PPT
专知会员服务
27+阅读 · 2019年11月2日
TensorFlow 2.0 学习资源汇总
专知会员服务
66+阅读 · 2019年10月9日
MIT新书《强化学习与最优控制》
专知会员服务
276+阅读 · 2019年10月9日
相关资讯
盘一盘 Python 系列 10 - Keras (上)
平均机器
5+阅读 · 2019年8月26日
PyTorch模型训练特征图可视化(TensorboardX)
极市平台
33+阅读 · 2019年6月29日
PyTorch 学习笔记(一):让PyTorch读取你的数据集
极市平台
16+阅读 · 2019年4月24日
tensorflow系列笔记:流程,概念和代码解析
北京思腾合力科技有限公司
30+阅读 · 2017年11月11日
用 Scikit-Learn 和 Pandas 学习线性回归
Python开发者
9+阅读 · 2017年9月26日
TensorFlow学习笔记2:构建CNN模型
黑龙江大学自然语言处理实验室
3+阅读 · 2016年6月14日
相关论文
Top
微信扫码咨询专知VIP会员