如何选择用于评估分类结果的指标?

时间:2019-03-09 08:51:38

标签: python classification evaluation confusion-matrix multiclass-classification

最近,我们开发了一个名为PyCM的python库,专门用于分析多类混淆矩阵。在此模块的version 1.9中添加了参数推荐器系统,以便考虑输入数据集的特征及其分类问题来推荐大多数相关参数。 这个新选项非常具有挑战性,并引发了许多问题。首先,我尝试解释这些假设并描述此模块在本部分中的工作方式。之后,将需要提出一些问题来评估此推荐系统的性能。

考虑的特征:

建议参数的特征如下:

  1. 分类问题类型(二进制或多分类)
  2. 数据集类型(平衡或不平衡)

应该注意的是,如果问题是不平衡数据集上的二进制或多类分类,则建议参数时考虑只是不平衡。因此,被检查状态可以分为三大类:

  1. 平衡数据集-二进制分类
  2. 平衡数据集–多类分类
  3. 不平衡的数据集

不平衡的定义:

很容易认识到分类问题是二进制还是多类的事实。但是,对于数据集而言,平衡与不平衡之间的界限尚不清楚。在用于检查输入数据集是否平衡的PyCM模块中,引入了定义。根据此定义,如果人口最多的阶层与人口最匮乏的阶层的比率大于3,则认为数据集不平衡。

推荐参数:

已根据每个参数的相应论文以及该论文要求的功能收集了推荐列表。有关更多信息,请阅读document of PyCM或访问project page

  • 二进制-推荐的平衡参数:ACC, TPR, PPV, AUC, AUCI, TNR, F1

  • 多类–推荐的平衡参数:ERR, TPR Micro, TPR Macro, PPV Micro, PPV Macro, ACC, Overall ACC, MCC, Overall MCC, BCD, Hamming Loss, Zero-one Loss

  • 推荐的参数不平衡:Kappa, SOA1(Landis & Koch), SOA2(Fleiss), SOA3(Altman), SOA4(Cicchetti), CEN, MCEN, MCC, J, Overall J, Overall MCC, Overall CEN, Overall MCEN, AUC, AUCI, G, DP, DPI, GI

问题: 1.关于失衡的建议定义是否正确?对于此特征是否还有更全面的定义? 2.对于不平衡的数据集,针对二元分类和多分类问题建议相同的参数是否正确? 3.推荐参数列表是否正确和完整?还有其他推荐参数吗? 4.是否还有其他特性(如二进制/多类和平衡/不平衡)会影响评估分类方法的结果?

网站http://www.pycm.ir/

Github https://github.com/sepandhaghighi/pycm

纸张https://www.theoj.org/joss-papers/joss.00729/10.21105.joss.00729.pdf

0 个答案:

没有答案