gpt4 book ai didi

python - 如何使用 Keras 使用批量输入进行训练,但使用 LSTM 使用单个示例进行预测?

转载 作者:行者123 更新时间:2023-11-28 17:17:40 36 4
gpt4 key购买 nike

我有一个我用来训练的训练数据列表。然而,当我预测时,预测将在线完成,一次只有一个例子。

如果我用如下输入声明我的模型

model = Sequential()
model.add(Dense(64, batch_input_shape=(100, 5, 1), activation='tanh'))
model.add(LSTM(32, stateful=True))
model.add(Dense(1, activation='linear'))
optimizer = SGD(lr=0.0005)
model.compile(loss='mean_squared_error', optimizer=optimizer)

当我用形状 (1, 5, 1) 的单个示例进行预测时,它给出了以下错误。

ValueError: Shape mismatch: x has 100 rows but z has 1 rows

我想出的解决方案是使用 (1,5,1) 的 batch_input_shape 迭代训练我的模型,并为每个示例调用 fit。这非常慢。

有没有办法在大批量上进行训练,而是使用 LSTM 通过单个示例进行预测?

感谢您的帮助。

最佳答案

尝试这样的事情:

model2 = Sequential()
model2.add(Dense(64, batch_input_shape=(1, 5, 1), activation='tanh'))
model2.add(LSTM(32, stateful=True))
model2.add(Dense(1, activation='linear'))
optimizer2 = SGD(lr=0.0005)
model2.compile(loss='mean_squared_error', optimizer=optimizer)

for nb, layer in enumerate(model.layers):
model2.layers[nb].set_weights(layer.get_weights())

您只是将权重从一个模型重写到另一个模型。

关于python - 如何使用 Keras 使用批量输入进行训练,但使用 LSTM 使用单个示例进行预测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43359252/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com