我正在尝试创建一个AI,以使用Tensorflow和TFLearn预测FRC比赛的结果。
这是相关的
x = np.load("FRCPrediction/matchData.npz")["x"]
y = np.load("FRCPrediction/matchData.npz")["y"]
def buildModel():
net = tflearn.input_data([10, 0])
net = tflearn.fully_connected(net, 64)
net = tflearn.dropout(net, 0.5)
net = tflearn.fully_connected(net, 10, activation='softmax')
net = tflearn.regression(net, optimizer='adam', loss='categorical_crossentropy')
model = tflearn.DNN(net)
return model
model = buildModel()
BATCHSIZE = 128
model.fit(x, y, batch_size = BATCHSIZE)
它因错误而失败:
Training samples: 36024
Validation samples: 0
--
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-12-ce7cbb8e618a> in <module>()
----> 1 model.fit(x, y, batch_size = BATCHSIZE)
4 frames
/usr/local/lib/python3.6/dist-packages/tensorflow/python/client/session.py in _run(self, handle, fetches, feed_dict, options, run_metadata)
1126 'which has shape %r' %
1127 (np_val.shape, subfeed_t.name,
-> 1128 str(subfeed_t.get_shape())))
1129 if not self.graph.is_feedable(subfeed_t):
1130 raise ValueError('Tensor %s may not be fed.' % subfeed_t)
ValueError: Cannot feed value of shape (128, 36) for Tensor 'InputData/X:0', which has shape '(?, 10, 0)
非常感谢您的帮助。谢谢。
答案 0 :(得分:1)
此错误表示您的X尺寸为(some_length, 36)
,无法与尺寸为(10, 0)
的输入层配合。我怀疑您的第二维等于0,形状应至少为1。
要解决此问题,您应该执行以下操作:
net = tflearn.input_data(shape=[None, 36])
None
获取动态尺寸,该尺寸将与所有BATCHSIZE
匹配,无论是128、1000还是2000