呆呆象呆呆的所有博客目录
Tensorflow,Pytorch 出现 ‘Tensor‘ object is not callable解决办法
主要可能的原因:
出现问题的原因1:
可能是在你想调取张量的属性的时候,而写成了函数形式
# 原因1对应的代码 import torch tensor = torch.zeros((3,3)) print(tensor.shape) tensor()
出现问题的原因2:
可能是你想要索引的时候用的是小括号
# 原因2对应的代码 import torch tensor = torch.zeros((3,3)) print(tensor.shape) tensor(1)
出现问题的原因3:
可能是你使用了python的保留关键字
(尤其是input
,在调试网络的时候很多的网络forward里面都是设置的input作为输入矩阵,当你之后想要使用input()
函数来暂停获取网络的中间变量的时候,其实这个时候关键字已经被覆盖掉了,input现在变成了一个不可以被call的tensor变量不再是函数了)
import torch input = torch.zeros((3,3)) print(input.shape) # 这个时候想要再使用input()函数就会出现问题 因为input已经不是函数了 input()
解决方案
把报错地方进行检查,看是不是tensor后面使用了括号的调用形式,括号去掉
参考文献
Tensorflow 出现 ‘Tensor‘ object is not callable解决办法_长沙理工大学魏宝航-CSDN博客
pytroch中’Tensor’ object is not callable的一种可能原因_york1996的博客-CSDN博客