在自定义类中使用numpy 报错 AttributeError Tensor object has no attribute numpy
这个错误出现的原因是因为在PyTorch中,Tensor对象不支持numpy()函数。如果需要将Tensor对象转换为numpy数组,可以使用Tensor对象的detach().numpy()函数进行转换。
示例代码:
import torch
class MyModel(torch.nn.Module):
def __init__(self):
super(MyModel, self).__init__()
self.linear = torch.nn.Linear(10, 1)
def forward(self, x):
x = self.linear(x)
return x
model = MyModel()
input_tensor = torch.randn((1, 10))
output_tensor = model(input_tensor)
output_numpy = output_tensor.detach().numpy()
在上述代码中,我们首先定义了一个自定义的神经网络模型MyModel,然后使用随机生成的输入张量input_tensor进行模型的前向传播,得到输出张量output_tensor。最后,我们使用output_tensor.detach().numpy()函数将输出张量转换为numpy数组。
原文地址: https://www.cveoy.top/t/topic/bKTX 著作权归作者所有。请勿转载和采集!