tensorflow_ranking/python/metrics_impl.py [595:611]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    self._name = name
    self._topn = topn
    self._gain_fn = gain_fn
    self._rank_discount_fn = rank_discount_fn

  @property
  def name(self):
    """The metric name."""
    return self._name

  def _compute_impl(self, labels, predictions, weights, mask):
    """See `_RankingMetric`."""
    topn = tf.shape(predictions)[1] if self._topn is None else self._topn
    sorted_labels, sorted_weights = utils.sort_by_scores(
        predictions, [labels, weights], topn=topn, mask=mask)
    dcg = _discounted_cumulative_gain(sorted_labels, sorted_weights,
                                      self._gain_fn, self._rank_discount_fn)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



tensorflow_ranking/python/metrics_impl.py [636:652]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    self._name = name
    self._topn = topn
    self._gain_fn = gain_fn
    self._rank_discount_fn = rank_discount_fn

  @property
  def name(self):
    """The metric name."""
    return self._name

  def _compute_impl(self, labels, predictions, weights, mask):
    """See `_RankingMetric`."""
    topn = tf.shape(predictions)[1] if self._topn is None else self._topn
    sorted_labels, sorted_weights = utils.sort_by_scores(
        predictions, [labels, weights], topn=topn, mask=mask)
    dcg = _discounted_cumulative_gain(sorted_labels, sorted_weights,
                                      self._gain_fn, self._rank_discount_fn)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



