pytorch中tensorboard安装及安装过程中出现的常见错误问题
作者:深度学习强化学习爱好者
安装步骤
1.在anaconda prompt环境下安装tensorboard
(1)激活pytorch环境
activate pytorch
(2)安装tensorboard
Pip install tensorboard
安装起来还是比较快的,tensorboard占用存储也小,所以网慢也会很快安装好。
使用tensorboard
在终端或者pycharm中输入以下代码字段
import torch import torchvision from torch.utils.tensorboard import SummaryWriter from torchvision import datasets, transforms # Writer will output to ./runs/ directory by default writer = SummaryWriter() transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))]) trainset = datasets.MNIST('mnist_train', train=True, download=True, transform=transform) trainloader = torch.utils.data.DataLoader(trainset, batch_size=64, shuffle=True) model = torchvision.models.resnet50(False) # Have ResNet model take in grayscale rather than RGB model.conv1 = torch.nn.Conv2d(1, 64, kernel_size=7, stride=2, padding=3, bias=False) images, labels = next(iter(trainloader)) grid = torchvision.utils.make_grid(images) writer.add_image('images', grid, 0) writer.add_graph(model, images) writer.close()
可以在anaconda prompt终端中的刚才所创建的虚拟环境pytorch中进行:
(1)首先进入刚才创建的虚拟环境
activate pytorch
(2)运行python
python
检验tensorboard是否安装好
from torch.utils.tensorboard import SummaryWriter
没报错就是安装好了
(3)官方pytorch文档中运行tensorboard,直接复制代码到刚才建立的虚拟环境pytorch终端命令tensorboard --logdir=runs
注意:(3)会出现问题两个问题
问题1(可无可有,看自己的电脑提示)
若有问题,则是以下问题:
tensorboard ‘utf-8’ codec can’t decode byte 0xba in position 0: invalid start byte
解决方法
计算机名称里边有中文, 改一下计算机名称 运行成功。
问题2
运行完(3)之后会出现
复制 http://localhost:6006/ 到Google游览器,会出现
这是因为命令tensorboard --logdir=runs的错误
步骤(3)的正确做法
(1) 在运行上述代码完成后,会出现一个运行文件log。在runs下的文件夹里面
(2)copy下这个文件夹的路径(注意不是文件的路径,而是文件夹的路径)
该文件夹下点击右键
直接左键即可复制
(3)在虚拟环境pytorch终端命令窗口直接运行:
tensorboard --logdir=D:\pycharm\pychanrm项目文件\runs\Dec20_21-26-45_R7000P
值得注意的是:
- 1.=的左右都不能有空格
- 2.path必须是绝对路径才可以正常找到文件,/home/…
(4)运行完会出现
(5)复制 http://localhost:6006/ 到Google游览器,即可运行成功。
是不是感觉很神奇。
最后附检测代码:
from torch.utils.tensorboard import SummaryWriter import numpy as np writer = SummaryWriter() for n_iter in range(100): writer.add_scalar('Loss/train', np.random.random(), n_iter) writer.add_scalar('Loss/test', np.random.random(), n_iter) writer.add_scalar('Accuracy/train', np.random.random(), n_iter) writer.add_scalar('Accuracy/test', np.random.random(), n_iter)
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。