算法模型数据挖掘探索——机器学习中分类问题的评价指标
目前正在推进公司的自助算法能力建设项目,旨在建设一个面向业务部门人员,低门槛、无需编程基础也能使用的数据挖掘应用平台,以实现公司范围内大规模、可复制、业务自助的算法模型应用和数据挖掘能力。作为业务部门转岗IT的人员,我特别能理解编程门槛对业务人员掌握相关的知识的阻碍,同时也知道有大量的业务场景可以应用算法模型进行数据挖掘。经过这些年在数据分析领域的实践,深刻的体会这种大规模可推广的应用能力是企业数字化转型所必须的,我想也只有这些看似高深的、过去只限于一小部分人掌握的数据挖掘技能可以普及到了各个业务部门,才是大数据分析创造最大价值的方式。
基于此,为高效的开展项目相关工作,特别是向业务部门进行推广应用,开始学习机器学习相关知识。
机器学习的从问题类型的角度大致可以分成 分类、回归、聚类、降维 ,在实际的应用过程的中,除了掌握的四类问题对应的算法模型,更需要理解的是四类问题的对应的评价指标,以判断运行结果的优劣,从而选出最优的算法模型。
今天就首先看一下分类问题涉及的评价指标。
以分类问题最典型的应用领域是垃圾邮件预测,以此为例,很容易理解其预测结果无非下图所示的四个。
TP真阳——预测是,实际是。带入例子就是预测是垃圾邮件,实际也是,预测正确
FP伪阳——预测是,实际否。带入例子就是预测是垃圾邮件,实际不是,预测错误
FN伪阴——预测否,实际是。带入例子就是预测不是垃圾邮件,实际却是,预测错误
TN真阴——预测否,实际否。带入例子就是预测不是垃圾邮件,实际也不是,预测正确
以此出发,评价指标有以下这些:
-
Accuracy 准确率 /正确率
预测正确的结果占总样本的百分比,目前最常用的分类性能指标。使用准确率来评估算法预测训练数据集的质量。值得注意的是,准确率只是反映算法生产性能的一个近似值。Accuracy=(TP+TN)/(TP+FP+TN+FN)
-
Precision 精确率/查准率/精度
针对预测结果而言的,在所有被预测为正的样本中,实际为正的样本概率,意思就是在预测为正样本的结果中,我们有多少把握可以预测正确.Precision=TP/(TP+FP)
-
Recall 召回率/查全率/召回
针对原样本而言,他的含义是在实际为正的样本中被预测为正的样本被预测为正样本的概率。Recall=TP/(TP+FN)
-
F1 Score F1分数
是统计学中用来衡量二分类模型精确度的一种指标。它同时兼顾了分类模型的精确率和召回率。F1分数可以看作是模型精确率和召回率的一种调和平均,它的最大值是1,最小值是0。F1 Score=2精度召回/(精度+召回)。
-
Balanced Accuracy 平衡准确率
使用平衡准确率帮助评估模型,理想情况下,平衡准确率应最大程度地接近准确率。如果平衡准确率(又叫平均准确率)远远低于准确率,则需查看各个类的准确率,识别算法难以建模的类。为了计算平衡准确率,“辅助建模”会首先计算各个类别的准确率,然后再取这些类的平均值。
-
对数损失
对数损失是一种惩罚,模型应该将其降到尽可能低的水平(完美模型的对数损失为0)。随着预测概率接近1,对数损失会缓慢减小;随着预测概率下降,它会迅速增加。
-
AUC 曲线下面积
AUC是准确率的一个指标,曲线面积越大,则模型越好。仅适用于两类分类。
-
ROC 接收者操作特征曲线
ROC是依据概率将对象分类的一种方法。模型越好,曲线下面积则越大。