tensorflow学习笔记----TensorBoard讲解

TensorBoard简介

TensorBoard是TensorFlow自带的一个强大的可视化工具,也是一个Web应用程序套件。TensorBoard目前支持7种可视化,Scalars,Images,Audio,Graphs,Distributions,Histograms和Embeddings。其中可视化的主要功能如下。

(1)Scalars:展示训练过程中的准确率、损失值、权重/偏置的变化情况。

(2)Images:展示训练过程中记录的图像。

(3)Audio:展示训练过程中记录的音频。

(4)Graphs:展示模型的数据流图,以及训练在各个设备上消耗的内存和时间。

(5)Distributions:展示训练过程中记录的数据的分部图。

(6)Histograms:展示训练过程中记录的数据的柱状图。

(7)Embeddings:展示词向量后的投影分部。

TensorBoard通过运行一个本地服务器,来监听6006端口。在浏览器发出请求时,分析训练时记录的数据,绘制训练过程中的图像。TensorBoard的可视化界面如下图所示

如图相册的菜单所示,可以依次绘制出主要功能的界面图像,下面分别介绍这些菜单页面具体功能,这里采用的是mnist_with_summaries的例子

Scalars面板

scalars面板的左侧是一些选项,包括Ignore outlines in chart scaling(不按照整表的范文显示)、data downloadlinks(数据下载链接),smoothing(图像的曲线平滑程度)以及Horizontal Axis

(水平轴)的表示,其中水平轴的表示分为3种(STEP代表迭代次数,RELATIVE代表按照训练集和测试集的相对值,WALL代表按照时间)如下图所测所示,右侧给出了准确率

和交叉熵损失函数值的变化曲线(迭代次数是1000次)。

Scalars面板中还绘制了每一层的偏置(biases)和权重(weights)的变化曲线,包括每次迭代的最大值、最小值、平均值和标准差等,如下图所示

IMAGES面板

下图展示了训练数据及和测试数据集进过预处理后图片的样子

AUDIO面板

AUDIO面板是展示训练过程中处理的音频数据。mnist_with_summaries中不含有音频例子,这里不做展示。

GRAPHS面板

GRAPHS面板是对理解神经网络结构最优帮助的一个面板,他直观的展示了数据流图。下图界面中结点之间的连线即为数据流,连线

越粗,说明两个结点之间流动的张量(tensor)越多。

在graph面板的左侧,可以选择迭代步骤。可以用不同的颜色来表示不同的Structrue(整个数据流图的结构),或者用不同的Color来表示不同的Device(设备)。例如

使用多个GPU时,各个节点分别使用的GPU不同。

当选择特定的某次迭代(如第899次)时,可以显示出各个节点的Compute time(计算时间)以及Memory(内存消耗),如下图所示

DISTRIBUTIONS面板

distributions面板和histograms面板类似,只不过是用平面来表示来自特定层的激活前后、权重和偏置的分布。下图展示的是激活之前和激活之后

数据分布。

HISTOGRAMS面板

histograms面板立体的展来自特顶层的激活前后、权重和偏置的分布。下图展示的是激活之前和激活之后的分布数据。

EMBEDDINGS面板

EMBEDDINGS面板在minst例子中无法展示。在以后的可视化例子中会有展示,这里先不做介绍。

以上就是tensorboard主要面板的介绍,下一次进行可视化例子的介绍。

时间: 2024-10-17 06:52:52

tensorflow学习笔记----TensorBoard讲解的相关文章

Tensorflow学习笔记2:About Session, Graph, Operation and Tensor

简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节点之间则是由张量(Tensor)作为边来连接在一起的.所以Tensorflow的计算过程就是一个Tensor流图.Tensorflow的图则是必须在一个Session中来计算.这篇笔记来大致介绍一下Session.Graph.Operation和Tensor. Session Session提供了O

TensorFlow学习笔记(UTF-8 问题解决 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte)

我使用VS2013  Python3.5  TensorFlow 1.3  的开发环境 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte 在是使用Tensorflow读取图片文件的情况下,会出现这个报错 代码如下 # -*- coding: utf-8 -*- import tensorflow as tf import numpy as np import mat

Tensorflow学习笔记3:TensorBoard可视化学习

TensorBoard简介 Tensorflow发布包中提供了TensorBoard,用于展示Tensorflow任务在计算过程中的Graph.定量指标图以及附加数据.大致的效果如下所示, TensorBoard工作机制 TensorBoard 通过读取 TensorFlow 的事件文件来运行.TensorFlow 的事件文件包括了你会在 TensorFlow 运行中涉及到的主要数据.关于TensorBoard的详细介绍请参考TensorBoard:可视化学习.下面做个简单介绍. Tensorf

Tensorflow学习笔记(一):MNIST机器学习入门

学习深度学习,首先从深度学习的入门MNIST入手.通过这个例子,了解Tensorflow的工作流程和机器学习的基本概念. 一  MNIST数据集 MNIST是入门级的计算机视觉数据集,包含了各种手写数字的图片.在这个例子中就是通过机器学习训练一个模型,以识别图片中的数字. MNIST数据集来自 http://yann.lecun.com/exdb/mnist/ Tensorflow提供了一份python代码用于自动下载安装数据集.Tensorflow官方文档中的url打不开,在CSDN上找到了一

TensorFlow学习笔记(8)--网络模型的保存和读取【转】

转自:http://blog.csdn.net/lwplwf/article/details/62419087 之前的笔记里实现了softmax回归分类.简单的含有一个隐层的神经网络.卷积神经网络等等,但是这些代码在训练完成之后就直接退出了,并没有将训练得到的模型保存下来方便下次直接使用.为了让训练结果可以复用,需要将训练好的神经网络模型持久化,这就是这篇笔记里要写的东西. TensorFlow提供了一个非常简单的API,即tf.train.Saver类来保存和还原一个神经网络模型. 下面代码给

Tensorflow学习笔记(对MNIST经典例程的)的代码注释与理解

1 #coding:utf-8 2 # 日期 2017年9月4日 环境 Python 3.5  TensorFlow 1.3 win10开发环境. 3 import tensorflow as tf 4 from tensorflow.examples.tutorials.mnist import input_data 5 import os 6 7 8 # 基础的学习率 9 LEARNING_RATE_BASE = 0.8 10 11 # 学习率的衰减率 12 LEARNING_RATE_DE

Tensorflow学习笔记(1)

一.背景 本人学习Tensorflow是为了完成毕业设计的工作,之前并没有用过其他的深度学习平台,Tensorflow作为当前很流行的一个平台,无论是教学文档,还是使用其开发的工程,这些资源都是很丰富的,所以很适合新手来进行入门.Tensorflow的具体背景我就不过多的介绍了,网上有很多的资源.另外我写这一系列博客的目的是激励自己吧,逼着自己学得更透彻一点,毕竟会用和能熟悉的写成教程还是两码事,希望自己能坚持下去. 2.Tensorflow安装 我使用的是自己的笔记本电脑,配置是i7-6700

Tensorflow学习笔记---2--DCGAN代码学习

以mnist数据训练为例,学习DCGAN(deep convolutional generative adversarial networks)的网络结构. 代码下载地址https://github.com/carpedm20/DCGAN-tensorflow 注1:发现代码中以mnist为训练集的网络和以无标签数据集(以下简称unlabeled_dataset)为训练集的网络不同,结构有别.以下笔记主要针对前者(Generator=3个ReLU+1个Sigmoid,Discriminator=

Google TensorFlow 学习笔记一 —— TensorFlow简介

"TensorFlow is an Open Source Software Library for Machine INtenlligence" 本笔记参考tensorflow.org的教程,翻译并记录作者的学习过程,仅供参考,如有不当之处,请及时指出并多多包涵. TensorFlow是一款开源的数学计算软件,使用data flow graphs的形式进行计算.这种灵活的架构允许我们使用相同的API在单或多CPUs或GPU,servers设置移动设备上进行计算. Data Flow