原因:
报错 XXX is not callable时,是因为代码调用了一个不能被调用的变量或对象。
类型一:
变量名和函数名具有冲突现象。
方法:找出冲突的名字并改名
类型二:
看代码
x= s
if x.shape ==(7,4):
x = np.expand_dims(np.transpose(x,(1,0)),axis= 2)
# x = torch.tensor(x)
else:
print("x.shape: (%s,%s) not matching GRU" % x.shape)
x1,h0 = AC.gru(x) # x1.shape= (4,7,1)
x1 = torch.transpose(torch.squeeze(x1),0,1)
print("x1.shape:(%s,%s)" %x1.shape)
原因:x是numpy数组,在调用torch.GRU的时候没有用torch.Tensor.所以产生如上报错。
解决方法:x = torch.tensor(x)
即可
TypeError: linear(): argument ‘input’ (position 1) must be Tensor, not tuple
torch.Tensor()是一个class
torch.tensor()是一个function