炼丹神器——TensorboardX安装使用

相关资料:

Github地址:https://github.com/lanpa/tensorboardX
一个博客:Pytorch使用tensorboardX可视化。超详细!!!

安装过程:

安装TensorboardX

pip install tensorboardX

安装TensorFlow

pip install tensorflow

我疑惑了一下为什么要装TensorFlow,后来发现它的工作方式是炼丹程序运行时创建了log文件,然后Tensorboard去读取和生成图表,TensorboardX做的事应该是支持了pytorch创建这个log文件。

小提示:

我在运行的时候(后话),出现了下面的错误(如下图),上网查了一下(stackoverflow),然后感觉我的numpy和pandas可能版本不对,就更新了一下pandas和numpy(然后就work了,快乐)。

pip install -U pandas, numpy

运行:

运行demo.py,此时demo.py同级目录下会有runs等文件夹(下图)

然后在这个runs文件夹的同级目录下,命令行运行tensorboard

tensorboard --logdir runs

如果运行正常,会显示网页链接如下,然后在浏览器里打开就行了

TensorBoard 1.12.1 at http://DESKTOP-AKAISORA:6006 (Press CTRL+C to quit)

详细基本用法:

可以看Doc,或者相关博客。

add_scalar
from tensorboardX import SummaryWriter
writer=SummaryWriter()
writer.add_scalar('Train/Duration',turns+1,episodes_id)
writer.add_scalars('Train/turn-value',{'turns':turns+1,'value':value},gturn)
add_graph
from tensorboardX import SummaryWriter
writer=SummaryWriter()
class Net(nn.Module):
	def __init__(self):
		super(Net,self).__init__()
		self.fc1=nn.Linear(12,16)
		self.fc2=nn.Linear(16,16)
		self.fc3=nn.Linear(16,2)
	def forward(self,x):
		x=torch.cat([x,pow(x,2),0.1/x],1)
		x=F.relu(self.fc1(x))
		x=F.relu(self.fc2(x))
		x=self.fc3(x)
		return x
device=torch.device("cuda" if torch.cuda.is_available() else "cpu")
policy_net=Net().to(device)
batch_state=torch.tensor([1,2,3,4],device=device,dtype=torch.float32).view(1,1,-1)
writer.add_graph(policy_net,(batch_state,))

附加内容:

用add_graph功能的时候出错了(cannot import name ‘OperatorExportTypes’)
解决办法是把pytorch从0.4升到1.0

发表评论

电子邮件地址不会被公开。 必填项已用*标注