ValueError: Layer add_2 was called with an input that isn't a symbolic tensor. Received type: <class 'numpy.ndarray'>. Full input: [array([[0.31075068], [0.30889946], [0.31210937], ..., [0.62409986], [0.62394701], [0.6311481 ]]), <tf.Tensor 'activation_5/Sigmoid:0' shape=(?, 1) dtype=float32>]. All inputs to the layer should be tensors.
时间: 2024-03-05 13:51:04 浏览: 143
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
5星 · 资源好评率100%
这个错误提示表明,在Layer "add_2"中,输入的类型不是符号张量,而是NumPy数组。
这可能是因为在调用Layer "add_2"时,您的代码中可能将NumPy数组作为输入传递给了该层。这是不允许的,因为所有输入都应该是符号张量。
一种解决方法是将NumPy数组转换为符号张量。您可以尝试使用`tf.convert_to_tensor()`函数将NumPy数组转换为TensorFlow符号张量,如下所示:
```
import tensorflow as tf
output_data = tf.convert_to_tensor(trainY) + res
```
这样可以将NumPy数组转换为符号张量,然后与res相加,得到最终的输出张量。
另外,您还需要检查您的代码中是否有其他地方也出现了类似的错误,如果有,也需要使用`tf.convert_to_tensor()`函数将NumPy数组转换为符号张量。
阅读全文