【发布时间】:2019-09-17 19:01:10
【问题描述】:
我正在使用Keras 框架构建一个堆叠的LSTM 模型,如下所示:
model.add(layers.LSTM(units=32,
batch_input_shape=(1, 100, 64),
stateful=True,
return_sequences=True))
model.add(layers.LSTM(units=32, stateful=True, return_sequences=True))
model.add(layers.LSTM(units=32, stateful=True, return_sequences=False))
model.add(layers.Dense(1))
model.compile(loss='mean_squared_error', optimizer='adam')
model.fit(train_dataset,
train_labels,
epochs=1,
validation_split = 0.2,
verbose=1,
batch_size=1,
shuffle=False)
知道mode.fit、model.predict 和model.evaluate 的默认batch_size 是32,模型迫使我将此默认batch_size 更改为与batch_size 中使用的batch_input_shape (batch_size, time_steps, input_dims) 相同的值。
我的问题是:
- 将
batch_size传递到batch_input_shape或进入model.fit? - 我可以使用
batch_size进行训练吗,比如说 10,然后在单个批次上进行评估(而不是 10 个批次)如果我将batch_size传递到LSTM层到batch_input_shape?
【问题讨论】:
标签: python tensorflow keras keras-layer