准确率(正确率):Accuracy
精确率(查准率):Precision
召回率(查全率):Recall
精确率:分母是预测到的正类,精确率的提出是让模型的现有预测结果尽可能不出错(宁愿漏检,也不能让现有的预测有错)
召回率:分母是原本的正类,召回率的提出是让模型预测到所有想被预测到的样本(就算多预测一些错的,也能接受)
以地震的预测为例,如果需要一个地震预测模型(某一天地震为正样本,不地震为负样本),预测接下来100天的地震发生情况。
假设已知第50和51天会发生地震,其余的1-49和51-100天不会发生地震,由于精确率和召回率不可兼得,所以面临的选择是提升其中一个率。
(1)保证精确率,为了不预测出错,预测了第50天可能地震,此时:
精确率:1/1 = 100%;召回率:1/2 = 50%
虽然有一次地震没预测到,但是所有的预测结果都是正确的。
(2)保证召回率,为了不漏报,预测了第30、50、51、60天可能地震,此时:
精确率:2/4 = 50%; 召回率:2/2 = 100%
虽然有两次预测错误,但是所有可能发生地震的情况都被预测到了。
不同应用场景下,需要的评价标准不一样,所以会有不同的率,例如:
预测地震–不能接受漏报;人脸识别支付–不能接受误检
基于以上需求,预测地震:主要提升召回率,更倾向于宁愿多预测一些错的也不能漏检;人脸识别支付:主要提升精确率,更倾向于不能出现错误的预测。