发布于 

Mann-Whitney U Test 与 ROC曲线

在了解U统计量与AUC之间的关系前,先来复习一下Mann-Whitney U Test。

首先放上AUC在统计上的意义:

随机选取一个正例和一个负例,分类器给正例的打分大于分类器给负例的打分的概率

1. Mann-Whitney U Test

Mann-Whitney U Test常常用来判断两个群体间的分布是否相同。在统计学上,该检验的null hypothesis与alternative hypothesis为:

1.1 例子:龟兔赛跑

假设伊索不满意龟兔赛跑的结果,他想要一个具有泛性的比赛结果。于是他找来了8只乌龟,8只兔子,让他们同时赛跑,最后的比赛名次为:
兔、兔、兔、兔、兔、兔、兔、龟、龟、龟、龟、龟、龟、龟、龟、兔。

每只乌龟战胜的兔子量为:1、1、1、1、1、1、1、1,则$U_1 = 8$。
每只兔子战胜的乌龟量为:8、8、8、8、8、8、8、0,则$U_2 = 56$。
则:

更加泛性上来讲,U统计量的计算方式如下:

其中$R$代表名次之和,$n$代表样本量。

因为$R_1, R_2$均为排名之和,所以$R_1+R_2 = N(N+1)/2$,并且$N = n_1 + n_2$,所以

回到龟兔赛跑的例子中,$U_1 + U_2 = 8 \times 8 = 64$。
解下来我们需要根据求得的U去决定结论是否显著,$U = min([U_1, U_2]) = 8$,从Mann-Whitney U test临界值表上可以看到,$n_1 = 8, n_2 = 8$在$\alpha = 0.05 $的情况下$U = 13$。因为$8 < 13$,所以我们便可以拒绝零假设,说明两个组的分布是不同的(均值/中位数不同),所以我们便可以认为兔子确实跑的比乌龟快。

2. Roc面积与Mann-Whitney U统计量

假设我们的分类器结果如以下表

$n =$总样本量
$e =$预测为正的样本
$e’=$预测为负的样本

在不考虑排名相同的情况下(如上述表),我们预测的阈值每越过一个样本:

  • 初始为100%,则没有预测为正的样本,则TPR与FPR均为0;
  • 越过一个样本,阈值为95.2 - 98.4的任何数,则我们有一个TP(预测为正的样本,且该样本实际为正),则TPR上升,FPR不变,以此类推

如果越过一个FP(预测为正的样本,但实际为负的样本),则TPR不变,FPR上升。我们将越过FP的数量,记为$f$。

所以,每次越过一个样本,ROC曲线增加的面积为:

整体ROC曲线下的面积,即$AUC$为:

下一步我们需要计算$\sum_i^e f_i$。与上面龟兔赛跑的例子类似,我们可以使用两种方法计算

分类器Output

通过排名我们可以看到:
每个0超过的1的数量为:4,1,1,1,0,0,0,则$U_0 = 7$。
每个1超过的0的数量为:8,8,8,7,7,7,4,则$U_1 = 49$。
则$U = 7$

泛性的公式如下:

则$AUC = 1 - \frac{1}{7\times 8} \times 7 = 0.775$

reference:
Areas beneath the relative operating characteristics (ROC) and relative operating levels (ROL) curves: Statistical significance and interpretation