Python如何手动计算正确率

在机器学习领域,正确率是评估模型性能的重要指标之一,它表示模型预测结果中正确的比例。通常在测试集上计算正确率来衡量模型的准确性。下面将介绍如何使用Python手动计算正确率,并通过代码示例演示。

正确率计算公式

正确率的计算公式为:

[ Accuracy = \frac{TP + TN}{TP + TN + FP + FN} ]

其中,TP表示True Positive,即模型将正类别样本正确地预测为正类别;TN表示True Negative,即模型将负类别样本正确地预测为负类别;FP表示False Positive,即模型将负类别样本错误地预测为正类别;FN表示False Negative,即模型将正类别样本错误地预测为负类别。

代码示例

下面是一个简单的代码示例,演示如何手动计算正确率:

# 导入必要的库
import numpy as np

# 生成模拟数据
y_true = np.array([1, 0, 1, 1, 0, 1, 0, 0, 1, 1])
y_pred = np.array([1, 0, 1, 0, 1, 1, 0, 0, 1, 0])

# 计算TP, TN, FP, FN
TP = np.sum((y_true == 1) & (y_pred == 1))
TN = np.sum((y_true == 0) & (y_pred == 0))
FP = np.sum((y_true == 0) & (y_pred == 1))
FN = np.sum((y_true == 1) & (y_pred == 0))

# 计算正确率
accuracy = (TP + TN) / (TP + TN + FP + FN)
print("Accuracy:", accuracy)

在上面的代码示例中,我们首先生成了模拟的真实标签y_true和预测标签y_pred,然后根据公式计算了TP、TN、FP和FN,最后计算了正确率并打印输出。

饼状图示例

下面使用mermaid语法中的pie标识出正确率的饼状图:

pie
    title Correct Rate
    "TP" : 3
    "TN" : 2
    "FP" : 1
    "FN" : 4

饼状图展示了TP、TN、FP、FN的分布情况,有助于直观理解模型的预测效果。

关系图示例

最后,使用mermaid语法中的erDiagram标识出正确率计算的关系图:

erDiagram
    TP ||--|| y_true : "True Positive"
    TN ||--|| y_true : "True Negative"
    FP ||--|| y_true : "False Positive"
    FN ||--|| y_true : "False Negative"

关系图展示了TP、TN、FP、FN与真实标签y_true之间的关系,有助于理解正确率的计算过程。

结论

通过上面的介绍和代码示例,我们学习了如何手动计算正确率,并使用饼状图和关系图展示了正确率的计算过程。正确率是评估模型性能的重要指标之一,我们可以通过手动计算来更好地理解模型的预测效果和性能。希望本文能对你有所帮助!