Tensorboard是谷歌开发的深度学习框架tensorflow的一套深度学习可视化神器,在pytorch团队的努力下,他们开发出了tensorboardX来让pytorch的用户也能享受tensorboard的福利。
首先安装依赖库:
代码语言:javascript复制pip install tensorboard
pip install tensorboardX
先画一条y=x曲线熟悉一下
代码语言:javascript复制#import SummaryWriter模块
from tensorboardX import SummaryWriter
#创建SummaryWriter对象,以输出日志的文件夹名作为参数
writer=SummaryWriter("logs")
#y=x图像
for i in range(100):
#画图
writer.add_scalar("y=x",i,i)
writer.close()
' SummaryWriter '类提供了一个高级API,可以在给定的目录中创建一个事件文件,并向其中添加摘要和事件。
SummaryWriter类的构造函数
代码语言:javascript复制def __init__(
self,
logdir: Optional[str] = None,
comment: Optional[str] = "",
purge_step: Optional[int] = None,
max_queue: Optional[int] = 10,
flush_secs: Optional[int] = 120,
filename_suffix: Optional[str] = '',
write_to_disk: Optional[bool] = True,
log_dir: Optional[str] = None,
comet_config: Optional[dict] = {"disabled": True},
**kwargs):
一般填写第一个参数即可,传入要保存日志文件的文件夹。
add_scalar()函数第一个参数是图像的名称,传入一个字符串,第二个参数是y轴的值,第三个参数是x轴的值。
close()函数关闭当前SummaryWriter对象。
执行tensorboard_test.py,将会在对应的文件夹生成日志文件
随后要打开日志文件,绘制图画
要在Terminal进入存放日志的文件夹,输入命令
代码语言:javascript复制tensorboard --logdir="."
按照网上很多教程,只需要进入到与logs(我的日志文件在logs下存放)同级的文件夹,执行tensorboard --logdir="logs"即可,但我执行这条指令后,Terminal没有报错也没有任何输出,后来摸索出来应该进入logs再执行tensorboard --logdir=".",’.‘表示当前文件夹,便可以正常输出。
执行结果为
代码语言:javascript复制(AI) C:Users且看风去风留PycharmProjectspytorchlogs>tensorboard --logdir="."
2022-02-02 13:28:40.082181: W tensorflow/stream_executor/platform/default/dso_loader.cc:60] Could not load dynamic library 'cudart64_110
.dll'; dlerror: cudart64_110.dll not found
2022-02-02 13:28:40.082907: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU se
t up on your machine.
Serving TensorBoard on localhost; to expose to the network, use a proxy or pass --bind_all
TensorBoard 2.4.1 at http://localhost:6006/ (Press CTRL C to quit)
点击最后一行的url,便可看到图像,效果如图: