【发布时间】:2017-10-21 10:50:37
【问题描述】:
我目前正在尝试在 Keras 中实现多输入模型。输入由多个批次组成,每个批次都包含不同的样本,但我得到一个“不同的样本”错误。我的实现如下所示:
模型站点如下所示:
for s in range(NUM_STREAMS):
inp.append(Input(shape=(16,8)))
...
发生错误的站点:
history = model.train_on_batch(
x=[x for x in X_batch],
y=[y for y in y_batch]
)
我得到的错误是:
ValueError: All input arrays (x) should have the same number of
samples. Got array shapes: [(6, 16, 8), (7, 16, 8), (6, 16, 8), (6, 16, 8)]
抽象模型架构如下:
【问题讨论】:
-
您应该提供足够的详细信息,例如模型结构。数据和标签等的形式是什么。但是,我认为 Keras 不会成为此类网络的一个很好的工具。您可以尝试具有动态计算图的 PyTorch。我并不是说这在 Keras 中是不可能的,但它可能相对困难。
-
@DaveTheAI 你是怎么解决这个问题的?
-
嘿@N.IT,1.5 年前,但我记得我可以附加随机填充值并再次忽略输出。 (即,如果输入是 (6, 6, 7, 6),我会附加一些随机输入,例如 (7, 7, 7, 7) 并忽略最后附加的项目)
标签: python tensorflow deep-learning batch-processing keras