Rand index



The Rand index or Rand measure (named after William M. Rand) in statistics, and in particular in data clustering, is a measure of the similarity between two data clusterings. A form of the Rand index may be defined that is adjusted for the chance grouping of elements, this is the adjusted Rand index. The Rand index is the accuracy of determining if a link belongs within a cluster or not.

Definition
Given a set of $$n$$ elements $$S = \{o_1, \ldots, o_n\}$$ and two partitions of $$S$$ to compare, $$X = \{X_1, \ldots, X_r\}$$, a partition of S into r subsets, and $$Y = \{Y_1, \ldots, Y_s\}$$, a partition of S into s subsets, define the following:
 * $$a$$, the number of pairs of elements in $$S$$ that are in the same subset in $$X$$ and in the same subset in $$Y$$
 * $$b$$, the number of pairs of elements in $$S$$ that are in different subsets in $$X$$ and in different subsets in $$Y$$
 * $$c$$, the number of pairs of elements in $$S$$ that are in the same subset in $$X$$ and in different subsets in $$Y$$
 * $$d$$, the number of pairs of elements in $$S$$ that are in different subsets in $$X$$ and in the same subset in $$Y$$

The Rand index, $$R$$, is:
 * $$ R = \frac{a+b}{a+b+c+d} = \frac{a+b}$$

Intuitively, $$a + b$$ can be considered as the number of agreements between $$X$$ and $$Y$$ and $$c + d$$ as the number of disagreements between $$X$$ and $$Y$$.

Since the denominator is the total number of pairs, the Rand index represents the frequency of occurrence of agreements over the total pairs, or the probability that $$X$$ and $$Y$$ will agree on a randomly chosen pair.

$$ {n \choose 2 }$$ is calculated as $$ n(n-1)/2$$.

Similarly, one can also view the Rand index as a measure of the percentage of correct decisions made by the algorithm. It can be computed using the following formula:

RI = \frac {TP + TN} {TP + FP + FN + TN} $$
 * where $$TP$$ is the number of true positives, $$TN$$ is the number of true negatives, $$FP$$ is the number of false positives, and $$FN$$ is the number of false negatives.

Properties
The Rand index has a value between 0 and 1, with 0 indicating that the two data clusterings do not agree on any pair of points and 1 indicating that the data clusterings are exactly the same.

In mathematical terms, a, b, c, d are defined as follows:


 * $$a = |S^{*}|$$, where $$S^{*} = \{ (o_{i}, o_{j}) \mid o_{i}, o_{j} \in X_{k}, o_{i}, o_{j} \in Y_{l}\}$$
 * $$b = |S^{*}|$$, where $$S^{*} = \{ (o_{i}, o_{j}) \mid o_{i} \in X_{k_{1}}, o_{j} \in X_{k_{2}}, o_{i} \in Y_{l_{1}}, o_{j} \in Y_{l_{2}}\}$$
 * $$c = |S^{*}|$$, where $$S^{*} = \{ (o_{i}, o_{j}) \mid o_{i}, o_{j} \in X_{k}, o_{i} \in Y_{l_{1}}, o_{j} \in Y_{l_{2}}\}$$
 * $$d = |S^{*}|$$, where $$S^{*} = \{ (o_{i}, o_{j}) \mid o_{i} \in X_{k_{1}}, o_{j} \in X_{k_{2}}, o_{i}, o_{j} \in Y_{l}\}$$

for some $$1 \leq i,j \leq n, i \neq j, 1 \leq k, k_{1}, k_{2} \leq r, k_{1} \neq k_{2}, 1 \leq l, l_{1},l_{2} \leq s, l_{1} \neq l_{2}$$

Relationship with classification accuracy
The Rand index can also be viewed through the prism of binary classification accuracy over the pairs of elements in $$S$$. The two class labels are "$$o_{i}$$ and $$o_{j}$$ are in the same subset in $$X$$ and $$Y$$" and "$$o_{i}$$ and $$o_{j}$$ are in different subsets in $$X$$ and $$Y$$".

In that setting, $$a$$ is the number of pairs correctly labeled as belonging to the same subset (true positives), and $$b$$ is the number of pairs correctly labeled as belonging to different subsets (true negatives).

Adjusted Rand index
The adjusted Rand index is the corrected-for-chance version of the Rand index. Such a correction for chance establishes a baseline by using the expected similarity of all pair-wise comparisons between clusterings specified by a random model. Traditionally, the Rand Index was corrected using the Permutation Model for clusterings (the number and size of clusters within a clustering are fixed, and all random clusterings are generated by shuffling the elements between the fixed clusters). However, the premises of the permutation model are frequently violated; in many clustering scenarios, either the number of clusters or the size distribution of those clusters vary drastically. For example, consider that in K-means the number of clusters is fixed by the practitioner, but the sizes of those clusters are inferred from the data. Variations of the adjusted Rand Index account for different models of random clusterings.

Though the Rand Index may only yield a value between 0 and +1, the adjusted Rand index can yield negative values if the index is less than the expected index.

The contingency table
Given a set $S$ of $n$ elements, and two groupings or partitions (e.g. clusterings) of these elements, namely $$X = \{ X_1, X_2, \ldots, X_r \}$$ and $$Y = \{ Y_1, Y_2, \ldots , Y_s \}$$, the overlap between $X$ and $Y$ can be summarized in a contingency table $$\left[n_{ij}\right]$$ where each entry $$n_{ij}$$ denotes the number of objects in common between $$X_i$$ and $$Y_j$$ : $$n_{ij}=|X_i \cap Y_j|$$.
 * $$\begin{array}{c|cccc|c}

{{} \atop X}\!\diagdown\!^Y & Y_1& Y_2& \cdots& Y_s& \text{sums} \\ \hline X_1& n_{11}& n_{12}& \cdots& n_{1s}& a_1 \\ X_2& n_{21}& n_{22}& \cdots& n_{2s}& a_2 \\ \vdots& \vdots& \vdots& \ddots& \vdots& \vdots \\ X_r& n_{r1}& n_{r2}& \cdots& n_{rs}& a_r \\ \hline \text{sums}& b_1& b_2& \cdots& b_s& \end{array}$$

Definition
The original Adjusted Rand Index using the Permutation Model is
 * $$ARI = \frac{ \left. \sum_{ij} \binom{n_{ij}}{2} - \left[\sum_i \binom{a_i}{2} \sum_j \binom{b_j}{2}\right] \right/ \binom{n}{2} }{ \left. \frac{1}{2} \left[\sum_i \binom{a_i}{2} + \sum_j \binom{b_j}{2}\right] - \left[\sum_i \binom{a_i}{2} \sum_j \binom{b_j}{2}\right] \right/ \binom{n}{2} }$$

where $$n_{ij}, a_i, b_j$$ are values from the contingency table.