当我想这样做时,我无法通过tensorboardX显示网络图

问题描述 投票:0回答:1

这段代码很简单

if name == "main": # 经过 从 torch.utils.tensorboard 导入 SummaryWriter

model = get_net(False)
input_ = torch.randn((1, 3, 256, 256))
gt_ = torch.rand((1, 2, 256, 256))
# 添加模型结构到TensorBoard
with SummaryWriter(comment="YOLOP") as w:
    w.add_graph(model, (input_,))

当我运行此程序时,它无法显示网络图并出现如下错误:

          [[ 3.6462e-02,  1.6451e-04,  2.8460e-02, -2.8415e-03, -3.7653e+00,
             4.1301e+00],
           [ 3.6462e-02,  1.6451e-04,  2.8460e-02, -2.8415e-03, -3.7653e+00,
             4.1301e+00],
           [ 3.6462e-02,  1.6451e-04,  2.8460e-02, -2.8415e-03, -3.7653e+00,
             4.1301e+00],
           ...,
           [ 3.6462e-02,  1.6451e-04,  2.8460e-02, -2.8415e-03, -3.7653e+00,
             4.1301e+00],
           [ 3.6462e-02,  1.6451e-04,  2.8460e-02, -2.8415e-03, -3.7653e+00,
             4.1301e+00],
           [ 3.6462e-02,  1.6451e-04,  2.8460e-02, -2.8415e-03, -3.7653e+00,
             4.1301e+00]]]]], grad_fn=<CloneBackward0>)]), tensor([[[[0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          ...,
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000]],

         [[0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          ...,
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000]]]],
       grad_fn=<SigmoidBackward0>), tensor([[[[0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          ...,
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000]],

         [[0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          ...,
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000],
          [0.5000, 0.5000, 0.5000,  ..., 0.5000, 0.5000, 0.5000]]]],
       grad_fn=<SigmoidBackward0>)]
:List inputs to traced functions must have consistent element type. Found Tuple[Tensor, List[Tensor]] and Tensor

我真的很想知道如何解决这个问题,我很伤心!每次我运行这段代码时,我都看不到任何东西,张量板也没有显示任何图形,这让我很困惑,请任何可以保存的人我。

pytorch tensorboard
1个回答
0
投票

问题在错误日志中显现出来:输入数据和张量之间的数据类型不一致。 我提出的第一个解决方案是两者的固定数据类型,如下所示:

input_ = torch.randn((1, 3, 256, 256), dtype=torch.float32)

model = model.to(dtype=torch.float32)
© www.soinside.com 2019 - 2024. All rights reserved.