Pytorch在colab和kaggle中使用TensorBoard/TensorboardX可视化
在colab和kaggle内核的Jupyter notebook中如何可视化深度学习模型的参数对于我们分析模型具有很大的意义,相比tensorflow, pytorch缺乏一些的可视化生态包,但是幸好pytorch1.1官方添加了tensorboard的库,可以直接从TORCH.UTILS.TENSORBOARD 调用。
但是就目前的使用体验和反应,还是建议直接使用tensorboardX包在pytorch中进行可视化。
相比本地机中使用notebook进行可视化,在这种远程的notebook中如果使用魔法函数
!tensorboard --logdir
会导致你无法打开tensorboard的http服务(也就是网址)。本文使用一种简单的方法,通过tensorboardX在notebook可视化pytorch模型参数。
步骤:
开始前,先确保安装成功
pip install tensorboardX
pip install tensorboard
pip install tensorflow
第一步import tensorboardX (如何使用tensorboardX请参考reference):
from tensorboardX import SummaryWriter
第二步初始化一个 SummaryWriter实例:
writer = SummaryWriter()
第三步:
%load_ext tensorboard.notebook
or (版本差异,自行选择)
%load_ext tensorboard
第四步把你模型需要在tensorboard中可视化的参数写入writer,每次写入 图像名称,loss/accracy数值, n_iteration
writer.add_scalar('Train/Loss', train_loss, epoch) writer.add_scalar('Train/Accuracy', train_acc, epoch) writer.add_scalar('Test/Loss', test_loss, epoch) writer.add_scalar('Test/Accuracy', test_acc, epoch)
第五步:
%tensorboard --logdir ./
接下来你就可以训练你的模型了,而且在边训练的时候可以边看到模型参数的变化。