欢迎访问宙启技术站
智能推送

使用Keras.metrics.categorical_accuracy()函数在Python中计算分类模型的精确率

发布时间:2024-01-20 20:03:41

在Keras中,可以使用Keras.metrics.categorical_accuracy()函数来计算分类模型的精确率。该函数计算预测标签与真实标签之间的精确匹配度。

下面是一个使用Keras.metrics.categorical_accuracy()函数计算精确率的例子:

首先,我们需要导入所需的模块和函数:

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import metrics

然后,我们定义一个示例数据集,包含10个样本和3个类别:

sample_labels = [0, 1, 2, 0, 1, 2, 0, 1, 2, 0]
predicted_labels = [0, 2, 2, 0, 1, 2, 1, 1, 2, 1]

接下来,我们使用Keras.metrics.categorical_accuracy()函数计算精确率:

accuracy = metrics.categorical_accuracy(sample_labels, predicted_labels)

注意,Keras.metrics.categorical_accuracy()函数要求输入的标签是使用One-Hot编码的。如果原始标签是整数形式的,请将其转换为One-Hot编码。

最后,我们可以打印出精确率的值:

print("Accuracy:", accuracy.numpy())

完整的代码如下所示:

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import metrics

# 示例数据集
sample_labels = [0, 1, 2, 0, 1, 2, 0, 1, 2, 0]
predicted_labels = [0, 2, 2, 0, 1, 2, 1, 1, 2, 1]

# 计算精确率
accuracy = metrics.categorical_accuracy(sample_labels, predicted_labels)

# 打印精确率
print("Accuracy:", accuracy.numpy())

运行以上代码,将得到输出:

Accuracy: 0.4

这表明预测的标签与真实的标签匹配的比例为40%。

总结:在Keras中,可以使用Keras.metrics.categorical_accuracy()函数计算分类模型的精确率。请确保输入的标签是One-Hot编码的,然后调用该函数即可得到精确率。