Friedman testとNemenyi testメモ

はじめに

複数のアルゴリズムの結果の有意差検定に使用されていたので、メモ。

より詳細に紹介されているのは以下の論文。
Demsar, Statistical Comparisons of Classifiers over Multiple Data Sets, 2006
http://jmlr.csail.mit.edu/papers/volume7/demsar06a/demsar06a.pdf
1999年から2003年のICMLの論文で使われた検定について調査して、アルゴリズムやデータセットの種類によって使うべき検定方法を紹介している。

Friedman test

  • 対応のある順序尺度の3群以上の平均順位に有意差があるかどうかを検定(ノンパラメトリック検定)
  • 帰無仮説(H0) : μ_0=μ_1=…=μ_k (すべての平均順位が等しい)
  • 検定方法
    • χ^2_F = 12n/{k(k+1)} Σ_{i=1}^k { (R_i)^2 - k(k+1)^2 / 4 }を計算
    • 自由度(k-1)のχ^2検定をする。nやkが小さい場合はχ^2分布に近似しないので、検定表などを利用
    • k : 群数
    • n : データ数
    • Ri : 群iの順位平均(タイがある場合はそれらの平均順位を利用)

χ^2_Fは、nとkが十分大きいとき(n>10, k>5)、k-1自由度のχ^2分布になるとされるが、
F_F = { (n-1)χ^2_F } / { n(k-1) - χ^2_F }がk-1と(k-1)(n-1)自由度のF分布になることも示されており、こちらの方がよりよい統計量であることが示されているっぽい。

平均順位とは、「1.0、0.5、0.5、0.1」のようなスコアが出たとして、タイの順位は2位と3位に該当するので、その平均を取って、「1位、2.5位、2.5位、4位」のようにする。

http://www.snap-tck.com/room04/c01/stat/stat04/stat0403.html
http://www2.hak.hokkyodai.ac.jp/fukuda/lecture/SocialLinguistics/12nonpara.html

post-hoc test (事後検定)

Nemenyi test