matchzoo.metrics.normalized_discounted_cumulative_gain
¶
Normalized discounted cumulative gain metric for ranking.
Module Contents¶
-
class
matchzoo.metrics.normalized_discounted_cumulative_gain.
NormalizedDiscountedCumulativeGain
(k:int=1, threshold:float=0.0)¶ Bases:
matchzoo.engine.base_metric.RankingMetric
Normalized discounted cumulative gain metric.
-
ALIAS
= ['normalized_discounted_cumulative_gain', 'ndcg']¶
-
__repr__
(self)¶ Returns: Formated string representation of the metric.
-
__call__
(self, y_true:np.array, y_pred:np.array)¶ Calculate normalized discounted cumulative gain (ndcg).
Relevance is positive real values or binary values.
Example
>>> y_true = [0, 1, 2, 0] >>> y_pred = [0.4, 0.2, 0.5, 0.7] >>> ndcg = NormalizedDiscountedCumulativeGain >>> ndcg(k=1)(y_true, y_pred) 0.0 >>> round(ndcg(k=2)(y_true, y_pred), 2) 0.52 >>> round(ndcg(k=3)(y_true, y_pred), 2) 0.52 >>> type(ndcg()(y_true, y_pred)) <class 'float'>
Parameters: - y_true – The ground true label of each document.
- y_pred – The predicted scores of each document.
Returns: Normalized discounted cumulative gain.
-