Machine learning 如何计算keras中的误差百分比

Machine learning 如何计算keras中的误差百分比,machine-learning,tensorflow,keras,Machine Learning,Tensorflow,Keras,我使用keras和机器学习模型来预测我的数据,就像这样 K.clear_session() model = Sequential() model.add(Dense(3, input_dim=1, activation='relu')) model.add(Dense(1)) model.compile(loss='mean_squared_error', optimizer='adam') model.fit(X_train, y_train, epochs=500, b

我使用keras和机器学习模型来预测我的数据,就像这样

K.clear_session()

model = Sequential()
model.add(Dense(3, input_dim=1, activation='relu'))
model.add(Dense(1))
model.compile(loss='mean_squared_error', optimizer='adam')
model.fit(X_train, y_train, epochs=500,
          batch_size=2, verbose=1,
          )
scores = model.evaluate(X_validation, Y_validation, verbose=1)
print("Accuracy: %.2f%%" % (scores[1]*100))

model.fit后的输出显示损耗,如损耗:0.0382。我不知道损失是什么意思:0.0382。列车和测试数据之间的误差百分比是多少?如何计算?

您使用了
均方误差
(mse)损失函数

MSE评估估计器(即,将数据样本映射到从中采样数据的总体参数的数学函数)或预测器(即,将任意输入映射到某个随机变量的值样本的函数)的质量

MSE对于一个好的模型来说必须很低。模型的MSE越低越好

在您的培训中,您损失了
0.0382
。这很好

Keras
中有另一个损失函数,名为
mean\u absolute\u percentage\u error
。如果您想知道模型在训练和测试中的百分比误差,可以使用
mean_absolute_percentage_error
作为损失函数编译模型

如果您想在编译和训练后根据模型的精度对模型进行评估,可以使用
evaluate()
这样的函数

K.clear_session()

model = Sequential()
model.add(Dense(3, input_dim=1, activation='relu'))
model.add(Dense(1))
model.compile(loss='mean_squared_error', optimizer='adam')
model.fit(X_train, y_train, epochs=500,
          batch_size=2, verbose=1,
          )
scores = model.evaluate(X_validation, Y_validation, verbose=1)
print("Accuracy: %.2f%%" % (scores[1]*100))

你能详细说明一下你所说的百分比是什么意思吗;这是在不同的环境中(
scikit learn
),但您的问题是在一个非常基本的层面上,独立于任何特定的包和实现i use model.compile(loss='mean\u absolute\u percentage\u error',optimizer='adam')。为什么输出是Epoch 200/200 39/39[====================================]-0s-损耗:74374.4342是否超过100%?如何使用?我已经编辑了答案。我认为找到模型的准确性是你所要寻找的。