简单理解精确率(Precision),召回率(Recall),准确率(Accuracy),TP,TN,FP,FN

True Positive(TP),True Negative(TN),False Positive(FP),False Negative(FN)
这四个词语,左半边表示的是模型的预测对了没(分为True, False),右半边表示的是模型预测的结果(分为Positive, Negative)。因此有:

  • TP:模型预测对了 ( T ) (T) (T),确实是阳性 ( P ) (P) (P),即所谓的"真阳性"
  • TN:模型预测对了 ( T ) (T) (T),确实是阴性 ( N ) (N) (N),即所谓的"真阴性"
  • FP:模型预测错了 ( F ) (F) (F),预测为阳性 ( P ) (P) (P),因此实际为阴性,即所谓的"假阳性"
  • FN:模型预测错了 ( F ) (F) (F),预测为阴性 ( N ) (N) (N),因此实际为阳性,即所谓的"假阴性"

精确率: 模型所给出的所有阳性预测 ( P ) (P) (P)中,到底有多少实际上是真的 ( T P ) (TP) (TP),即: P r e c i s i o n = T P T P + F P Precision = \frac{TP}{TP+FP} Precision=TP+FPTP 精确率更侧重于衡量模型的阳性预测是否可靠(不能错杀)。容易发现,假阳性FP越高,精确率就越低。


召回率: 所有实际的阳性样本中(TP+FN),有多少被模型给正确发现了(TP),即: R e c a l l = T P T P + F N Recall = \frac{TP}{TP+FN} Recall=TP+FNTP 召回率更侧重于衡量实际的阳性样本是否被遗漏(不能漏杀)。容易发现,假阴性FN越高,召回率就越低。


准确率: 模型预测正确的样本(T)占总样本的比例,即: A c c u r a c y = T P + T N T P + T N + F P + F N Accuracy = \frac{TP + TN}{TP+TN+FP+FN} Accuracy=TP+TN+FP+FNTP+TN 准确率常被用于衡量一个机器学习模型的综合性能。不过,由于实际应用中阴阳样本的比例大概率是不均衡的,阳性样本一般会很少,模型只要简单的将所有样本预测为阴性就可以获得一个很高的准确率。为了解决这一问题,才出现了更侧重于阳性本身的精确率,召回率这两个指标。

你可能感兴趣的:(杂文,划水)