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 Keras错误。当最后一批样品未达到批次尺寸时,重塑层_Python_Tensorflow_Keras - Fatal编程技术网

Python Keras错误。当最后一批样品未达到批次尺寸时,重塑层

Python Keras错误。当最后一批样品未达到批次尺寸时,重塑层,python,tensorflow,keras,Python,Tensorflow,Keras,各位网友好, 我是个新手,我制作了一个简单的tensorflow模型: model = tf.keras.models.Sequential() model.add(Input(batch_shape=(batch_size = 100, 50, 100, 12))) model.add(Conv2D(filters= 1, kernel_size = (1,1)) model.add(Reshape((50, 100))) model.add(LSTM(units=16)) mode

各位网友好,

我是个新手,我制作了一个简单的tensorflow模型:

model = tf.keras.models.Sequential()

model.add(Input(batch_shape=(batch_size = 100, 50, 100, 12)))

model.add(Conv2D(filters= 1, kernel_size = (1,1))

model.add(Reshape((50, 100)))

model.add(LSTM(units=16))

model.add(Dense(1))


model.compile(loss='mean_squared_error', optimizer = 'Adam')
我已经检查了模型摘要,维度似乎是合理的。 但是,当我运行完模型1个历元后,问题就出现了。原因是我在最后一批样品中少于100个,因为我的总样品量不是100的倍数。因此,
重塑
层会出现以下错误:

InvalidArgumentError:  Input to reshape is a tensor with 460000 values, but the requested shape has 500000
     [[node sequential_18/reshape_9/Reshape (defined at <ipython-input-48-fa829a07c08d>:26) ]] [Op:__inference_distributed_function_167420]
InvalidArgumentError:要重塑的输入是一个具有460000个值的张量,但请求的形状具有500000个值
[node sequential_18/重塑_9/重塑(定义于:26)][Op:_推理_分布函数_167420]
我已经通过将批次大小更改为总样本大小的一个因子,从技术上解决了这个错误。然而,我仍然想知道是否有一个更强大的解决方案可以允许
重塑
层接受可变的批量大小


非常感谢你的帮助

哦,没关系,我意识到如果我不在输入中指定批量大小,那也没关系。因此,在
input
层中使用
shape
,而不是
batch\u shape