数据基数不明确:具有多个时间序列和向量输入的Keras模型预测

ujv3wf0j  于 2022-11-13  发布在  其他
关注(0)|答案(1)|浏览(146)

我有一个接受两个输入的模型,一个是 * 向量序列 *,另一个是简单的 * 向量 *,我的输出也是简单的 * 向量 *。例如x1.shape: (50000,50,2) x2.shape: (50000,2) y.shape: (50000,2)
我已经使用mode.fitmodel.evaluate成功地训练和评估了我的模型,没有出现如下错误:

model.fit(
    x=[x1[:-validationLength], x2[:-validationLength]],
    y=y[:-validationLength],
    epochs=25,
    batch_size=256,
    validation_split=0.2,
)

model.evaluate(x=[x1[-validationLength:], x2[-validationLength:]],
    y=y[-validationLength:],
    batch_size=2)

2147/2147 [==============================] - 18s 9ms/step - loss: 0.0560 - accuracy: 0.8498

但当我尝试使用我的模型时:

output = model.predict([x1[1000], x2[1000]])

将弹出以下错误:

ValueError: Data cardinality is ambiguous:
  x sizes: 50, 2
Make sure all arrays contain the same number of samples.

IDK这怎么可能!
下面是该模型的示意图:

如有任何建议,我们将不胜感激!

xlpyo6sf

xlpyo6sf1#

也许您缺少批维,而您的第一个维被解释为批维,请尝试:

output = model.predict([x1[None, 1000], x2[None, 1000]])

相关问题