首页 > 解决方案 > LSTM 的批量大小

问题描述

我一直在尝试建立一个 LSTM 模型,但我对 batch_size 有点困惑。我在 Tensorflow 中使用 Keras 模块。

我有50,000 个样本,每个样本有200 个时间步,每个时间步有三个特征。所以我将我的训练数据塑造为(50000, 200, 3).

我用四个 LSTM 层设置了我的模型,每个层有100 个单元。对于第一层,我将输入形状指定为(200, 3). 前三层有return_sequences=True,最后一层没有。然后我做一些softmax分类。

当我打电话model.fit时,batch_size='some_number'Tensorflow/Keras 是否负责为模型提供指定大小的批次?我是否必须提前以某种方式重塑我的数据?如果样本数不能被 整除会'some_number'怎样?

谢谢你的帮助!

标签: pythontensorflowkeraslstm

解决方案


如果您将数据作为numpy数组提供,model.fit()那么是的,Keras 将负责为模型提供您指定的批量大小。如果您的数据集大小不能被批次大小整除,Keras 将使最终批次更小且等于dataset_size mod batch_size.


推荐阅读