我在使用tensorboardX可视化模型的权重和偏差时遇到了麻烦。 这是我的模型(无论如何都很简单):
self.pipe = nn.Sequential(nn.Linear(9, 128),
nn.ReLU(),
nn.Linear(128, 256),
nn.ReLU(),
nn.Linear(256,2),
nn.Softmax()
)
def forward(self, x):
return self.pipe(x)
这是我在pytorch中遇到错误的地方
for name, param in net.named_parameters():
writer.add_histogram(name, param, epoch_size, bins='auto')
错误是
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-70-d060d2df4423> in <module>()
1 for name, param in net.named_parameters():
----> 2 writer.add_histogram(name, param, epoch_size, bins='auto')
~\Anaconda3\lib\site-packages\tensorboardX\writer.py in add_histogram(self, tag, values, global_step, bins, walltime)
403 if isinstance(bins, six.string_types) and bins == 'tensorflow':
404 bins = self.default_bins
--> 405 self.file_writer.add_summary(
406 histogram(tag, values, bins), global_step, walltime)
407
AttributeError: 'NoneType' object has no attribute 'add_summary'
但是我真的必须看到直方图,权重卡在次优位置。 所以我稍稍更改了代码以逐步进行操作
param = np.array(list(net.parameters()))
print(param[0].data)
writer.add_histogram('weight', param[0].data)
BOOM!仍然是同样的错误,也许根本不会改变。
答案 0 :(得分:1)
发布的代码段不足以根本导致问题。
在writer上调用close()方法时,成员变量file_writer设置为None。请检查是否在writer上调用了close()方法。当将writer对象用作上下文管理器并退出with块时,也会调用close()方法。
static my_error_category_type c