【TensorFlow系列教程第六章】TensorFlow模型评估
准确率(Accuracy)
在TensorFlow框架下,准确率(Accuracy)是评估模型预测结果时极为常用的一项指标。接下来,本教程将详细介绍如何运用TensorFlow来计算模型的准确率。
准备工作
首先,我们要假定已经成功训练好了一个模型,并且也准备好了用于评估该模型的测试数据。在此基础上,方可开展准确率的计算工作。
计算步骤
- 导入必要的库:
import tensorflow as tf
通过导入tf
库,为后续的操作提供所需的函数和类等资源。
- 定义计算图:
# 假设模型的预测结果存储在变量pred中,测试标签存储在变量labels中
correct_prediction = tf.equal(tf.argmax(pred, 1), tf.argmax(labels, 1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
在上述代码中,先是定义了correct_prediction
变量,其原理是通过比较模型预测出来的类别和实际的类别是否一致,以此来判断预测是否正确。随后,利用tf.reduce_mean
函数对正确预测的比例进行计算,进而得到准确率这一指标。
- 创建会话并运行计算图:
with tf.Session() as sess:
# 加载模型参数
saver = tf.train.Saver()
saver.restore(sess, "model.ckpt")
# 计算准确率
test_accuracy = sess