机器学习中精确率(precision)、召回率(recall)和准确率(accuracy)的理解

注:网上很多讲解都瞎讲,把precision和accuracy概念混淆,误人子弟。

1.精确率(precision)

    就precision而言有很多版本,各种说法不一,有精确率也有正确率更有甚者把准确率也搞出来了实在受不了,反正咱们看英文precision。

    precision是表示预测为正样本中,被实际为正样本的比例。可以看出precision是考虑的正样本被预测正确的比例.根据图1-1可得其计算公式为:P = TP / (TP + FP)

2. 召回率(recall)

    召回率是表示实际为正样本中,预测为正样本的比例。可以看出,召回率考虑的是正样本的召回的比例.根据图1-1可得其计算公式为:P = TP / (TP + FN)

3.准确率(accuracy)

    准确率表示所有的预测样本中,预测正确的比例.根据图1-1可得其计算公式为:A = (TP + TN) / (TP + FN + FP + TN)

总结:精确率(accuracy)和召回率(recall)计算公式的分子都是TP也就是正样本被预测为正样本的数量,可知其为正样本的精确率和正样本的召回率.而准确率(accuracy)主要表征的是整体预测正确的比例.

 

                                                          

 图1-1

图1-1参数描述:TP(True Positive)表示实际为正样本被预测为正样本的数量;FN(False Negative)表示实际为正样本却被预测为负样本的数量;FP(False Positive)表示实际为负样本却被预测为正样本的数量;TN(True Negative)表示实际为负样本预测也为负样本的数量。可以得出(TP + FN)是全部实际的正样本数,而(TP + FP)是所有预测为正样本的数量。

你可能感兴趣的:(机器学习中精确率(precision)、召回率(recall)和准确率(accuracy)的理解)