【AI面试题】分类问题常用的性能度量指标(评价指标)

分类问题常用的性能度量指标有精确率、召回率、F1、TPR、FPR。

分类问题度量指标的基础是混淆矩阵:
在这里插入图片描述

上表中:
TP表示正样本被预测为正样本(真正例,True Positive)
FN表示正样本被预测为负样本(假负例,False Negative)
TN表示负样本被预测为负样本(真负例,True Negative)
FP表示负样本被预测为正样本(假正例,False Positive)

● 准确率: 所有预测正确的样本(正样本预测为正,负样本预测为负)与所有样本的比值:

在这里插入图片描述
精确率(查准率): 精确率是针对预测结果而言的,它表示的是预测为正的样本中有多少是真正的正样本。那么预测为正就有两种可能了:一种就是把正类预测为正类(TP),另一种就是把负类预测为正类(FP)。(精确率又称查准率,顾名思义适用于对准确率要求高的应用,例如网页检索与推荐等)。公式如下:

在这里插入图片描述
召回率(查全率): 召回率是针对我们原来的样本而言的,它表示的是样本中的正例有多少被预测正确了。那也有两种可能:一种是把原来的正类预测成正类(TP),另一种就是把原来的正类预测为负类(FN)。(召回率又称查全率,适用于检测信贷风险信息、逃犯信息等)公式如下:

在这里插入图片描述
真正例率(TPR): 即为正例被判断为正例的概率,公式如下:

在这里插入图片描述
假正例率(FPR): 即为负例被判断为正例的概率,公式如下:

在这里插入图片描述
F1: 由于精确率和召回率是一对矛盾的度量,所以需要找一个平衡点,研究者们往往使用F1,F1是精确率与召回率的调和平均值,公式如下:

在这里插入图片描述

● AUC和ROC曲线

       ROC曲线(受试者操作特性曲线,Receiver Operational Characteristic Curve)是以False Positive Rate(FPR)为横坐标,True Positive Rate(TPR)为纵坐标绘制的曲线。曲线的点表示了在敏感度和特殊性之间的平衡,例如越往左,也就是假阳性越小,则真阳性也越小。曲线下方的面积越大,则表示该方法越有利于区分两种类别。AUC即为ROC曲线所覆盖的区域面积。AUC值是一个概率值,当随机挑选一个正样本以及一个负样本,当前的分类算法根据计算得到的Score值将这个正样本排在负样本前面的概率就是AUC值。所以AUC值越大,当前的分类算法越有可能将正样本排在负样本前面,即能够更好的分类。而如果AUC=0.5,跟随机猜测一样(例如丢硬币),模型没有预测价值。ROC曲线如下图所示:

在这里插入图片描述
       ROC曲线的主要意义是方便观察阈值对学习器的泛化性能影响,所以有助于选择最佳的阈值。ROC曲线越靠近左上角,模型的查全率就越高。最靠近左上角的ROC曲线上的点是分类错误最少的最好阈值,其假正例和假反例总数最少。

代码如下:

from sklearn import metrics
from sklearn.metrics import roc_auc_score

roc_auc_score(y_true, y_score)
# 求出auc指标
fpr, tpr, thresholds = metrics.roc_curve(y_true, y_score, pos_label=1)
# pos_label=1,表示值为1的实际值为正样本
# 求出了FPR、TPR和阈值

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
常用的 R 语言分类问题评价指标有准确率、精确率、召回率和 F1 值。 以鸢尾花数据集为例,假设我们使用决策树模型进行分类,代码如下: ```R library(datasets) library(caret) # 加载鸢尾花数据集 data(iris) # 划分训练集和测试集 set.seed(123) train_index <- createDataPartition(iris$Species, p = 0.7, list = FALSE) train_data <- iris[train_index, ] test_data <- iris[-train_index, ] # 构建决策树模型 model <- train(Species ~ ., data = train_data, method = "rpart") # 预测测试集结果 test_pred <- predict(model, test_data) # 计算评价指标 confusionMatrix(test_pred, test_data$Species) ``` 输出结果如下: ``` Confusion Matrix and Statistics Reference Prediction setosa versicolor virginica setosa 16 0 0 versicolor 0 15 1 virginica 0 1 12 Overall Statistics Accuracy : 0.9556 95% CI : (0.8436, 0.9944) No Information Rate : 0.3111 P-Value [Acc > NIR] : < 2.2e-16 Kappa : 0.9333 Mcnemar's Test P-Value : NA Statistics by Class: Class: setosa Class: versicolor Class: virginica Sensitivity 1.0000 0.9375 0.9231 Specificity 1.0000 0.9796 0.9796 Pos Pred Value 1.0000 0.9375 0.9231 Neg Pred Value 1.0000 0.9796 0.9796 Prevalence 0.3111 0.3333 0.3556 Detection Rate 0.3111 0.3125 0.3278 Detection Prevalence 0.3111 0.3333 0.3556 Balanced Accuracy 1.0000 0.9586 0.9514 ``` 从结果可以看出,该模型在测试集上的准确率为 0.9556,即正确分类的样本占总样本数的比例。精确率、召回率和 F1 值则可以从混淆矩阵中计算得出。例如,对于类别 setosa,其精确率为 1.0000,即被模型预测为 setosa 的样本中真正属于 setosa 的比例为 100%;召回率为 1.0000,即所有属于 setosa 的样本中被模型预测为 setosa 的比例为 100%;F1 值为 1.0000,即精确率和召回率的调和平均数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值