Documentation of 'jsat.classifiers.evaluation.LogLoss' Java class
LogLoss
jsat.classifiers.evaluation

Class LogLoss

  • All Implemented Interfaces:
    java.io.Serializable, ClassificationScore


    public class LogLoss
    extends java.lang.Object
    implements ClassificationScore
    This computes the multi-class Log Loss
    - 1/N Σ∀ i ∈ N log(pi, y)

    Where N is the number of data points and pi, y is the estimated probability of the true class label. The lower the loss score, the better.

    When pi, y = 0 the log loss is uninformatively forced to ∞, even if all other data points are perfectly correct. To avoid this a small nudge factor is added.
    See Also:
    Serialized Form
    • Constructor Detail

      • LogLoss

        public LogLoss()
        Creates a new Log Loss evaluation score
      • LogLoss

        public LogLoss(double nudge)
        Creates a new Log Loss evaluation score
        Parameters:
        nudge - the nudge value to avoid zero probabilities, must be non negative and less than 0.1
      • LogLoss

        public LogLoss(LogLoss toClone)
    • Method Detail

      • addResult

        public void addResult(CategoricalResults prediction,
                              int trueLabel,
                              double weight)
        Description copied from interface: ClassificationScore
        Adds the given result to the score
        Specified by:
        addResult in interface ClassificationScore
        Parameters:
        prediction - the prediction for the data point
        trueLabel - the true label for the data point
        weight - the weigh to assign to the data point
      • addResults

        public void addResults(ClassificationScore other)
        Description copied from interface: ClassificationScore
        The score contained in this object is augmented with the results already accumulated in the other object. This does not result in an averaging, but alters the current object to have the same score it would have had if all the results were originally inserted into this object.

        This method is only required to work if other if of the same class as this object.
        Specified by:
        addResults in interface ClassificationScore
        Parameters:
        other - the object to add the results from
      • equals

        public boolean equals(java.lang.Object obj)
        Specified by:
        equals in interface ClassificationScore
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface ClassificationScore
        Overrides:
        hashCode in class java.lang.Object
      • lowerIsBetter

        public boolean lowerIsBetter()
        Description copied from interface: ClassificationScore
        Returns true if a lower score is better, or false if a higher score is better
        Specified by:
        lowerIsBetter in interface ClassificationScore
        Returns:
        true if a lower score is better
      • getName

        public java.lang.String getName()
        Description copied from interface: ClassificationScore
        Returns the name to present for this score
        Specified by:
        getName in interface ClassificationScore
        Returns:
        the score name

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.