TensorFlow – 使用TensorBoard可视化数据

网络结构可视化

  我们首先看一个最简单的只有网络而没有训练过程的demo(矩阵相乘):

  运行项目,会在项目文件夹里生成一个logs目录,并在logs目录下保存生成的数据。
  

  切换到项目路径下,在命令行运行

  然后打开浏览器,访问localhost:6006(与执行完tensorboard命令后回显的url一致),就可以看到tensorboard生成的可视化图形了。
  

训练过程可视化

  上面的操作只能将网络结构可视化,下面介绍一个更复杂一点的例子:我们训练一个线性回归模型 y=kx+b 的参数kb,并将训练过程可视化。
  tensorboard支持以下的几种统计图:

  • tf.summary.scalar(name, tensor)
     折线图,其中tensor参数只能是单个的数
  • tf.summary.histogram(name, values)
     直方图,其中values可以是多个数
  • tf.summary.image(name, tensor)
     图像,其中tensor是一副图片

  代码如下:

  同样地,在命令行运行

  显示的统计图结果为:
  

  从图中可以看出,随着样本不断的训练,k逐渐接近3而b逐渐接近1,最终能够较好地拟合线性函数y=3x+1