在测试 MLP 和 LSTM 时更改 RMSE 值

Changing RMSE values while testing an MLP and a LSTM

我的 MLP 和 LSTM 模型中的 RMSE 值在同一样本和模型上反复测试时似乎发生了变化。我发现这个 question,其中添加随机状态解决了问题。我也可以做类似的事情吗?

在这里分享我的 MLP 代码:

model = Sequential()
model.add(Dense(5, input_dim = 10))
model.add(Dense(12, activation='tanh'))
model.add(Dense(1))
opt = optimizers.Adam(learning_rate=0.01)
model.compile(optimizer=opt , loss='mean_squared_error')
model.fit(x, y, epochs=250, batch_size = 10 ,verbose=2)
Predicted_values = model.predict(test_x)
RMSE = sqrt(mean_squared_error(test_y,Predicted_values))
print(RMSE)

您应该修复 numpy 和 tensorflow 后端的种子

from numpy.random import seed
seed(42)

from tensorflow import set_random_seed
set_random_seed(42)

有关原因的更多信息,请查看 machinelearningmastery 博客this article