牛骨文教育服务平台(让学习变的简单)

>最近开始了模式识别的学习,对模式和模式类的概念有一个基本的了解,并使用MATLAB实现一些模式类的生成。而接下来如何对这些模式进行分类成为了学习的第二个重点。我们都知道,一个典型的模式识别系统是由特征提取和模式分类两个阶段组成的,而其中模式分类器(Classifier)的性能直接影响整个识别系统的性能。 >因此有必要探讨一下如何评价分类器的性能,这是一个长期探索的过程.

一、敏感性和特异性

以下例子假定x是一个连续随机变量,对于类别状态 和 的x的概率密度函数如图所示:

这里假设先验概率已知,对于一个二分类问题,可以定义以下四个统计值:

可以将实例分成正类(Positive)或负类(Negative)。这样会出现四种分类结果:

TP(True Positive):正确的正例,一个实例是正类并且也被判定成正类; 
FN(False Negative):错误的反例,漏报,本为正类但判定为假类; 
FP(False Positive):错误的正例,误报,本为假类但判定为正类; 
TN(True Negative):正确的反例,一个实例是假类并且也被判定成假类;

根据以上四种情况,引出以下公式:

敏感性,又称真正类率(true positive rate ,TPR),它表示了分类器所识别出的正实例占所有正实例的比例。计算公式为:

特异性,又称负正类率(False positive rate, FPR),它表示的是分类器错认为正类的负实例占所有负实例的比例。计算公式为:

除此之外,还有真负类率(True Negative Rate,TNR),计算公式为:

负负类率?(False Negative Rate,FNR),计算公式为:

这两个公式用于F score性能评价。

二、ROC曲线

接收机工作特征曲线 (receiver operating characteristic curve,简称ROC曲线),又称为感受性曲线(sensitivity curve)。ROC曲线是根据一系列不同的二分类方式,将TPR定义为X轴,将FPR定义为Y轴而绘制的曲线。曲线下面积越大,分类的准确性就越高。在ROC曲线上,最靠近坐标图左上方的点为灵敏性和特异性均较高的临界值。

ROC曲线上各点反映着相同的感受性,它们都是对同一信号刺激的反应,只不过是在几种不同的判定标准下所得的结果而已。接受者操作特性曲线就是以虚报概率为横轴,击中概率为纵轴所组成的坐标图,和被试在特定刺激条件下由于采用不同的判断标准得出的不同结果画出的曲线。

ROC曲线最初源于20世纪70年代的信号检测理论,它反映了FPR与TPR之间权衡的情况,通俗地来说,即在TPR随着FPR递增的情况下,谁增长得更快,快多少的问题。TPR增长得越快,曲线越往上屈,AUC就越大,反映了模型的分类性能就越好。当正负样本不平衡时,这种模型评价方式比起一般的精确度评价方式的好处尤其显著。一个典型的ROC曲线下图所示:

更多关于ROC曲线的经典例子可参考:http://blog.csdn.net/abcjennifer/article/details/7359370

三、混淆矩阵

混淆矩阵(Confusion matrix),在人工智能领域中,就是用于总结有监督学习的分类结果的矩阵。沿着主对角线上的项表示正确分类的总数,其他非主对角线的项表示分类的错误数,如下表所示。二分问题存在“错误接受”和“错误拒绝”两种不同类型的错误。若将二分问题的混淆矩阵归一化,就是一个关于0和1二值的离散变量的联合分布概率。对于二分类问题来说,混淆矩阵可以用下面的形式表示:

四、F score

由于分类准确率有时并不能很好地突出样本集的特点以及判断一个分类器的性能,对于二分类问题,可以使用 和 这两个参数来评价分类器的性能。F Score的定义可参照一篇名为:Mining Comparative Sentences and Relations的论文。其中TNR和FNR分别用precision, recall来代替。

一般认为,F评分越高则分类器对于正样本是分类效果越好。需要注意的是,TNR和FNR会互相影响,因此,单独使用一个参数来评价分类器的性能,并不能全面的评价一个分类器。。