TensorBoard快速入门

一、简介

TensorBoard是一套 Web 应用程序,用于检查和了解 TensorFlow 运行和图形。简而言之,就是用于机器学习可视化的工具

TensorBoard 设计为完全离线运行,++无需任何 Internet 访问权限++。例如,这可能位于本地计算机上、公司防火墙后面或数据中心中。

二、安装

在Pycharm的Terminal中直接使用pip安装即可。

python 复制代码
pip install tensorboard ==2.12.0

注意:此处安装的TensorBoard版本我自行设定为2.12.0版。因为在此前运用最新版显示图象时出现了TypeError报错,这就是由于版本过高导致,所以为了避免该错误,建议最好下载较低版本的TensorBoard

安装显示Successful就表明安装成功。

三、运行

TensorBoard的运行界面不在Pycharm中,而是通过Pycharm运行生成一个Internet访问地址,通过点击该地址或者在网页中输入地址从而进入TensorBoard界面。

python 复制代码
tensorboard --logdir=my_log

my_log代指TensorBoard的log文件所在的目录。Tensorboard面板中展示的数据都来源于log文件,一般一次完整的运行生成一份log文件。

在Pytorch中,实现可视化,需要创建一个SummaryWriter对象,在创建该对象的时候就会创建一个log文件(文件名自行定义),然后调用add_something方法,在log中写日志,然后展示在TensorBoard界面中。

如看到以下输出,则表明运行成功

python 复制代码
TensorBoard 2.12.0 at http://localhost:6006/ (Press CTRL+C to quit)

点击网址http://localhost:6006/即可进入TensorBoard界面。

此外该网址的端口默认为6006,但是也可以通过port设置别的端口。

python 复制代码
tensorboard --logdir=my_log --port=6009

四、具体使用

复制代码
SummaryWriter:创建log文件,文件名自定义
add_something:向log文件中添加数据,如可以通过add_imge添加图片
close:训练结束后,通过close方法结束log写入

**案例:**运用TensorBoard展示图片

① 导包
python 复制代码
from torch.utils.tensorboard import SummaryWriter
from PIL import Image
import numpy as np
复制代码
②创建SummaryWriter对象
python 复制代码
writer = SummaryWriter("logs")
writer.close()

创建对象后,立马写上close,以免忘记

③添加本地图片数据
python 复制代码
img_path = "data/train/ants_image/0013035.jpg"  #图片的相对地址
img_PIL = Image.open(img_path) #根据图片的相对地址获取图片--PIL.JpegImagePlugin.JpegImageFile--不符合add_imge参数类型
img_array = np.array(img_PIL)#将该图片转换为numpy.ndarray类型使用
writer.add_image("train", img_array, 0,dataformats='HWC')#global_step表示步骤,如果为同一个tag,那么该参数表示第几个图片

使用API时要注意其参数类型,不同API内对所含参数类型不同,建议通过ctrl+双击该API查看其具体使用方法。

④运行程序

运行该程序后,在Pycharm的Terminal中调取TensorBoard界面。

点击网页,进入TensorBoard界面,图片即可展示成功。

⑤关闭运行

点击ctrl+c即可关闭程序运行

相关推荐
云水初3 小时前
【项目篇】基于LanGraph的自动处理客服邮件的 Agent汇总
开发语言·笔记·python·学习·fastapi·langgraph
香吧香4 小时前
venv 详解
python
笨笨饿4 小时前
#142_VS Code.map文件插件的用法
git·python·stm32·单片机·嵌入式硬件·物联网·vim
zwd20054 小时前
Manim 竖屏 1080×1920 配置详解:pixel_width、frame_width 怎么写(0.21.0 / 0.22.0 实测)
python·manim·数学动画·短视频制作·manim教程·竖屏视频
Nontee4 小时前
Quartz 新手入门:定时任务的两个承诺
开发语言·windows·python
wewowilling4 小时前
LangChain入门
python·ai·langchain·prompt
haluhalu.4 小时前
深入理解AIAgent(1.3)--- 设计模式
人工智能·python·设计模式·langchain
估值探索者4 小时前
【Python量化选股流水线 #03】候选股怎么排序?动量+低波+流动性三因子打分取 Top-N
开发语言·python·接口·api接口·股票数据接口·数据接口·股票数据api接口
骑士雄师4 小时前
supervisor 中关于上下文多轮信息维护常用到的python语法
开发语言·python