autointent.metrics.retrieval.retrieval_ndcg#

autointent.metrics.retrieval.retrieval_ndcg(query_labels, candidates_labels, k=None)#

Calculate the Normalized Discounted Cumulative Gain (NDCG) at position k.

NDCG at position \(k\) is calculated as:

\[\text{NDCG@k} = \frac{\text{DCG@k}}{\text{IDCG@k}}\]

where: - \(\text{DCG@k}\) is the Discounted Cumulative Gain at position \(k\), - \(\text{IDCG@k}\) is the Ideal Discounted Cumulative Gain at position \(k\).

The NDCG value is normalized such that it is between 0 and 1, where 1 indicates the ideal ranking.

Parameters:
  • query_labels (autointent.metrics.custom_types.LABELS_VALUE_TYPE) – For each query, this list contains its class labels

  • candidates_labels (autointent.metrics.custom_types.CANDIDATE_TYPE) – For each query, these lists contain class labels of items ranked by a retrieval model (from most to least relevant)

  • k (int | None) – Number of top items to consider for each query

Returns:

Score of the retrieval metric

Return type:

float