您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 资本运营 > 第三章4-分类器性能评价-20140925
分类器性能评价软件工程学院郑皎凌目录•前言•常见的评价标准•ROC曲线和AUC方法前言分类过程的两个阶段第一阶段:采用学习算法,通过对训练集进行归纳学习得到分类模型;第二阶段:将已经学习得到的分类模型用于测试集,对测试集中未知类别的实例进行分类。显然,通过训练集产生的分类模型未必是最佳的,这就导致对测试集的分类可能产生错误。而人们希望尽量得到性能最佳的分类模型,就使得对分类器性能评价至关重要。只有通过优秀的评价标准才能选择出性能更好的分类器。分类器性能评价标准常用的评价标准:•误分率●准确度•查全率●查准率•F1值●计算复杂度•速度●可解释性•可伸缩性●稳定性•成本混合矩阵两类问题中的混合矩阵主对角线:被正确分类的正例个数(TP个)和被正确分类的负例个数(TN个)副对角线:被错误分类的负例个数(FP个)和被错误分类的负例个数(FN个)实际正例数(P)=TP+FN实际负例数(N)=FP+TN实例总数(C)=P+N显然,一个混合矩阵已经能够显示出评价分类器性能的一些必要信息。为了更方便的比较不同分类器的性能,从混合矩阵中总结出上述常用的数字评价标准。对用误分率作为标准的分类器的评估●其判断分类器表现的评价准则是:这个分类器做出错误分类的概率有多大。一个没有发生错误的分类器可能是完美的,但由于存在“噪声数据”,在实际中我们并不希望构建这样的分类器,没有必要用所有的信息去对例子进行精确地分类。我们需要的分类器是否存在最小的误分概率?●误分率(Errorrate):错误分类的测试实例个数占测试实例总数的比例Errorrate=1-Accuracy=(FN+FP)/C不对称的误分成本和贝叶斯风险这里存在误分率标准不适合的情况。因为有时把一个类的例子误分成某一类的后果会比分到其它类中的后果更严重。比如说:在医疗系统中,将一个有病的人判断为一个没病的人其将导致病人延误治疗的时机,使病情进一步恶化甚至导致生命危险。在这种场景下,用误分率作为标准会产生误导。假设其生病的概率只有1%,将他归为不生病的误分率也只有1%,但在实际中没有一点意义,因为生命只有一次。在这些情况下,如果我们估计两种类型的误分费用,我们可以在测试数据集中用混淆表计算出每种类型的期望误分成本。这使我们能用机会成本作为标准去比较不同的分类器。准确率•分类准确率是指:模型正确的预测新的或先前未见过的数据的类标号的能力。影响分类器准确率的因素有:训练数据集记录的数目、属性的数目、属性中的信息、测试数据集记录的分布情况等。•准确率(Accuracy):正确分类的测试实例个数占测试实例总数的比例Accuracy=(TP+TN)/C•查准率(Precision):正确分类的正例个数占分类为正例的实例个数的比例Precision=TP/(TP+FP)•查全率(Recall):正确分类的正例个数占实际正例个数的比例。Recall=TP/P•F1值:查全率与查询率的调和平均数F1=2Recall*PrecisonRecall+Precison________________●计算复杂度计算复杂度决定着算法执行的速度和占用的资源,它依赖于具体的实现细节和软硬件环境。由于数据挖掘的操作对象是海量的数据库,因而空间和时间的复杂度将是非常重要的问题。●速度这涉及产生和使用模型的时间花费。●可解释性分类结果只有可解释性好,容易理解,才能更好地用于决策支持。●可伸缩性一个模型的可伸缩的,是指在给定内存和磁盘空间等可用的系统资源的前提下,算法的运行时间应当随数据库大小线性增加。●稳定性一个模型是稳定的,是指它没有随着它所针对数据的变化而过于剧烈变化。●成本这涉及预测错误代价所产生的计算花费。使用这些评价标准可以对分类器进行评估,尤其是其中的准确率或误分率,是比较常用的分类器性能评价标准。但是,所有这些性能评价标准都只在一个操作点有效,这个操作点即是选择使得错误概率最小的点。而且,这些评价标准都有一个共同的弱点,即它们对于类分布的改变显得不够强壮。当测试集中正例和负例的比例发生改变时,它们可能不再具有良好的性能,甚至不被接受。例如:设测试样本中,A类样本90个,B类样本10个。分类器C1将所有的测试样本都分成了A类分类器C2将A类的90个样本分对了70个,将B类的样本分对了5个则:C1的分类精度为90%C2的分类精度为75%,显然,C2更有用些。基于上述问题,人们从医疗分析领域引入了新的分类器性能评价方法——ROC曲线和AUC方法ROC曲线和AUC方法为了清楚的描述ROC图形,根据混合矩阵,定义两个概念:错误的正例率(FalsePositiveRate,FPR)=FP/N正确的正例率(TruePositiveRate.TPR)=TP/PROC图形是一个二维图形,横轴为FPR,纵轴为TPR,直观的展示FPR与TPR之间的对应关系。ROCcurve:theReceiverOperatingCharacteristicAUC:theareaunderROC一些分类器,例如决策树和规则集,仅产生一个类标签,这样的离散分类器在对测试集进行分类时,仅产生一个混合矩阵,对应于ROC区域中的一点。在ROC区域中,(FPR=0,TPR=0)意味着将每一个实例都预测为负例(FPR=1,TPR=1)意味着将每一个实例都预测为正例(FPR=0,TPR=1)为最优分类器点另一些分类器中,如朴素贝叶斯和神经网络,在应用于测试集时会产生实例属于类别的概率或分数。利用这些概率或分数,通过变化分类器所有可能的决策阈值,即可以绘制出分类器在该数据集上的ROC曲线。实际上,通过有限实例产生的ROC曲线实际上是一个阶梯函数,该曲线近似于实例数量接近无限时对应的ROC曲线。右图为一个10个实例的测试集对应的ROC曲线。测试集中包含5个正例和5个负例,并按照它们被预测为正例的概率进行排列。通常,随着测试集中实例的增加,该ROC曲线将逐渐趋向于光滑。在ROC曲线中,通常如果曲线X始终位于曲线Y的左上方,则曲线X由于曲线Y。这意味着,对于所有可能的错误分类代价和类分布,X对应分类器的期望代价始终比Y的期望代价更低。显然,一个优秀分类器对应的ROC曲线应该尽量靠近单位方形的左上角。而如果一条ROC曲线沿着将负分类器点和正分类器点连接构成的对角线,则该分类器的预测效果与随机猜测的同样差。ROC曲线图直观清楚地表现能力是毋庸置疑的,但是在实际应用中往往希望通过一个数字标准进行评估。A与B哪个更优秀???AUC(theareaunderROC)的值,即处于ROCcurve下方的那部分面积的大小。一般AUC的值介于0.5到1.0之间,较大的AUC值代表了较好的性能。计算AUC的方法很多,在有参数、半参数和无参数的条件下都可以进行,其中最通用的方法是用积分法求取ROC曲线下的面积。ROC曲线与AUC的性质1.ROC曲线和AUC对类分布的改变不敏感类分布:测试集中正例和负例的比例任何既用到P中的实例又用到N中的实例的标准势必要受到类分布改变的影响。而在ROC图形中,FPR只用到了N中的实例,TRP只用到了P中的实例,因此,不依赖于类分布的改变。ROC曲线与AUC的性质2.在实际应用中,类分布的不平衡现象非常广泛,类分布不平衡程度达到1:10,1:100的非常常见,有的甚至达到1:10^6。这种严重的不平衡的类分布使得一些传统的评价标准不再适用,而ROC曲线和AUC由于不受类分布的影响,适合于评估、比较这种不平衡数据集。ROC曲线与AUC的性质3.通过变化分类器的所有可能决策阈值而绘制出ROC曲线,ROC曲线和AUC与所选决策预测阈值相互独立,不再受所选决策阈值的限制。4.提高了质量分析测试中的敏感度。5.避免了确定不同种类错误分类的代价。
本文标题:第三章4-分类器性能评价-20140925
链接地址:https://www.777doc.com/doc-2120064 .html