欢迎关注鄙人公众号,技术干货随时看!
查准率与查全率(召回率)是在信息检索与机器学习领域常用的衡量指标,书籍或网络上有非常多的定义,敝人在重温周志华先生《机器学习》一书时,发现书中的定义是非常科学的,而且把这两个指标根据混淆矩阵进行了数学化!
在信息检索领域的定义:检索出的n个文档中正确结果(m个结果是正确的)的比率即是查准率,即p=n/m;假设在所有的数据中正确结果有n个,一次检索结果中正确的个数是m个,查全率即召回率定义为 r = m/n
在机器学习领域:假设在一次预测中,预测总数目是n个,其中m个是预测结果中正确的数据,g 是预测出和没预测出正确结果的总和,那么查准率p=n/m,查全率r = m/g
下面给出混淆矩阵
真实情况 | 预测结果 | |
正例 | 反例 | |
正例 | TP(真正例) | FN(假反例) |
反例 | FP(假正例) | TN(真反例) |
查准率P和查全率R分别定义为
P = TP/(TP+FP)
R = TP/(TP+FN)
由以上可以看出,一般情况下查准率和查全率是此消彼长的一对量。当提高查准率时,可以只返回预测概率靠前的几个结果,但此时可能会漏掉一部分正确的结果,导致查全率降低,反之依然!具体应用中应该在查准率与查全率间寻找一个可以接受的平衡值