【发布时间】:2018-09-10 07:57:36
【问题描述】:
我有一个包含一批 32 个灰度图像的张量,每个图像的大小为 24x24。
张量是在使用 Keras 和 tensorflow 后端构建的 CNN 中的 Conv2D 层之后生成的。数据作为 numpy 数组提供给模型。
现在,我希望将输出张量转换为 numpy 数组,然后再转换回张量。
我参考了this page 并编写了这段似乎不起作用的简单代码
sess = tf.InteractiveSession()
ip = np.array(x.eval())
在这里,x 是我的张量,ip 是预期的 numpy 数组。这会抛出 InvalidArgumentError()。有什么办法可以摆脱未知 (?) 维度?
这是堆栈跟踪:
Message=InvalidArgumentError()
Source=c:\users\rangan\source\repos\fuzzycnn\fuzzycnn\fuzzyconv2d.py
StackTrace:
File "c:\users\rangan\source\repos\fuzzycnn\fuzzycnn\fuzzyconv2d.py", line 31, in call
ip = np.array(x.eval())
File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\keras\engine\base_layer.py", line 507, in __call__
inputs=to_list(inputs))
File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\keras\engine\sequential.py", line 185, in add
output_tensor = layer(self.outputs[0])
File "c:\users\rangan\source\repos\fuzzycnn\fuzzycnn\fuzzycnn.py", line 39, in baseline_model
model.add(F_Conv2D(5))
File "c:\users\rangan\source\repos\fuzzycnn\fuzzycnn\fuzzycnn.py", line 49, in <module>
model = baseline_model()
【问题讨论】:
-
请提供minimal reproducible example,包括我们可以运行的代码,用于演示问题、当前输出和预期输出。
-
另外,如果出现错误,请复制/粘贴整个错误跟踪,而不仅仅是错误类型。
标签: python arrays numpy tensorflow