前言
当我们提出一种算法,需要知道我们的算法和现在已有的算法相比,性能是否更优的时候,就需要用到模型性能评估的方法。本篇博客介绍一种模型性能评估的方法:Friedman 检验与 Nemenyi 后续检验。
该方法的特点是:可以进行多个算法的比较。下面看看具体的使用:
具体使用
1. 计算序值
假定我们用 D 1 D_1 D1、 D 2 D_2 D2 、 D 3 D_3 D3 和 D 4 D_4 D4 四个数据集对算法 A A A、 B B B、 C C C 进行比较。首先需要得到每个算法在每个数据集上的测试结果,可以是准确率,也可以是均方误差,然后在每个数据上根据测试性能的好坏进行排序,并赋予序值 1,2,…。如果算法的测试性能相同,则评分排名。比如,在 D 1 D_1 D1 和 D 3 D_3 D3 上, A A A 最好、 B B B 次之, C C C 最差,而在 D 2 D_2 D2 上 A A A 最好、 B B B 和 C C C 性能相同,…,则可以列出如下表所示的序值表,对每一列的序值进行求平均,得到平均序值。