Keras 将简单的训练/测试转换为批量训练/测试
我使用递归神经网络生成一个分类模型。以下是一个使用Keras 将简单的训练/测试转换为批量训练/测试,keras,Keras,我使用递归神经网络生成一个分类模型。以下是一个使用keras的简单RNN模型(特此提供): 这是模型的摘要: Layer (type) Output Shape Param # ================================================================= lstm_1 (LSTM) (1, 16) 1152
keras
的简单RNN模型(特此提供):
这是模型的摘要:
Layer (type) Output Shape Param #
=================================================================
lstm_1 (LSTM) (1, 16) 1152
_________________________________________________________________
dense_1 (Dense) (1, 1) 17
=================================================================
Total params: 1,169
Trainable params: 1,169
Non-trainable params: 0
_________________________________________________________________
我可以修改此代码来训练一批样本,而不是一次训练一个样本吗?如果是,怎么做?如有任何建议,我们将不胜感激
谢谢。您在这里声明:
model.add(LSTM(16,
batch_input_shape=(1, 1, 1),
activation='tanh',
recurrent_activation='tanh',
kernel_initializer='he_uniform',
bias_initializer='he_uniform',
# dropout=0.1,
# recurrent_dropout=0.1,
stateful=True,
return_sequences=False,
)
)
批处理的大小应为:(1,1,1)仅表示1个示例,带有1个时间戳,每个时间戳都是标量。如果您想要一个以上的培训示例,则应执行以下操作:
batch_input_shape=(None,1,1)
或者,将“无”更改为批次中的示例数。(无表示您可以根据需要插入多少个示例)您能告诉我们模型是如何实现的吗?更好的是,你能给我们展示model.summary()?@DvirSamuel Right!我忘了加那个。Post是更新的。我猜在这种情况下,
模型中的内部循环。批处理上的训练也必须修改。是的,您应该确保输入与lstm声明中所述的形状相同:)
batch_input_shape=(None,1,1)