分类器性能指标错误率、正确率、召回率

本文介绍了在机器学习中评估分类模型性能的各种指标,包括错误率、混淆矩阵、正确率及召回率等,并探讨了它们在不同场景下的应用及局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

在使用机器学习的方法解决分类问题时,我们通常需要一个指标来衡量模型的性能,以下介绍一些常用的性能指标,在实际应用中可以依照应用需求采用相应的指标。

错误率

错误率是使用最普遍、最简单同时又是最粗糙的分类指标。其计算方法为:
设测试样本集T={(X1,Y1),···,(Xn,Yn)},其中Xi为该样本i的输入特征,Yi为样本的真实标签。
T的预测结果:PY={PY1,PY2,···,PYn},其中PYi表示模型对T中第i个样本的预测结果。

则错误率

这里写图片描述

其实就是所有判断错误的样本数占所有样本数的比例。

错误率十分简单也特别好计算,但是它太简单了,以至于无法显示出样本具体是如何被分错。我们看下面的混淆矩阵就可以一下子知道错误率的局限性。

混淆矩阵

假设有一个图片三分类的问题的分类结果整理如下:
这里写图片描述

对角线上的那些元素表示分类正确的情况,而其中格子表示分类错误的情况。

通过这个表,我们可以很容易的计算出错误率:所有非对角元的元素求和除以整个矩阵的和即可。如果所有非对角元的元素都为0,那我们的模型的就特别完美了!因为没有任何样本被分类错误。

除了简单的错误率外,这个表还能告诉我们我们一些样本是如何被分类错误的信息。例如:有4+9=13条真实结果是狗却被分类成猫和猪的错误分类样例。13/(13+24)约为1/3,说明模型对狗的分类能力并不是很强,有1/3的概率把狗误认为其它动物。

二分类混淆矩阵

上面举例的混淆矩阵一个三分类的混淆矩阵,实际上 混淆矩阵可以用于任何一种分类问题。特别地,当问题是一个二分类时(在回答诸如 不是的问题),混淆矩阵有一些特别的表示方法。

这里写图片描述

真·正例:True positive ,真正的正例,那些预测为”是”真实结果也的确为 “是” 的样例

伪·反例:False Negative,假的反例,那些预测为“否”真实结果为“是” 的样例.这种样例本来就是真的,却被预测为假。

伪·正例:False Positive,假正例,那些预测为“真”真实结果为“否” 的样例。本来是假的,却被预测为真。

真·反例:True Negative,真的反例,那些预测为“否”真实结果为“否” 的样例。真实是假,预测也为假。

这四个有点拗口,但是我们可以发现 ,这四个描述词的主体都是后两个字,而且主体描述的都是预测结果。。例如 伪反例,主体为“反例”,修饰词为“伪”,主体“反例”是指 预测结果为反例,”伪”表示这个预测是的。

正确率、准确率Precision rate 和召回率Recall rate其实都是针对 二分类混淆矩阵的。
其中
这里写图片描述

由公式,正确率反映了那些预测为“是”的样例中实际为“是”的比率。召回率 反映了 所有真实的“是”被预测正确的比率。
构造一个高正确率或高召回率的分类器是相对较简单的,但是一般两者都要很高就比较难构造了。而且单方面的让其中一个高是存在很大的局限性,比如下面两个情况:
高正确率:
高正确率
正确率是100%,表示那些预测为“是”的两个样本都是真实的“是”样例,但是这个分类器性能却很低,因为:102个真实为“是”的样例有100被错误预测为“否”。其错误率其实为:100/102 ,基本没啥实际用处。

高召回率:
这里写图片描述
召回率为100%,也就是说,那些真实为“是”的样例都被预测为“是”了。但是,这个分类器性能还是不高,其错误率为100/(100+200)=1/3。为了追求高召回率,分类器只要对任意输入都无脑输出“是”即可,然而这种分类器的性能是不可能高的。

高召回率、高正确率:
这里写图片描述
高召回率、高正确率的分类结果的混淆矩阵的非对角元元素很小。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值