机器学习中的几个常见指标

在机器学习中有对于模型性能评估的指标
我们首先从混淆矩阵开始引入

混淆矩阵

在这里插入图片描述
如图,在二分类任务中,混淆矩阵通常由四部分组成。两行分别表示实际值的Positive和Negative,即二分类任务中的两个类;两列分别表示预测出来的Positive和Negative。主对角线上的两个部分即为模型分类正确的元素,而其余的部分对应着模型分类错误的元素。
当然在多分类任务中同样如此,若干行对应着多分类中的多个类别;而若干行对应着模型预测出来的多个类别,主对角线上的值为分类正确的值,其余为分类错误的值。

从二分类混淆矩阵中可以得到四个指标:

分类正确的:

  • TP(True Positive) 表示预测结果为正类,且预测正确;即实际值和预测值都是正类
  • TN(True Negative)表示预测结果为负类,且预测正确;即实际值和预测值都是负类

分类错误的:

  • FP(False Positive) 表示预测结果为正类,且预测错误;即实际值是负类,但是预测值是正类
  • FN(False Negative)表示预测结果为负类,且预测错误;即实际值是正类,但是预测值是负类

由这四个指标可以得到更高级的分类指标。

更多分类指标

首先显然可以得到总样例数= TP + FP + TN + FN

Accuracy(准确率)

准确率是最常用的分类性能指标。可以用来表示模型的精度,即模型识别正确的个数/样本的总个数。一般情况下,模型的精度越高,说明模型的效果越好。
A c c u r a c y = T P + T N T P + T N + F P + F N Accuracy = \frac{TP+TN}{TP+TN+FP+FN} Accuracy=TP+TN+FP+FNTP+TN

Precision(精确率)

又称为查准率,表示在模型识别为正类且正确的样本中,预测为正类的样本所占的比例。
在偏向于不能错误把负类预测为正类的任务中,精确率越高越好。
例如在人脸识别支付的任务中,允许正类识别错误,但是不允许负类识别为正类。因此在这种情况下精确率越高越好。
P r e c i s i o n = T P T P + F P Precision = \frac{TP}{TP+FP} Precision=TP+FPTP

Recall (召回率)

又称为查全率,召回率表现出在实际正样本中,分类器能召回多少,即能正确预测多少,故称为召回率。
在偏向于不能错误把正类预测为负类的任务中,精确率越高越好。
例如在地震预测中,可能允许误报,但是绝不允许把要发生的地震预测为不发生。因此这种情况下召回率越高越好。
R e c a l l = T P T P + F N Recall= \frac{TP}{TP+FN} Recall=TP+FNTP

可以看到以上两种指标适应于不同的任务。对于Precision和Recall,虽然从计算公式来看,并没有什么必然的相关性关系,但是,在大规模数据集合中,这2个指标往往是相互制约的。理想情况下做到两个指标都高当然最好,但一般情况下,Precision高,Recall就低,Recall高,Precision就低。所以在实际中常常需要根据具体情况做出取舍。
所以,很多时候我们需要综合权衡这2个指标,这就引出了一个新的指标F-score。这是综合考虑Precision和Recall的调和值。

F-Score

F − S c o r e = 1 1 ( 1 + β 2 ) ⋅ ( 1 P r e c i s i o n + β 2 R e c a l l ) = ( 1 + β 2 ) P r e c i s i o n ⋅ R e c a l l β 2 ⋅ P r e c i s i o n + R e c a l l F-Score= \frac{1}{\frac{1}{(1+\beta^2)}\cdot (\frac{1}{Precision}+\frac{\beta^2}{Recall})}=(1+\beta^2)\frac{Precision\cdot Recall}{\beta^2 \cdot Precision+ Recall} FScore=(1+β2)1(Precision1+Recallβ2)1=(1+β2)β2Precision+RecallPrecisionRecall
可以看到,公式中给在算调和平均数的时候给Precision和Recall赋予了 1 : β 2 1:\beta^2 1:β2的比例,因此

  • β 2 = 1 \beta^2=1 β2=1: 则称为F1-Score,此时Precision和Recall的权重相当
  • β 2 < 1 \beta^2<1 β2<1: 表示Precistion更重要些
  • β 2 > 1 \beta^2>1 β2>1: 表示Recall更重要些
    通常使用的还有F2-Score表示 β 2 = 2 \beta^2=2 β2=2,即Recall更重要些

根据F-Score我们可以综合地评价模型在两方面的表现。

  • 13
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习过程,通常可以将其分为以下几个部分: 1. 数据收集和准备:这一阶段涉及收集和获取用于训练模型的数据。数据可能来自于各种来源,如数据库、文件、传感器等。在这个阶段,还需要对数据进行清洗、处理和转换,以便使其适合用于模型训练。 2. 特征选择和提取:在这个阶段,需要从原始数据选择和提取与问题相关的特征。特征是用于描述数据的属性或变量,它们应该包含有助于模型学习和预测的信息。常见的特征选择和提取方法包括统计方法、主成分分析(PCA)等。 3. 模型选择和训练:在这一阶段,需要选择适合解决问题的机器学习模型,并使用已准备好的数据对模型进行训练。模型可以根据问题的性质选择,如分类、回归、聚类等。训练模型的目标是通过调整模型的参数和超参数,使其能够对新数据进行准确的预测或分类。 4. 模型评估和优化:在模型训练完成后,需要对模型进行评估和优化。评估模型的性能可以使用各种指标,如准确率、精确率、召回率、F1分数等。如果模型性能不理想,可以尝试调整模型参数、改变特征选择或提取方法,或者尝试其他模型算法。 5. 模型部署和应用:在模型通过评估和优化后,可以将其部署到实际应用。这可能涉及将模型集成到软件系统,建立模型的API接口,或者将模型嵌入到其他应用程序。模型部署后,可以用于预测、分类或生成新的数据。 这些步骤并不一定是线性的,通常需要进行反复迭代和调整,以提高模型的性能和预测能力。整个机器学习过程是一个迭代的过程,需要不断地进行实验和改进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值