【发布时间】:2020-08-02 13:05:34
【问题描述】:
当我在本地从google's intro to tensorflow 运行beginner.ipynb 时,执行中断在
predictions = model(x_train[:1]).numpy()
出现以下错误:
AttributeError Traceback (most recent call last)
<ipython-input-15-6d3178b039b4> in <module>
----> 1 predictions = model(x_train[:1]).numpy()
2 # print( type( predictions ) )
3 # predictions = tf.convert_to_tensor( model(x_train[:1]) )
4 predictions
5
C:\ProgramData\Anaconda3\lib\site-packages\tensorflow\python\keras\engine\base_layer.py in __call__(self, inputs, *args, **kwargs)
590 else:
591 # Eager execution on data tensors.
--> 592 outputs = self.call(inputs, *args, **kwargs)
593 self._handle_activity_regularization(inputs, outputs)
594 return outputs
C:\ProgramData\Anaconda3\lib\site-packages\tensorflow\python\keras\engine\sequential.py in call(self, inputs, training, mask)
228 def call(self, inputs, training=None, mask=None):
229 if self._is_graph_network:
--> 230 return super(Sequential, self).call(inputs, training=training, mask=mask)
231
232 outputs, _ = self._call_and_compute_mask(
C:\ProgramData\Anaconda3\lib\site-packages\tensorflow\python\keras\engine\network.py in call(self, inputs, training, mask)
813 outputs, _ = self._run_internal_graph(inputs,
814 training=training,
--> 815 mask=masks)
816 return outputs
817
C:\ProgramData\Anaconda3\lib\site-packages\tensorflow\python\keras\engine\network.py in _run_internal_graph(self, inputs, training, mask)
1000 output_tensors = layer(computed_tensor, **kwargs)
1001 else:
-> 1002 output_tensors = layer.call(computed_tensor, **kwargs)
1003 if hasattr(layer, 'compute_mask'):
1004 output_masks = layer.compute_mask(computed_tensor,
C:\ProgramData\Anaconda3\lib\site-packages\tensorflow\python\keras\layers\core.py in call(self, inputs)
553 array_ops.shape(inputs)[0], -1))
554 if not context.executing_eagerly():
--> 555 outputs.set_shape(self.compute_output_shape(inputs.get_shape()))
556 return outputs
557
AttributeError: 'numpy.ndarray' object has no attribute 'get_shape'
我发现了一个类似的问题 here,但无法应用建议的修复。
我应该如何使代码工作?为什么相同的代码在 collab 上运行良好,但在我的本地机器上却失败了?
【问题讨论】:
-
尽可能更新您的完整代码和错误跟踪
-
@AzyCrw4282,完成!
-
该错误消息非常清楚地表明您没有运行
predictions = model(x_train[:1]).numpy()。你做了很多改变,我们看不到全部的范围。 -
@user2357112-supports-Monica,抱歉,忘记更新了。我只是在尝试各种改变。但它是原来的代码不起作用。
-
显然问题在于使用了错误版本的 tensorflow。确保你安装了 tensorflow2。
标签: python python-3.x numpy google-colaboratory numpy-ndarray