Mean reciprocal rank

The mean reciprocal rank is a statistic measure for evaluating any process that produces a list of possible responses to a sample of queries, ordered by probability of correctness. The reciprocal rank of a query response is the multiplicative inverse of the rank of the first correct answer: 1 for first place, $1/undefined$ for second place, $1/undefined$ for third place and so on. The mean reciprocal rank is the average of the reciprocal ranks of results for a sample of queries Q:


 * $$ \text{MRR} = \frac{1}{|Q|} \sum_{i=1}^{|Q|} \frac{1}{\text{rank}_i}. \!$$

where $$ \text{rank}_i$$ refers to the rank position of the first relevant document for the i-th query.

The reciprocal value of the mean reciprocal rank corresponds to the harmonic mean of the ranks.

Example
Suppose we have the following three queries for a system that tries to translate English words to their plurals. In each case, the system makes three guesses, with the first one being the one it thinks is most likely correct:

Given those three samples, we could calculate the mean reciprocal rank as $$ (1/3 + 1/2 + 1) / 3 = 11/18$$, or approximately 0.61.

If none of the proposed results are correct, the reciprocal rank is 0. Note that only the rank of the first relevant answer is considered, and possible further relevant answers are ignored. If users are also interested in further relevant items, mean average precision is a potential alternative metric.