Class

com.spotify.noether

NdcgAtK

Related Doc: package noether

Permalink

case class NdcgAtK[T](k: Int) extends Aggregator[RankingPrediction[T], (Double, Long), Double] with Product with Serializable

Compute the average NDCG value of all the predictions, truncated at ranking position k. The discounted cumulative gain at position k is computed as: sumi=1k (2{relevance of ith item} - 1) / log(i + 1), and the NDCG is obtained by dividing the DCG value on the ground truth set. In the current implementation, the relevance value is binary. If a query has an empty ground truth set, zero will be used as ndcg

See the following paper for detail:

IR evaluation methods for retrieving highly relevant documents. K. Jarvelin and J. Kekalainen

k

the position to compute the truncated ndcg, must be positive

Linear Supertypes
Serializable, Product, Equals, Aggregator[RankingPrediction[T], (Double, Long), Double], Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. NdcgAtK
  2. Serializable
  3. Product
  4. Equals
  5. Aggregator
  6. Serializable
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new NdcgAtK(k: Int)

    Permalink

    k

    the position to compute the truncated ndcg, must be positive

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def andThenPresent[D](present2: (Double) ⇒ D): Aggregator[RankingPrediction[T], (Double, Long), D]

    Permalink
    Definition Classes
    Aggregator
  5. def append(l: (Double, Long), r: RankingPrediction[T]): (Double, Long)

    Permalink
    Definition Classes
    Aggregator
  6. def appendAll(old: (Double, Long), items: TraversableOnce[RankingPrediction[T]]): (Double, Long)

    Permalink
    Definition Classes
    Aggregator
  7. def apply(inputs: TraversableOnce[RankingPrediction[T]]): Double

    Permalink
    Definition Classes
    Aggregator
  8. def applyCumulatively[In <: TraversableOnce[RankingPrediction[T]], Out](inputs: In)(implicit bf: CanBuildFrom[In, Double, Out]): Out

    Permalink
    Definition Classes
    Aggregator
  9. def applyOption(inputs: TraversableOnce[RankingPrediction[T]]): Option[Double]

    Permalink
    Definition Classes
    Aggregator
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def composePrepare[A1](prepare2: (A1) ⇒ RankingPrediction[T]): Aggregator[A1, (Double, Long), Double]

    Permalink
    Definition Classes
    Aggregator
  13. def cumulativeIterator(inputs: Iterator[RankingPrediction[T]]): Iterator[Double]

    Permalink
    Definition Classes
    Aggregator
  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  17. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  18. def join[A2 <: RankingPrediction[T], B2, C2](that: Aggregator[A2, B2, C2]): Aggregator[A2, ((Double, Long), B2), (Double, C2)]

    Permalink
    Definition Classes
    Aggregator
  19. val k: Int

    Permalink

    the position to compute the truncated ndcg, must be positive

  20. def lift: MonoidAggregator[RankingPrediction[T], Option[(Double, Long)], Option[Double]]

    Permalink
    Definition Classes
    Aggregator
  21. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  22. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  23. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  24. def prepare(input: RankingPrediction[T]): (Double, Long)

    Permalink
    Definition Classes
    NdcgAtK → Aggregator
  25. def present(score: (Double, Long)): Double

    Permalink
    Definition Classes
    NdcgAtK → Aggregator
  26. def reduce(items: TraversableOnce[(Double, Long)]): (Double, Long)

    Permalink
    Definition Classes
    Aggregator
  27. def reduce(l: (Double, Long), r: (Double, Long)): (Double, Long)

    Permalink
    Definition Classes
    Aggregator
  28. def reduceOption(items: TraversableOnce[(Double, Long)]): Option[(Double, Long)]

    Permalink
    Definition Classes
    Aggregator
  29. def semigroup: Semigroup[(Double, Long)]

    Permalink
    Definition Classes
    NdcgAtK → Aggregator
  30. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  31. def toFold: Fold[RankingPrediction[T], Option[Double]]

    Permalink
    Definition Classes
    Aggregator
  32. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  35. def zip[A2, B2, C2](ag2: Aggregator[A2, B2, C2]): Aggregator[(RankingPrediction[T], A2), ((Double, Long), B2), (Double, C2)]

    Permalink
    Definition Classes
    Aggregator

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Aggregator[RankingPrediction[T], (Double, Long), Double]

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped