Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ValueError:检查输入时出错:预期密集_1_输入具有形状(8),但获得具有形状(1,)的数组_Python_Tensorflow_Keras - Fatal编程技术网

Python ValueError:检查输入时出错:预期密集_1_输入具有形状(8),但获得具有形状(1,)的数组

Python ValueError:检查输入时出错:预期密集_1_输入具有形状(8),但获得具有形状(1,)的数组,python,tensorflow,keras,Python,Tensorflow,Keras,我试图训练一个神经网络来弹起一个球,但我在预测球的运动时遇到了一个问题,获取错误value错误:检查输入时出错:期望密集输入具有形状(8),但获取具有形状(1,)的数组 我的代码: 调试打印语句将打印出来 [[0.025568 0.131659 0.755605 ... 0.414219 0.094692 0.678865] ... [0.08742 0.08742 0.5 ... 0.250432 0.699359 0.179118]] 这有点让人困惑,因为我注意到打印出来的数

我试图训练一个神经网络来弹起一个球,但我在预测球的运动时遇到了一个问题,获取错误
value错误:检查输入时出错:期望密集输入具有形状(8),但获取具有形状(1,)的数组

我的代码:

调试打印语句将打印出来

[[0.025568 0.131659 0.755605 ... 0.414219 0.094692 0.678865]
...
[0.08742  0.08742  0.5      ... 0.250432 0.699359 0.179118]]
这有点让人困惑,因为我注意到打印出来的数组没有逗号,而我制作的数组有逗号。这可能与此有关,但我不知道是什么原因。 感谢您的帮助

堆栈跟踪:

Traceback (most recent call last):
  File "/Users/grimtin10/Documents/Python Projects/BallPhysics/BallPhysics.py", line 78, in <module>
    main()
  File "/Users/grimtin10/Documents/Python Projects/BallPhysics/BallPhysics.py", line 63, in main
    out = model.predict(inp)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/training.py", line 1149, in predict
    x, _, _ = self._standardize_user_data(x)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/training.py", line 751, in _standardize_user_data
    exception_prefix='input')
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/training_utils.py", line 138, in standardize_input_data
    str(data_shape))
ValueError: Error when checking input: expected dense_1_input to have shape (8,) but got array with shape (1,)
回溯(最近一次呼叫最后一次):
文件“/Users/grimtin10/Documents/Python Projects/BallPhysics/BallPhysics.py”,第78行,在
main()
文件“/Users/grimtin10/Documents/Python Projects/BallPhysics/BallPhysics.py”,第63行,在main中
out=模型预测(inp)
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/training.py”,第1149行,在predict中
x、 标准化用户数据(x)
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/keras/engine/training.py”,第751行,在用户数据中
异常(前缀为“输入”)
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/keras/engine/training\u utils.py”,第138行,标准化输入数据
str(数据形状))
ValueError:检查输入时出错:预期密集_1_输入具有形状(8),但获得具有形状(1,)的数组

好吧,我想出来了。 事实证明,NN需要批量输入,导致单个数组无法工作。我对tf和keras不太熟悉,所以这就是问题所在。
使用
np。重塑(inp,(1,8))
修复了它。

我不知道问题出在哪里,但不是逗号。Numpy打印不带逗号的数组,可能是为了节省空间。我觉得很烦人。啊,好吧,很高兴知道这不是问题。事实上,你必须打印报表。第一个print语句是printing
x\u train
,第二个是printing
inp
。后者只是8个元素的列表。似乎model.predict正在抱怨这个输入。我对这个包裹不太熟悉。这是传递给model.predict的正确参数吗?
Traceback (most recent call last):
  File "/Users/grimtin10/Documents/Python Projects/BallPhysics/BallPhysics.py", line 78, in <module>
    main()
  File "/Users/grimtin10/Documents/Python Projects/BallPhysics/BallPhysics.py", line 63, in main
    out = model.predict(inp)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/training.py", line 1149, in predict
    x, _, _ = self._standardize_user_data(x)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/training.py", line 751, in _standardize_user_data
    exception_prefix='input')
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/training_utils.py", line 138, in standardize_input_data
    str(data_shape))
ValueError: Error when checking input: expected dense_1_input to have shape (8,) but got array with shape (1,)