Voltar aos resultados

MRR e NDCG

Mean Reciprocal Rank (MRR) / Normalized Discounted Cumulative Gain (NDCG)

Métrica de ranking
Avançado
Categoria: Evals, testes e métricasSubcategoria: Métricas de recuperação

O que significa

São métricas que consideram a posição dos itens relevantes em um ranking, e não apenas se eles aparecem. O MRR (Mean Reciprocal Rank) é a média, sobre as consultas, do inverso da posição do primeiro item relevante. Mede quão rápido o usuário encontra algo útil: se o primeiro resultado relevante está na posição 1, vale 1; na posição 2, vale 0,5; na 3, vale 0,33. O NDCG (Normalized Discounted Cumulative Gain) soma a relevância de cada item, descontada pela posição, e normaliza pelo ranking ideal. Mede a qualidade da ordenação inteira, permitindo graus de relevância.

Como usar na prática de produto

Em Produto, para busca e recomendação, a ordem é o produto. O MRR é a métrica certa quando basta um resultado bom, como em FAQs ou busca de precedentes. O NDCG é a métrica certa quando a pessoa consome vários resultados, como uma lista de produtos. Ambas são úteis em testes A/B de mudanças de ordenação, para medir o efeito de um novo reranker ou de um novo modelo. Por exemplo, a reordenação por reranker subiu o MRR de 0,54 para 0,78: o resultado certo passou de aparecer, em média, na segunda posição para quase sempre na primeira.

Quando usar este termo ou outro

Use MRR quando um único resultado bom resolve a necessidade do usuário. Use NDCG quando a lista inteira importa e há graus de relevância entre os itens. Use recall@k quando só importa que os itens certos estejam entre os k primeiros, sem se preocupar com a ordem exata. Uma forma simples de diferenciar: MRR mede a posição do primeiro acerto; NDCG mede a qualidade da lista toda.

Exemplos de aplicação

  • Reranker: MRR de 0,54 para 0,78 após reordenação.
  • Busca de FAQ: usar MRR, porque um resultado certo resolve.
  • Catálogo: usar NDCG, porque a pessoa navega por vários itens.
  • A/B: medir o efeito de mudanças de ordenação com NDCG.
  • Relevância graduada: distinguir “muito relevante” de “um pouco relevante” no NDCG.

Como calcular

Fórmula do MRR: MRR = (1 ÷ número de consultas) × soma de (1 ÷ posição do primeiro item relevante) para cada consulta. Fórmula do NDCG: DCG@k = soma, para as k primeiras posições, de relevância do item ÷ log₂(posição + 1). NDCG@k = DCG@k ÷ DCG ideal@k (o DCG que se obteria com os mesmos itens na melhor ordem possível). Passo a passo: 1. Para cada consulta, marque a relevância de cada item (binária para MRR; graduada para NDCG). 2. Rode a busca e registre a posição de cada item. 3. Para o MRR, encontre a posição do primeiro relevante e calcule o inverso; faça a média. 4. Para o NDCG, calcule o DCG do ranking obtido e do ranking ideal; divida um pelo outro. Exemplo (MRR): Três consultas com o primeiro relevante nas posições 1, 3 e 2: MRR = (1 + 0,33 + 0,5) ÷ 3 = 0,61. Como interpretar: MRR de 0,61 indica que o primeiro resultado útil aparece, em média, entre a primeira e a segunda posição. NDCG varia de 0 a 1; quanto mais perto de 1, mais próxima a ordenação está da ideal.

Origem do termo

MRR: TREC QA track (Voorhees, 1999). NDCG: Järvelin & Kekäläinen (2002).

Fonte técnica

Järvelin & Kekäläinen, Cumulated Gain-based Evaluation of IR Techniques (2002); Manning et al., Introduction to Information Retrieval

Termos relacionados