精确率、召回率、F1值、roc、auc

本文深入解析了精确率、召回率、F1值等评估指标的概念及计算方式,探讨了它们在模型评估中的作用与权衡,同时介绍了准确率、ROC曲线、AUC等补充指标。

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

精确率、召回率、F1值
(1)精确率(命中率)(precision):模型预测为正类的样本中预测正确的数量/模型预测为正类的样本数量;(追求查准)
(2)召回率(覆盖率)(recall):模型预测为正类的样本中预测正确的数量/测试集中正例的数据。(追求查全)
精准率、查准率: P = TP/ (TP+FP)
召回率、查全率: R = TP/ (TP+FN),这个要和假阳率做对比
**(1)(2)说的都是正精确率和正覆盖率,对应有负精确率和负覆盖率。
(3)鱼与熊掌不可兼得:精确率和召回率是不可都很高的,因为召回率高,意味着模型把更多的样本预测为整例,由于这些预测样本中含有假正例,所以降低了模型的精确率;而当模型比较保守时,只是将其最确定的样本预测为正样本,这样精确率会很高,但是由于提高了预测为正样本的门槛,所以预测为正样本数量就会变少,从而召回率就会变低。
(4)F1值:综合考虑精确率和召回率的情况
F1-score=2
precision
recall / (precision + recall)
但是如果你的两个模型,一个precision特别高,recall特别低,另一个recall特别高,precision特别低的时候,f1-score可能是差不多的,你也不能基于此来作出选择。
N、补充一个准确率
(5)准确率(Accuracy)
A = (TP + TN)/(P+N) = (TP + TN)/(TP + FN + FP + TN);(正确判断为正类的个数和正确判断为负类的个数除以总的样本个数)
反映了分类器对整个样本的判定能力–将正的判定为正,负的判断为负。

roc、auc
FPR:代表分类器预测的正类中实际负实例占所有负实例的比例。
TPR:代表分类器预测的正类中实际正实例占所有正实例的比例
TNR:代表分类器预测的负类中实际负实例占所有负实例的比例
auc的理解:简单来说其实就是随机抽出一对样本(一个正样本,一个负样本),然后用训练得到的分类器来对这两个样本进行预测,预测得到正样本的概率大于负样本概率的概率。AUC=P(P(正样本)>P(负样本))。一个的模型有一个auc。
Auc的计算:在有M个正样本,N个负样本的数据集里。一共有MN对样本(一对样本即,一个正样本与一个负样本)。统计这MN对样本里,正样本的预测概率大于负样本的预测概率的个数。
roc曲线如图:
在这里插入图片描述
例:求下面预测情况的P(精确率)、R(召回率)、准确率、F1、FPR、TPR、acu
id   real_y  pred_y0   0     01   0     02   1     03   1     14   0     15   1     16   0     07   1     18   1     09   0     0
P = 3/4
R = 3/5
准确率 = 7/10
FPR = 1/5
TPR = 3/5
auc

例:Auc的计算
在这里插入图片描述
有2条正样本,2条负样本,总共有2*2=4对样本对(D,B),(D,A),(C,B),(C,A)
(D,B)样本对中正样本D预测的概率(0.8)大于负样本B预测的概率(0.4),记为1;同理,(D,A)–>1;(C,B)–>0;(C,A)–>1
该模型的Auc = (1+1+0+1)/4=0.75

### 准确精确召回率F1的定义 #### 1. 准确 (Accuracy) 准确是指模型预测正确的样本数占总样本数的比例。其计算公式如下: \[ \text{Accuracy} = \frac{\text{TP} + \text{TN}}{\text{TP} + \text{FP} + \text{FN} + \text{TN}} \] 其中,TP表示真阳性(True Positive),TN表示真阴性(True Negative)。这表明准确衡量的是整体分类效果的好坏[^1]。 #### 2. 精确 (Precision) 精确指的是在所有被模型预测为正类的样本中,实际为正类的样本比例。其计算公式如下: \[ \text{Precision} = \frac{\text{TP}}{\text{TP} + \text{FP}} \] 这意味着精确关注于减少误报的情况,即降低假阳性的数量。 #### 3. 召回率 (Recall) 召回率也称为灵敏度或真正类(True Positive Rate, TPR),它衡量的是在所有实际为正类的样本中,被正确预测为正类的比例。其计算公式如下: \[ \text{Recall} = \frac{\text{TP}}{\text{TP} + \text{FN}} \] 召回率主要关注漏报的情况,即尽可能多地找出所有的正类样本。 #### 4. F1 (F1-Score) F1精确召回率的调和平均数,用于平衡两者之间的关系。其计算公式如下: \[ \text{F1-Score} = 2 \cdot \frac{\text{Precision} \cdot \text{Recall}}{\text{Precision} + \text{Recall}} \] 当精确召回率都很重要时,通常会使用F1作为评估标准。 --- ### ROC 曲线与 AUC 的概念 除了上述指标外,ROC曲线也是常用的性能评估工具之一。ROC曲线通过绘制不同阈下的真正类(TPR)和伪正类(FPR)来展示模型的表现。理想情况下,ROC曲线应该靠近左上角,即TPR接近1而FPR接近0[^3]。 以下是ROC曲线的一个简单示意图: ```plaintext | | * | * * | * * | * * | * * | * * | * * |*_______________________________> False Positive Rate (FPR) ``` 横轴代表伪正类(FPR),纵轴代表真正类(TPR)。AUC(Area Under Curve)则指ROC曲线下方的面积,范围从0到1,数越大表示模型区分能力越强。 --- ### 关系总结 - **准确**适用于数据分布较为均衡的情况下; - **精确**更注重减少错误标记为正类的情况; - **召回率**强调找到更多的正类实例; - **F1**则是两者的权衡,尤其适合处理类别不平衡的数据集。 这些指标各有侧重,在具体应用中需根据业务需求选择合适的评价方法。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值