keras layers input size中问号(?)的含义

The meaning of question mark (?) in keras layers input size

我正在使用 python2 和 keras、tensorflow。

x = Input((32,), name="input1")

我认为 x 的形状是 (32,) 但 print(x) 的结果是 'shape(?,32)'。 'shape(?,32)'的意思是什么? 和 '?'是什么意思,32 是什么意思..?

当您使用 Input((32,), name="input1") 定义游览输入时,您是在告诉 Keras 每个输入都是一维的,大小为 32。但是您可能会在 training/predicting 期间发送多个输入。例如,如果您发送 10 个样本,每个样本的长度为 32,您实际上将发送一个形状为 (10, 32) 的张量。

由于网络的拓扑结构不依赖于您发送的样本数量,因此形状可能会有所不同并显示为 (?,32),其中 ? 是样本数量。