多类分类器的显着性检验

机器算法验证 假设检验 统计学意义 多级
2022-04-01 08:19:44

我想做一个显着性测试来检查一些多类分类器的性能差异是否是偶然的。这些分类器目前由 F1 测量并使用相同的数据。我有一个训练集,我分为训练集(80%)和验证集(20%)。我还有一小部分来自一个看不见的语料库的测试数据,我必须用它来执行最终测试。我没有太多统计背景,所以我想验证以下内容

  1. 我应该对验证集还是小测试集进行显着性检验?
    我相信答案应该是小型测试集,因为这最终将成为实际用途的测试集。虽然我不确定 150 个样本是否足够好。

  2. 我阅读了有关 McNemar 的测试 [ http://www.john-uebersax.com/stat/mcnemar.htm]但我了解它主要用于二进制分类器。这可以通过 Stuart-Maxwell 检验推广到 KxK 盒。到目前为止,这是我在阅读后了解到的。如果可以的话,我想要一些指示。说 2 种算法,有 3 类要分类。因此,当我为 McNemars 构建 3x3 表时,我将采用这种方式进行设置。
    在 N 个测试样本中,a 表示 Algo1 和 Algo2 都预测 A 类的次数,b 表示 Algo1 预测 B 类但 Algo2 预测 A 类的次数……以此类推。让列向量 d 包含任何 K-1 个值。令 S 表示 d 的元素的方差和协方差的 (K - 1) × (K - 1) 矩阵。S 的元素等于:
    sAA = A. + .A - 2*(a)
    sBB = B. + .B - 2*(e)
    sCC = C. + .C - 2*(i)
    sAB = -(b + d)
    sBC = - (f + h)
    sAC = -(c + g)
    Stuart-Maxwell 统计量计算如下:
    X2= d'S1d。
    其中 d' 是 d 和矩阵的转置S1是 S 的倒数。
    X2被解释为自由度等于 K-1=3 的卡方值。
    最后,通过 p 值,我可以确定 algo1 和 algo2 在统计上是否不同。

+---------+--------------+------------ --+--------------+------------+
| | Algo1 A 类 | Algo1 B 类 | Algo1 ClassC | 行总计 |
+---------+--------------+------------ --+--------------+------------+
| Algo2 A 类 | 一个 | 乙 | c | A.=a+b+c |
| Algo2 B 类 | d | 电子| f | B.=d+e+f |
| Algo2 ClassC | 克 | h | 我 | C.=g+h+i |
| 科尔总计 | .A=a+d+g | .B=b+e+h | .C=c+f+i | |
| 向量 d=(dA,dB,dC) | dA=A.-.A | 分贝=B.-.B | dC=C.-.C | |
+---------+--------------+------------ --+--------------+------------+

谢谢你。

0个回答
没有发现任何回复~