文章目录
- TensorBoard 简介
- TensorBoard 界面介绍
- TensorBoard 安装
- TensorBoard 运行
- Pytorch 使用 TensorBoard
- Google Colab中使用 Tensorboard
- Tensor折线图(Scalars)
TensorBoard 简介 TensorBoard 是Google开发的一个机器学习可视化工具。其主要用于记录机器学习过程,例如:
- 记录损失变化、准确率变化等
- 记录图片变化、语音变化、文本变化等,例如在做GAN时,可以过一段时间记录一张生成的图片
- 绘制模型
TensorBoard 界面介绍
文章图片
TensorBoard 安装 直接使用pip安装即可:
pip install tensorboard
安装后,在命令行输入:
tensorboard --help
若可以正常输出,则说明安装成功。
TensorBoard 运行 运行启动命令即可:
tensorboard --logdir my_log
my_log
是TensorBoard的log文件所在的目录。Tensorboard面板中展示的数据都来源于log文件,一般一次完整的运行生成一份log文件。例如,在Pytorch中,我们会调用new一个
SummaryWriter
对象,此时就会创建一个log文件,之后我们就会调用其add_something
方法,往log里面写日志,之后在TensorBoard面板中就可以看到数据了。最后在训练完成后,调用close
方法结束。若看到了如下输出,说明启动成功:
TensorBoard 2.8.0 at http://localhost:6006/ (Press CTRL+C to quit)
此时只需要在浏览器中输入
http://localhost:6006/
即可进入TensorBoard界面。Pytorch 使用 TensorBoard Pytorch使用Tensorboard主要用到了三个API:
SummaryWriter
:这个用来创建一个log文件,TensorBoard面板查看时,也是需要选择查看那个log文件。add_something
: 向log文件里面增添数据。例如可以通过add_scalar
增添折线图数据,add_image
可以增添图片。close
:当训练结束后,我们可以通过close
方法结束log写入。
首先需要new一个
SummaryWriter
对象:from torch.utils.tensorboard import SummaryWriterwriter = SummaryWriter(log_dir='runs/mock_accuracy')
当运行完该行代码后,可以看到当前目录下生成了一个
runs/mock_accuracy
文件夹,并且里面有event日志文章图片
此时已经可以启动tensorboard来查看了:
tensorboard --logdir runs
此时进入tensorboard页面后,啥都看不到,因为我们还没有向log里面写入任何数据:
文章图片
接下来使用
add_scalar
绘制准确率折线图:for i in range(100):
writer.add_scalar(tag="accuracy", # 可以暂时理解为图像的名字
scalar_value=https://www.it610.com/article/i * random.uniform(0.8, 1),# 纵坐标的值
global_step=i# 当前是第几次迭代,可以理解为横坐标的值
)
time.sleep(2 * random.uniform(0.5, 1.5))
这里模拟 1~3 秒完成一次迭代并计算准确率,然后将准确率增添到 accuracy 这个图下面。
过一会后,我们刷新页面,就可以看到我们的准确率变化曲线了:
文章图片
由于数据还在写入,所以曲线还在不断变化。
Google Colab中使用 Tensorboard 在Google Colab中使用Tensorboard只需要两行命令:
%load_ext tensorboard # 加载tensorboard扩展插件
%tensorboard --logdir=runs# 运行tensorboard
在运行完tensorboard后,在该单元格下面就会出现tensorboard页面:
文章图片
之后就和之前一样使用
writer
写入数据即可,然后手动点击 文章图片
按钮即可,或者使用
文章图片
按钮开启自动刷新。
文章图片
在Google Colab中不像本地那样刷新那么快,即使手动点刷新按钮也不行,我自己测试下来,大概1分钟才能真正更新一次数据。
Tensor折线图(Scalars) 【机器学习|TensorBoard快速入门(Pytorch使用TensorBoard)】
文章图片
- TODO:其他图形的介绍
推荐阅读
- 机器学习|Google Colab装载Google Drive(Google Colab中使用Google Drive)
- 机器学习|【学习笔记-李宏毅】GAN(生成对抗网络)全系列(一)
- 机器学习|Pytorch中DataLoader和Dataset的基本用法
- serverless|基于Serverless的图书查询APP的实现
- tensorflow|3D点云-的初识
- 机器视觉|低速自动驾驶技术(APA)
- python|python 两点曲线_Python已经成为排名第一的编程语言!附带最新Python400集视频教学...
- 人脸识别|使用Opencv+树莓派实现人脸识别(二)人脸识别和PyQt界面整合
- 人脸识别|面向佩戴口罩的人脸识别系统【4】-人脸识别