增注:虽然当时看这篇文章的时候感觉很不错,但是还是写在前面,想要了解关于机器学习度量的几个尺度,建议大家直接看周志华老师的西瓜书的第2章:模型评估与选择,写的是真的很好!! 以下第一部分内容转载自:机器学习算法中的准确率(Precision)、召回率(Recall)、F值(F-Measure)是怎么一回事 摘要: 数据挖掘、机器学习和推荐系统中的评测指标—准确率(Precision)、召回率(Recall)、F值(F-Measure)简介。 引言: 在机器学习、数据挖掘、推荐系统完成建模之后,需要对模型的效果做评价。 业内目前常常采用的评价指标有准确率(Precision)、召回率(Recall)、F值(F-Measure)等,下图是不同机器学习算法的评价指标。下文讲对其中某些指标做简要介绍。 本文针对二元分类器! 对分类的分类器的评价指标将在以后文章中介绍。 在介绍指标前必须先了解“混淆矩阵”: 混淆矩阵 True Positive(真正,TP):将正类预测为正类数 True Negative(真负,TN):将负类预测为负类数 False Positive(假正,FP):将负类预测为正类数误报 (Type I error) False Negative(假负,FN):将正类预测为负类数→漏报 (Type II error) 1、准确率(Accuracy) 准确率(accuracy)计算公式为: 注:准确率是我们最常见的评价指标,而且很容易理解,就是被分对的样本数除以所有的样本数,通常来说,正确率越高,分类器越好。 2、错误率(Error rate) 错误率则与准确率相反,描述被分类器错分的比例,error rate = (FP+FN)/(TP+TN+FP+FN),对某一个实例来说,分对与分错是互斥事件,所以accuracy =1 - error rate。 3、灵敏度(sensitive) sensitive = TP/P,表示的是所有正例中被分对的比例,衡量了分类器对正例的识别能力。 4、特效度(specificity) specificity = TN/N,表示的是所有负例中被分对的比例,衡量了分类器对负例的识别能力。 5、精确率、精度(Precision) 精确率(precision)定义为: 表示被分为正例的示例中实际为正例的比例。 6、召回率(recall) 召回率是覆盖面的度量,度量有多个正例被分为正例,recall=TP/(TP+FN)=TP/P=sensitive,可以看到召回率与灵敏度是一样的。 7、综合评价指标(F-Measure) 8、其他评价指标 计算速度:分类器训练和预测需要的时间; 鲁棒性:处理缺失值和异常值的能力; 可扩展性:处理大数据集的能力; 可解释性:分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。 下面来看一下ROC和PR曲线(以下内容为自己总结): 1、ROC曲线: 其中: T P r a t e = T P P c TP_{rate}=\frac{TP}{P_c}
TPrate=PcTP,
F P r a t e = F P N c FP_rate=\frac{FP}{N_c}
FPrate=NcFP 2、PR曲线: 召回率一般多少?准确率与召回率,范围在0,1之间,越接近1越好。 但很多时候,二者是相冲突的。 如果只推荐了一个结果,且是准确的,则准确率100%,但召回率很低。 如果推荐了所有的准确结果,召回率100%,准确率就有可能很低。
如何计算准确率?准确率(Accuracy) = (TP + TN) / 总样本=(40 + 10)/100 = 50%。 定义是: 对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。
准确率和召回率怎么计算?准确率、精准率和召回率的计算公式如下: 准确率(accuracy): (TP + TN )/( TP + FP + TN + FN) 精准率(precision):TP / (TP + FP),正确预测为正占全部预测为正的比例召回率(recall): TP / (TP + FN),正确预测为正占全部正样本的比例F- ...
召回率是越高越好吗?如果我们希望被检索到的内容越多越好,这是追求“召回率”,即A/(A+C),越大越好。 利用查准率和召回率指标,可以对每一次检索进行检索效率的评价,为检索的改进调整提供依据。 利用这两个量化指标,也可以对信息检索系统的性能水平进行评价。
|