はじめに
クラスタリングの性能評価でよくAdjusted Rand Index (ARI) が使われます。
2つのクラスタリング結果が一致しているとき、ARI=1となる程度しか知りませんでした。
ARIについては日本語のレファレンスが少なくて、数式である程度理解しようと思いましたが、ARIの式を見ると、Σが多く、数弱な自分にはよくわかりまんでした。。
ということで、具体例を用いて自分なりの解釈を記します。
参考文献は以下です。
https://link.springer.com/article/10.1007/BF01908075
https://en.wikipedia.org/wiki/Rand_index
Rand Index (RI)について
RIについてはわかりやすい例を用いた説明がありました。
https://qiita.com/carushi@github/items/192c51ca904fab406115#comments
具体例
例えばX, Yというふたつの実験でそれぞれ対応するn個のサンプルが、別々にクラスタリングをしたときの結果が以下のようになったとする。
X: 1, 2, 1, 1, 2
Y: 1, 1, 2, 1, 2
この5つからとりうるすべてのペア間でX, Yにおけるクラスタリングの結果を比較します。
ペア数は5つから2つを選ぶ組み合わせなので、
{}_5 \mathrm{C} _2=10 (通り)
となります。
評価の基準はそれぞれが同じクラスに入っていたか、そうでないか。
例えば1,2番目のペア同士を比較すると、
X: 1 x 2
Y: 1 o 1
となり、Xのクラスタリング結果は不一致、Yの結果は一致です。
これをすべてのペアに対し、一致、不一致を調査し、その数をContingency tableにまとめます。
$Y_{○}$ | $Y_{×}$ | sum | |
---|---|---|---|
$X_{○}$ | 1 | 3 | 4 |
$X_{×}$ | 3 | 3 | 6 |
sum | 4 | 6 | 10 |
先ほど調査した、Xのクラスタリング結果は不一致、Yの結果は一致の例は2行1列のセルにカウントされています。
XでもYでも同じ結果となっているものは、
$X_{○}$かつ$Y_{○}$のセルと$X_{×}$かつ$Y_{×}$のセルの合計値となります。
この例の場合、
1+3=4
となります。
したがって、RIは
Rand\ index= \frac{(1+3)}{10}=\frac{4}{10} =0.4
となります。
Adjusted rand index(ARI)について
RIの欠点として、二つのクラスタリングに相関がなくても,高い値をとってしまうことが考えられます。
このような問題を解決しようと提案されたのがARIです。
ARIでは,相関のない適当に行われたであろうクラスタリングにペナルティを与えます。
どのようなペナルティが適切でしょうか?
ARIでは,ペナルティ=「相関のない(独立な)クラスタリングをした時のRIの値」と考えます。
具体例
先ほどのRIの例の続きとして、以下このペナルティを求めていきます。
2つのクラスタリング結果が独立であると仮定したとき、
独立なときの期待値を考えます。
E(○,○)=P(X_{○})*P(Y_{○})=\frac{4}{10} *\frac{4}{10} = \frac{16}{100}\\
E(×,×)=P(X_{×})*P(Y_{×})=\frac{6}{10} *\frac{6}{10} = \frac{16}{100}\\
期待値の合計は
{}_n \mathrm{C} _2 \ (E(○,○) +E(×,×))={}_n \mathrm{C} _2*\frac{16}{100}*\frac{16}{100}=\frac{52}{10}=5.2\\
これがペナルティ項となり、ARIは
Adjusted \ Rand\ index= \frac{4-5.2}{10-5.2}=-0.25
となります。