• 多分类问题中查全率和查准率的理解


    查全率查准率是从信息检索来的,那么我们就得先看看原来的是怎么定义的:

    查全率——它是指检出的相关文献量与检索系统中相关文献总量的比率,是衡量信息检索系统检出相关文献能力的尺度。
    查准率——它是指检出的相关文献量与检出文献总量的比率,是衡量信息检索系统检出文献准确度的尺度。

    使用泛指性较强的检索语言(如上位类、上位主题词)能提高查全率,但查准率下降。
    使用专指性较强的检索语言(如下位类、下位主题词)能提高查准率,但查全率下降。
    下面用多分类问题举个例子,首先我们计算多分类问题的混淆矩阵,然后计算各个指标,结果如下:

    confus =

    69            2              4              6           1          14           4
    3             70            6              2           7           6            6
    4              6             66             2           5           6          11
    2              2             18            51          9          12          6
    4              8              1               2          80         3           2
    7             6               3              7           2           67        8
    11           6               7              5           7           6          58

    accuracy =0.6586

    numcorrect =461

    precision =0.6900    0.7000    0.6286    0.6800    0.7207    0.5877    0.6105

    recall =0.6900    0.7000    0.6600    0.5100    0.8000    0.6700    0.5800

    F =0.6900    0.7000    0.6439    0.5829    0.7583    0.6262    0.5949

    这是一个7-分类问题,每一类样本100。混淆矩阵看见了么? confus矩阵中每一行和等于该类的样本和=100;但是每一列就不是100了,每一列其实的意义,就是信息检索的返回的所有结果。

    假设我们用类别3的标签进行搜索,那么会返回confus中第3列的所有数据,没问题吧?因为分到第3类的确实是这些数据,一共有105个,因为有其他的类也分到这个类中了呗。

    所以第三类的查准率=检索出的相关文档数目(66)/检索返回的所有的文档数目(105)=0.6288=precision(3)。结果是没问题的吧。

    查全率那就是检索出的文档数目(66)/数据库中的第三类的所有文档数目(检索出的第三类+没有检索出的第三类=confus第三行的和=100)=0.66=recall(3)。也没问题吧。

  • 相关阅读:
    Jmeter在命令行运行技巧
    Tomcat6 一些调优设置内存和连接数
    用例结构优化心得
    LoadRunner 调用dll方法
    DLL接口自动化测试总结
    Loadrunner进行md5加密方法
    Loadrunner检查点使用总结
    网络上可供测试的Web Service
    04 json,xml混合封装通信
    03 xml封装通信接口
  • 原文地址:https://www.cnblogs.com/sddai/p/10763159.html
Copyright © 2020-2023  润新知