Pytorch使用TensorBoard测试

3 篇文章 0 订阅

参考图书:深入浅出Pytorch
代码:

import torch
import torch.nn as nn
from torch.utils.tensorboard import SummaryWriter
from sklearn.datasets import load_boston


class LinearModel(nn.Module):
    def __init__(self, ndim):
        super(LinearModel, self).__init__()
        self.ndim = ndim
        self.weight = nn.Parameter(torch.randn(ndim,1))
        self.bias = nn.Parameter(torch.randn(1))

    def forward(self, x):
        return x.mm(self.weight) + self.bias


boston = load_boston()
lm = LinearModel(13)            # 数据维度
criterion = nn.MSELoss()        # 损失函数
optim = torch.optim.SGD(lm.parameters(), lr=1e-6)       # 优化器
data = torch.tensor(boston["data"], requires_grad=True, dtype=torch.float32)
target = torch.tensor(boston["target"], dtype=torch.float32)
write = SummaryWriter()

for step in range(10000):
    # 迭代
    predict = lm(data)
    loss = criterion(predict, target)
    write.add_scalar("Loss/train", loss, step)
    write.add_histogram("Param/weight", lm.weight, step)
    write.add_histogram("Param/bias", lm.bias, step)

    if step and step % 500 == 0:
        print("Loss:{:.3f}".format(loss.item()))

    optim.zero_grad()
    loss.backward()
    optim.step()

运行之后终端会出现runs子文件,之后输入:

tensorboard --logdir ./runs

最终会在本机6006端口会现实tensorboard可视化结果:
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数学小牛马

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值