二元分类中精确度precision和召回率recall的理解

本文介绍了二元分类问题中的两个关键评估指标:精确度和召回率。精确度是指分类器正确预测为正的样本占所有预测为正的样本比例;召回率则是指分类器正确预测为正的样本占所有实际为正的样本比例。通过具体例子说明了这两个指标的计算方法。

精确度(precision) 是二元分类问题中一个常用的指标。二元分类问题中的目标类
别只有两个可能的取值, 而不是多个取值,其中一个类代表正,另一类代表负,精确度就
是被标记为“正”而且确实是“正”的样本占所有标记为“正”的样本的比例。和精确度
一起出现的还有另一个指标召回率(recall)。召回率是被分类器标记为“正”的所有样本
与所有本来就是“正”的样本的比率。

比如,假设数据集有 50 个样本,其中 20 个为正。分类器将 50 个样本中的 10 个标记为
“正”,在这 10 个被标记为“正”的样本中,只有 4 个确实是“正”(也就是 4 个分类正
确), 所以这里的精确度为 4/10=0.4,召回率为 4/20=0.2。

### 精确度召回率F1分数的概念及计算 #### 定义与解释 精确度是指分类器做出的正向预测中有多少是实际正确的。具体来说,这是通过混淆矩阵中的真实阳性除以所有被预测为阳性的实例总数得出的比例[^2]。 召回率衡量的是所有实际为正类别的样本中,成功识别出来的比例。换句话说,这表示真正例数占所有实际正类的数量之比。 F1分数则是精确度召回率之间的调平均值,提供了一个综合评估指标,尤其适用于类别不平衡的数据集情况下的性能评价[^3]。 #### 计算公式 对于二元分类问题: - **Precision (P)**: \( P = \frac{TP}{TP + FP} \) 其中 TP 表示真阳性(True Positive),FP 表示假阳性(False Positive)[^2]。 - **Recall (R)** 或者也称为灵敏度(Sensitivity): \( R = \frac{TP}{TP + FN} \) 这里 FN 是指假阴性(False Negative) 的数量。 - **F1 Score**: \( F1 = 2 * (\frac{PR}{P + R}) \) 此表达式反映了精确度召回率之间的一种平衡关系。 ```python from sklearn.metrics import precision_score, recall_score, f1_score def evaluate_metrics(y_true, y_pred): """ Calculate Precision, Recall and F1-Score. Parameters: y_true : array-like of shape (n_samples,) True target values or labels. y_pred : array-like of shape (n_samples,) Predicted targets returned by classifier. Returns: tuple containing precision, recall, and f1-score scores. """ p = precision_score(y_true, y_pred) r = recall_score(y_true, y_pred) f1 = f1_score(y_true, y_pred) return p, r, f1 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值