0

我不明白我的 rMSE 实现有什么问题。我正在使用 MSE 作为损失函数和度量标准来训练我的模型。训练后,我使用evaluate函数在测试集中评估我的模型,然后使用predict函数获取值。然后我应用 rMSE。我的代码是:

obs= model.compile(loss='mse', optimizer=keras.optimizers.Adam(lr=0.001),metrics=['mse'])
.......
test_eval = model.evaluate(X_test, Y_test, verbose=1)
print('Test loss (MSE):', test_eval[0])
predicted= model.predict(X_test, verbose=0)
rMSE = np.sqrt(pow(np.mean(predited- Y_test), 2))
print(rMSE)

我得到了这个结果:

Test loss (MSE): 12.0075311661
2.90274470011

但是 12.0075311661 的平方不是 2.90274470011。那么,有什么问题呢?

4

1 回答 1

3

在找到平均值之前对差异进行元素平方。您想找到平方差的平均值,而不是平均距离的平方。

于 2018-04-26T22:51:14.507 回答