精华内容
下载资源
问答
  • 分类算法评价标准

    2018-05-23 16:22:00
     分类算法有很,不同分类算法又用很不同的变种。不同的分类算法有不同的特定,在不同的数据集上表现的效果也不同,我们需要根据特定的任务进行算法的选择,如何选择分类,如何评价一个分类算法的好坏,前面关于...

    一、引言

      分类算法有很多,不同分类算法又用很多不同的变种。不同的分类算法有不同的特定,在不同的数据集上表现的效果也不同,我们需要根据特定的任务进行算法的选择,如何选择分类,如何评价一个分类算法的好坏,前面关于决策树的介绍,我们主要用的正确率(accuracy)来评价分类算法。

      正确率确实是一个很好很直观的评价指标,但是有时候正确率高并不能代表一个算法就好。比如某个地区某天地震的预测,假设我们有一堆的特征作为地震分类的属性,类别只有两个:0:不发生地震、1:发生地震。一个不加思考的分类器,对每一个测试用例都将类别划分为0,那那么它就可能达到99%的正确率,但真的地震来临时,这个分类器毫无察觉,这个分类带来的损失是巨大的。为什么99%的正确率的分类器却不是我们想要的,因为这里数据分布不均衡,类别1的数据太少,完全错分类别1依然可以达到很高的正确率却忽视了我们关注的东西。接下来详细介绍一下分类算法的评价指标。

    二、评价指标

      1、几个常用的术语

      这里首先介绍几个常见的模型评价术语,现在假设我们的分类目标只有两类,计为正例(positive)和负例(negtive)分别是:

      1)True positives(TP):  被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数(样本数);

      2)False positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数;

      3)False negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数;

      4)True negatives(TN): 被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数。  

     

     

     

     

    预测类别

     

    Yes

    No

    总计

    Yes

    TP

    FN

    P(实际为Yes

    No

    FP

    TN

    N(实际为No

    总计

    P’(被分为Yes

    N’(被分为No

    P+N

      上图是这四个术语的混淆矩阵,我只知道FP叫伪阳率,其他的怎么称呼就不详了。注意P=TP+FN表示实际为正例的样本个数,我曾经误以为实际为正例的样本数应该为TP+FP,这里只要记住True、False描述的是分类器是否判断正确,Positive、Negative是分类器的分类结果。如果正例计为1、负例计为-1,即positive=1、negtive=-1,用1表示True,-1表示False,那么实际的类标=TF*PN,TF为true或false,PN为positive或negtive。例如True positives(TP)的实际类标=1*1=1为正例,False positives(FP)的实际类标=(-1)*1=-1为负例,False negatives(FN)的实际类标=(-1)*(-1)=1为正例,True negatives(TN)的实际类标=1*(-1)=-1为负例。

      2、评价指标

      1)正确率(accuracy)

      正确率是我们最常见的评价指标,accuracy = (TP+TN)/(P+N),这个很容易理解,就是被分对的样本数除以所有的样本数,通常来说,正确率越高,分类器越好;

      2)错误率(error rate)

      错误率则与正确率相反,描述被分类器错分的比例,error rate = (FP+FN)/(P+N),对某一个实例来说,分对与分错是互斥事件,所以accuracy =1 -  error rate;

      3)灵敏度(sensitive)

      sensitive = TP/P,表示的是所有正例中被分对的比例,衡量了分类器对正例的识别能力;

      4)特效度(specificity)

      specificity = TN/N,表示的是所有负例中被分对的比例,衡量了分类器对负例的识别能力;

      5)精度(precision)

      精度是精确性的度量,表示被分为正例的示例中实际为正例的比例,precision=TP/(TP+FP);

      6)召回率(recall)

      召回率是覆盖面的度量,度量有多个正例被分为正例,recall=TP/(TP+FN)=TP/P=sensitive,可以看到召回率与灵敏度是一样的。

      7)其他评价指标

    • 计算速度:分类器训练和预测需要的时间;
    • 鲁棒性:处理缺失值和异常值的能力;
    • 可扩展性:处理大数据集的能力;
    • 可解释性:分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。

      对于某个具体的分类器而言,我们不可能同时提高所有上面介绍的指标,当然,如果一个分类器能正确分对所有的实例,那么各项指标都已经达到最优,但这样的分类器往往不存在。比如我们开头说的地震预测,没有谁能准确预测地震的发生,但我们能容忍一定程度的误报,假设1000次预测中,有5次预测为发现地震,其中一次真的发生了地震,而其他4次为误报,那么正确率从原来的999/1000=99.9%下降到996/1000=99.6,但召回率从0/1=0%上升为1/1=100%,这样虽然谎报了几次地震,但真的地震来临时,我们没有错过,这样的分类器才是我们想要的,在一定正确率的前提下,我们要求分类器的召回率尽可能的高。

     

    参考链接: http://www.cnblogs.com/fengfenggirl/p/classification_evaluate.html 

    转载于:https://www.cnblogs.com/itbuyixiaogong/p/9077490.html

    展开全文
  • 这篇文章中我会通过几个例子向大家介绍一些weka中经典的数据挖掘算法和评估算法的...(在这个目录中有很经典的样本) 进入分类器标签,点击 Choose 按钮,开始选择分类算法。在弹出的树状目录中找到 trees 节点...

    这篇文章中我会通过几个例子向大家介绍一些weka中经典的数据挖掘算法和评估算法的手段。

    J4.8 决策树算法

    在预处理标签页 点击 open file ,选择 Weka 安装目录下 data 文件夹中的 weather.numberic.arff 。(在这个目录中有很多经典的样本)

    进入分类器标签,点击 Choose 按钮,开始选择分类器算法。在弹出的树状目录中找到 trees 节点,打开它,选择 J48 算法。验证方式选择 10折交叉验证。点击 Start 开始分类。

    J4.8算法是著名的决策树算法C4.5的一个改进版,也是最后一个免费版本。选完这个算法后可以看到weka对J48算法赋予了默认参数:-C 0.25 -M 2。前者是用于剪枝的置信因子,后者指定了每个叶结点最小的实例数。详见:http://blog.csdn.net/buaalei/article/details/7105965

    运行完成后可以在 output 界面查看结果。

    outlook = sunny
    |   humidity <= 75: yes (2.0)
    |   humidity > 75: no (3.0)
    outlook = overcast: yes (4.0)
    outlook = rainy
    |   windy = TRUE: no (2.0)
    |   windy = FALSE: yes (3.0)
    括号内的数字表示有多少实例到达该叶结点。如果有错误的分类,则括号内会出现两个数字,比如(2.0/1.0),表示其中有一个节点是错误分类。

    在 output 版面的最后可以看到一些 高级的统计数据,如下图:



    我们一个一个解释:

    Kappa statistic:

    这个参数是把分类器与随机分类器作比较得出的一个对分类器的评价值。那么0.186是怎么计算出来的呢?

    从output 版面的最下面的 confusion matrix(混淆矩阵)中,我们发现分类器把10个实例预测成了a情况(其中7对3错),4个实例预测成了b情况(2对2错)。如果换做一个随机分类器,也把10个实例预测成了a,4个实例预测成了b,那么该随机分类器的预测准确情况会是什么样的?按照概率分布,正确地预测a的概率为9/14,正确地预测b的概率为5/14。所以该分类器能准确预测的实例个数为 10×(9/14)+4×(5/14)=110/14≈7.85。Kappa=(9-7.85)÷(14-7.85)≈0.186


    Mean absolute error 和 Root mean squared error: 

    平均绝对误差,用来衡量分类器预测值和实际结果的差异,越小越好。


    Relative absolute error 和 Root relative squared error:

    举个例子来说明:实际值为500,预测值为450,则绝对误差为50;实际值为2,预测值为1.8,则绝对误差为0.2。这两个数字50和0.2差距很大,但是表示的误差率同为10%,所以有时绝对误差不能体现误差的真实大小,而相对误差通过体现误差占真值的比重来反映误差大小,效果更佳。

    详见:http://www.doc88.com/p-89192423133.html


    TP,FP:

    TP表示识别率,对某一分类的实例,有多少概率把它识别出来。提高识别率在医疗系统中很重要,如果病人有病,却没有识别出来,后果很严重!
    FP表示误判率,对其他分类的实例,有多少概率把实例识别成本分类。

    Precision:

    精准度。表示对某一个类别的分类中,正确的实例数占总数的比率。

    Recall:

    召回率,又称查全率。表示识别正确的实例数,占该类别的实例的总数。由于本例中没有未识别的实例,所以Recall=TP。


    F-Measure:

    这个值是精准度和召回率的综合,在现实中精准度和召回率往往不可兼得,所以引入了F值,F值越大说明精准度和召回率都相对较高,详见:http://baike.baidu.com/link?url=3mOTzT44pst0QuciABcnqnIHV-RI3XrfldYTZrPRxq6uEnttl-IQnVC-c2HOJ3jTvAXgXKSi3htc86bsamPoQq 

    ROC Area:


    混淆矩阵Confusion Matrix:

    第一行的“7”表示有7个a情况的实例得到正确分类,第一行的“2”表示有2个a情况被错误地分类成了b。
    第二行的“3”表示有3个b情况的实例被错误的分类成了啊,第二行的”2“表示有2个b情况得到正确的分类。

    转载于:https://www.cnblogs.com/rav009/p/5131126.html

    展开全文
  • 混淆矩阵、精确率以上两种衡量指标是针对二元分类器准确率(), 精确率...分类算法的评价要比回归算法的评价标准复杂的;评论分类算法好坏的指标,有多种,具体选择评价指标时要根据数据和应用场景而定; 2)分类准...

    897557d99c4993c52cdac9c44dd0b029.png

    混淆矩阵、精确率


    以上两种衡量指标是针对二元分类器
    准确率(), 精确率(Precision), 召回率(Recall)和
    一、分类精准度的缺陷
     1)评论算法的好坏

    • 回归问题:MSE、MAE、RMSE、R^2(以为最好的标准);
    • 分类问题:分类准确度(score() 函数);
    • 分类算法的评价要比回归算法的评价标准复杂的多;
    • 评论分类算法好坏的指标,有多种,具体选择评价指标时要根据数据和应用场景而定;

     2)分类准确度类评价分类算法的好坏存在问题

    • 实例说明
    • 任务:搭建一个癌症预测系统,输入一个人体检的信息指标,可以判断此人是否有癌症;
    • 思路:收集大量的数据,训练机器学习算法模型,进而完成癌症预测系统;
    • 疑问:如果该系统的预测准确度为 99.9% ,该系统是好?是坏?
    • 情景1:如果该种癌症在人群中产生的概率只有 0.1%,那么即使随便一个系统,预测所有人都是健康,该系统也可达到 99.9% 的准确率;也就是说,即使该系统什么都不做,也可以达到 99.9% 的准确率;
    • 情景2:如果该种癌症在人群中产生的概率只有 0.01%,此时即使系统什么都不做,其预测准确率也能达到 99.99%,则该机器学习算法的模型是失败的;


     3)分析

    • 原因:对于极度偏斜(Skewed Data)的数据,只使用分类准确度是远远不够的;
    • 极度偏斜的数据不同类型的样本的数量的差距特别大;如该种癌症患者和健康人,比例为 1:1000 或者 1:10000;
    • 面对这种极度偏斜的数据,分类准确度非常的高,其实算法是不够好的,甚至有些情况下非常烂的算法也能得到非常高的准确度;


     4)方案

    • 方案:使用混淆矩阵做进一步的分析;


    二、混淆矩阵(Confusion Matrix)

    • 混淆矩阵:分类任务中的重要工具,大多应用于二分类问题,通过混淆矩阵可以得到更好的衡量分类算法好坏的指标;
    • 精准率和召回率:衡量分类算法坏话的指标,就是通过混淆矩阵所得;

     1)二分类问题中混淆矩阵

    • 为 2 X 2 的矩阵,只有 4 个数;
    • 混淆矩阵的创建

    bf8f074d3f3aedd5ee063bf49cd6ef55.png
    1. 矩阵的最上一行代表预测值,最左列为真实值;
    2. 0 - Negative、1 - Positive;
    3. TN、FP、FN、TP:表示预测结果的样本数量
    4. TN(True Negative):实际值为 Negative,预测值为 Negative,预测 negative 正确;
    5. FP(False Positive):实际值为 Negative,预测值为 Positive,预测 Positive 错误;
    6. FN(False Negative):实际值为 Positive,预测值为 Negative,预测 Negative 错误;
    7. TP(True Positive):实际值为 Positive,预测值为 Positive,预测 Positive 正确;


     2)实例解释

    • 还是 癌症患者预测:训练样本 10000 人,下面是预测结果的混淆矩阵;

    b7ee91a4056cf373cbaaafbdf31e1798.png
    1. 9978:9978 个人本身没有换癌症,同时算法预测他们也没有还癌症;
    2. 12:12个人本身没有患癌症,但算法预测他们患有癌症;
    3. 2:2个人本身患有癌症,但算法预测他们没有患癌症;
    4. 8:8个人本身患有癌症,同时算法预测他们也患有癌症;
      三、精准率和召回率
    • 精准率和召回率:衡量分类算法坏话的指标,就是通过混淆矩阵所得;
    • 对于有偏的数据的分类中,通常将 1 作为关注的事件,精准率就是指预测所关注的事件的准确率;
    • 所关注的事件:人群中的癌症患者;

    80f1d6551cceab834c516288ce8cc187.png

     1)精准率(precision)判断出来是‘目标’的样本中,有多少是真正判断正确的

    • 精准率:预测所关注的事件的结果中(共预测了 20 次),预测正确的概率(8 次正确,12 次错误);

    a7bc5e74be041f8896921f2b64581b41.png
    • 精准率 = TP / (TP + FP) = 8 / (8 + 12) = 40%
    1. 含义:每做 100 次患病的预测,平均会有 40 次是正确的;


     2)召回率(recall) 所有真正的‘目标’样本中,有多少被判断出来了

    • 召回率:对所有所关注的类型(癌症患者,共 10 个),将其预测出的概率(预测出 8 个);

    39b3f92fd7d12ffa0d9cb237fac91345.png
    • 召回率 = TP / (TP + FN) = 8 / (8 + 2) = 80%
    1. 解释:每当有 100 个癌症患者,通过该预测系统,能够成功的找出 80 个癌症患者;


    3、准确率(accuracy) 所有的判断中(无论正负样本),其中判断正确的比率
    准确率是一个用于评估分类模型的指标。通俗来说,准确率是指我们的模型预测正确的结果所占的比例。正式点说,准确率的定义如下:

    c42b7b24e1148be8122e466f8def6793.png


    对于二元分类,也可以根据正类别和负类别按如下方式计算准确率:

    ca51f80be3c6e124f47bf5caf2d3bb1e.png


    其中,TP = 真正例,TN = 真负例,FP = 假正例,FN = 假负例。
    F1分数(F1-score)是分类问题的一个衡量指标。一些多分类问题的机器学习竞赛,常常将F1-score作为最终测评的方法。它是精确率和召回率的调和平均数,最大为1,最小为0。

    ac08307169d7cab3d17220eb0ffeefad.png
    展开全文
  • 胶囊网络作为一种新型深度学习网络,胶囊结构可以编码特征的姿态、纹理、色调等信息,对图像具有良好的纹理特征编码...以分类准确率为模型评价标准,在常用纹理图像数据集上的实验结果表明,DWTCapsNet的分类准确率较高。
  • LDA的评价标准

    千次阅读 2017-10-19 11:21:27
    对于评价聚类算法的好坏的评价指标: 第一是利用有分类标签的测试数据集,然后判断聚类的结果与真实的结果之间的差距。 第二是利用无分类标签的测试数据集,用训练出来的模型来跑测试数据集,然后计算在测试数据集...

    最近半个月一直纠结与LDA中,拔也拔不出来,有很多的东西我自己是不太理解的,现在还是重新理一下思路,然后再重新来做吧。
    对于评价聚类算法的好坏的评价指标:
    第一是利用有分类标签的测试数据集,然后判断聚类的结果与真实的结果之间的差距。
    第二是利用无分类标签的测试数据集,用训练出来的模型来跑测试数据集,然后计算在测试数据集上,所有的token似然值几何平均数的倒数,也即perplexity指标,这个指标可以直观理解为用于生成测试数据集的词表大小的期望值。
    这里写图片描述
    熵,perplexity是一种信息理论的测量方法,x的perplexity是基于x的熵的能量来定义的。对于一个模型而言,perplexity越小,说明模型越好。具体在wiki上有三种定义方式,参考的链接如下:
    http://blog.csdn.net/pipisorry/article/details/42460023
    对于LDA主题模型中的perplexity,只是一个粗略的评价标准,用于在语料库中得到合数数目的主题。
    这里写图片描述
    其中,M是测试语料库中的文本的数量,Nd是第d篇文本的大小(即单词数),P(Wd)代表文本的概率。
    文本的概率的计算方法:由词袋模型可知,一篇文本的概率为其所有词的的概率的成绩,而每个词的概率由全概率公式(主题的全概率公式得到)。
    LDA模型的perplexity就是exp^{ - (∑log(p(w))) / (N) },∑log(p(w))是对所有单词取log(直接相乘一般都转化成指数和对数的计算形式),N的测试集的单词数量(不排重)
    举例说明,假设我们测试语料库中由m个句子,s1,s2,s3,s4…sm,可以通过取log的方式将乘法转变为加法。
    这里写图片描述
    此时的值越大说明效果越好。
    这里写图片描述
    将其转化为指数的方式,此时的perplexity越小越好。

    展开全文
  • 分类器模型评价指标

    万次阅读 2016-08-22 14:27:26
    需要提前说明的是,我们这里只讨论二值分类器。对于分类器,或者说分类算法,评价指标主要有accuracy,...使用AUC值作为评价标准是因为很时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而AUC作为数值可以
  • 分类算法的评价要比回归算法的评价标准复杂的; 评论分类算法好坏的指标,有多种,具体选择评价指标时要根据数据和应用场景而定;  2)分类准确度类评价分类算法的好坏存在问题 实例说明 ...
  • 1.再复习一遍accuracy, precision, recall, F1 score: 2. 再复习一遍ROC、AUC ROC曲线的横坐标为false positive rate...使用AUC值作为评价标准是因为很时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而作为
  • 算法采用AUC作为评价标准,利用目标优化算法作为SVM参数的优化方法,避免优化对象的AUC值过低问题,因为在分类学习中任何一个两类分类的AUC值太低,都会影响整体学习的效果。实验结果表明,提出的优化方法改进了...
  • 利用光谱特征数据重组和标准化处理建立训练、测试及预测样本;基于最小相对熵理论设计损失函数,训练随机森林算法模型,提取不同风化类型及风化程度样本数据的光谱特征;利用训练后具有特征感知能力的分类模型对石窟...
  • KMeans算法通过试着在n组方差相等的样本中分类样本来聚类数据,最小化评价标准。这个算法需要指明聚类的个数。它可以很好的拓展到大量的样本。 K-means算法将NNN个样本分到KKK个不相交的聚类CCC中,每个聚类都是通过...
  • 成都BCI小组已经实现了两任务运动想象的BCI同步在线系统搭建,该系统基于模型参数和能量的特征提取和分类算法,并利用线性判决分析分类器实现对特征的分类,最高达到了93%的分类正确率。 要实现BCI的异步在线控制,...
  • AUC(ROC曲线下面积)评价标准已经广泛地用于度量机器学习中各种分类算法在两类数据集上的分类性能。首先介绍了SVM(支持向量机)类分类方法,然后对AUC方法进行了系统地介绍,最后通过实验来比较各种SVM类分类方法在...
  • [1] 人工免疫优化与分类算法及其应用研究 -王炼红人工免疫算法和遗传算法的区别免疫算法和进化计算都采用群体搜索策略,并且强调群体中个体间的信息交换,因此有许多相似之处。首先在算法结构上,都要经过"初始种群...
  • 文章目录前言1 准确率(Accuracy)2 精确率(Precision)3 召回率(Recall)4 P-R曲线5 F1-Score6 ROC曲线7 AUC值8 混淆矩阵9 多分类参考文献 前言 在机器学习算法中,在模型训练出来之后,总会去寻找衡量模型性能的...
  • 聚类算法(一)——DBSCAN ...大体分为两种,一种是内部质量评价标准,主要是无分类标签的数据集进行评价,另外一种是``,主要是基于已知分类标签数据集进行评价的。 内部评测指标 轮廓系数 [外链图片转.
  • 提出了一种基于最小风险贝叶斯的分类评价标准,并以此为核心,通过对初步结果赋权值的方式得到最优分类器结果。最后以最优结果为核心实现了一个Android恶意软件检测系统原型。实验结果表明,该检测系统的分析精度...
  • 一、数据结构分类 1.集合:元素之间的关系是“只属于一个集合” 2.线性结构:元素之间的关系是一对一关系 3.树形结构:一对关系 ...算法评价标准 运行时间 占用空间 正确性 可读性 健壮性 ...
  • 一.kmeans算法的简介。 K-means聚类算法也称k均值聚类算法,是集简单和经典于一身的基于距离的聚类算法。它采用距离作为相似性的评价指标,即认为两个对象的距离越...分类分类就是按照某种标准给对象贴标签(label),
  • 最后,在K近邻算法分类和整理的基础上,采用评价函数和随机抽样一致性算法去除误匹配点对。基于标准图库ALOI及组实际图像匹配的结果表明,对于复杂环境下的图像,本文算法不仅具有较高的匹配精度,而且大幅缩短了...
  • 描述可供选择的机器学习算法有很。...这些评价指标的数值为评估所有其它机器学习算法提供了所需的比较标准。一旦计算出基线预测算法评价指标,就可以知道一个给定算法比朴素基线算法到底好多少...
  • 网络拓扑发现算法的分析

    万次阅读 2011-04-15 19:58:00
    给出了对网络拓扑发现算法进行评价标准及其量化的表示形式。 关键词: 拓扑发现 算法 SNMP ICMP <br /> 近年来,由于计算机网络的迅速发展,有效的网络管理得到了越来越的重视,而获得最新的网络拓扑...
  • 在模型评估过程中,往往需要使用多种不同的指标协作评估一个模型的好坏,因为众多的评价指标中,大部分指标只能片面的反应模型的一部分特点,那么对模型的评估就会比较片面,在算法落地后也会出现很问题。...
  • 1.4.2 评价算法优劣的基本标准 11 1.4.3 算法的时间复杂度 12 1.4.4 算法的空间复杂度 14 1.5 小结 15 习题 16 第2章 线性表 18 2.1 线性表的类型定义 18 2.1.1 线性表的定义和特点 18 2.1.2 线性表...
  • 数据结构的分类

    2020-01-06 16:54:49
    数据结构通常有4种基本的数据结构: 1:集合。独立个体 2:线性结构。一对一 3:树形结构。...算法评价标准: 运行时间 占用空间 有时需要牺牲空间来换取时间,有时需要牺牲时间来换取空间 ...
  • 使用AUC值作为评价标准是因为很时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而作为一个数值,对应AUC更大的分类器效果更好。 首先AUC值是一个概率值,当你随机挑选一个正样本以及一个负样本,当前的分类...

空空如也

空空如也

1 2 3 4 5
收藏数 97
精华内容 38
关键字:

多分类算法评价标准