【编程55--代码share&debug14】Tensorflow,Pytorch 出现 ‘Tensor‘ object is not callable解决办法

呆呆象呆呆的所有博客目录

【编程55--代码share&debug14】Tensorflow,Pytorch 出现 ‘Tensor‘ object is not callable解决办法

Tensorflow,Pytorch 出现 ‘Tensor‘ object is not callable解决办法

主要可能的原因:

出现问题的原因1:

可能是在你想调取张量的属性的时候,而写成了函数形式

# 原因1对应的代码
import torch
tensor = torch.zeros((3,3))
print(tensor.shape)
tensor()

【编程55--代码share&debug14】Tensorflow,Pytorch 出现 ‘Tensor‘ object is not callable解决办法

出现问题的原因2:

可能是你想要索引的时候用的是小括号

# 原因2对应的代码
import torch
tensor = torch.zeros((3,3))
print(tensor.shape)
tensor(1)

【编程55--代码share&debug14】Tensorflow,Pytorch 出现 ‘Tensor‘ object is not callable解决办法

出现问题的原因3:

可能是你使用了python的保留关键字(尤其是input,在调试网络的时候很多的网络forward里面都是设置的input作为输入矩阵,当你之后想要使用input()函数来暂停获取网络的中间变量的时候,其实这个时候关键字已经被覆盖掉了,input现在变成了一个不可以被call的tensor变量不再是函数了)

import torch
input = torch.zeros((3,3))
print(input.shape)
# 这个时候想要再使用input()函数就会出现问题  因为input已经不是函数了
input()

【编程55--代码share&debug14】Tensorflow,Pytorch 出现 ‘Tensor‘ object is not callable解决办法

解决方案

把报错地方进行检查,看是不是tensor后面使用了括号的调用形式,括号去掉

参考文献

Tensorflow 出现 ‘Tensor‘ object is not callable解决办法_长沙理工大学魏宝航-CSDN博客

pytroch中’Tensor’ object is not callable的一种可能原因_york1996的博客-CSDN博客

上一篇:Future、ExecutorService 源码解析


下一篇:线程详解