Keras 简明教程
Keras - Model Evaluation and Model Prediction
本章介绍 Keras 中的模型评估和模型预测。
让我们从了解模型评估开始。
Model Evaluation
评估是模型开发过程中的一个过程,用于检查模型是否最适合给定的问题和对应数据。Keras 模型提供了一个函数,evaluate,它对模型进行评估。它有三个主要参数:
-
Test data
-
Test data label
-
verbose - true 或 false
让我们评估在上一章中使用测试数据创建的模型。
score = model.evaluate(x_test, y_test, verbose = 0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])
执行上述代码将输出以下信息。
0
测试准确率为 98.28%。我们创建了一个最佳模型来识别手写数字。从积极的一面来说,我们仍然可以改善我们的模型。
Model Prediction
Prediction 是最后一步,也是我们对模型生成的预期结果。Keras 提供了一个方法,predict,以获取训练模型的预测。predict 方法的特征如下:
predict(
x,
batch_size = None,
verbose = 0,
steps = None,
callbacks = None,
max_queue_size = 10,
workers = 1,
use_multiprocessing = False
)
此处,除了第一个参数(引用未知输入数据)以外,所有参数都是可选的。应该保持形状以获得正确的预测。
让我们使用以下代码对在上一章中创建的 MPL 模型进行预测 −
pred = model.predict(x_test)
pred = np.argmax(pred, axis = 1)[:5]
label = np.argmax(y_test,axis = 1)[:5]
print(pred)
print(label)
在此,
-
Line 1 使用测试数据调用 predict 函数。
-
Line 2 获取前五个预测
-
Line 3 获取测试数据的头五个标签。
-
Line 5 - 6 打印预测和实际标签。
上述应用程序的输出如下 −
[7 2 1 0 4]
[7 2 1 0 4]
这两个数组的输出是相同的,这表明我们的模型正确预测了前五个图像。