我正在尝试使用torch.utils.tensorboard记录我的神经网络结构。但是,当我使用作者的add_graph函数时,出现了以下错误:
Cannot insert a Tensor that requires grad as a constant. Consider making a parameter or input, or detaching the gradient.
然后打印一个形状张量(512,512),它等于模型输入和输出维的一个隐藏层。
我使用的代码如下:
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter()
input_tensor = torch.Tensor(...., require_grads=False)
writer.add_graph(model, input_tensor)
我在谷歌上搜索了一下,但只找到了几个错误信息相同但原因完全不同的帖子。
这些图书馆的版本如下:
Python 3.8.12
pytorch 1.10.1 py3.8_cuda11.3_cudnn8.2.0_0 pytorch
cudatoolkit 11.3.1
tensorboard 2.7.0
CUDA Version: 11.2
发布于 2022-08-30 11:10:36
如果不看到你的模型,就很难回答这个问题。我相信正在发生的是,你的模型有悬挂层,其中有(例如)卷积张量,没有传递给gpu,所以不是参数。
试着跑:
model.cuda()
model.parameters()
看看你能不能得到你想要的模型。
https://stackoverflow.com/questions/70747578
复制相似问题