Class NominalPrediction

java.lang.Object
weka.classifiers.evaluation.NominalPrediction
All Implemented Interfaces:
Serializable, Prediction, RevisionHandler

public class NominalPrediction extends Object implements Prediction, Serializable, RevisionHandler
Encapsulates an evaluatable nominal prediction: the predicted probability distribution plus the actual class value.
Version:
$Revision: 8034 $
Author:
Len Trigg (len@reeltwo.com)
See Also:
  • Field Summary

    Fields inherited from interface weka.classifiers.evaluation.Prediction

    MISSING_VALUE
  • Constructor Summary

    Constructors
    Constructor
    Description
    NominalPrediction(double actual, double[] distribution)
    Creates the NominalPrediction object with a default weight of 1.0.
    NominalPrediction(double actual, double[] distribution, double weight)
    Creates the NominalPrediction object.
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    Gets the actual class value.
    double[]
    Gets the predicted probabilities
    Returns the revision string.
    static double[]
    makeDistribution(double predictedClass, int numClasses)
    Convert a single prediction into a probability distribution with all zero probabilities except the predicted value which has probability 1.0.
    static double[]
    makeUniformDistribution(int numClasses)
    Creates a uniform probability distribution -- where each of the possible classes is assigned equal probability.
    double
    Calculates the prediction margin.
    double
    Gets the predicted class value.
    Gets a human readable representation of this prediction.
    double
    Gets the weight assigned to this prediction.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • NominalPrediction

      public NominalPrediction(double actual, double[] distribution)
      Creates the NominalPrediction object with a default weight of 1.0.
      Parameters:
      actual - the actual value, or MISSING_VALUE.
      distribution - the predicted probability distribution. Use NominalPrediction.makeDistribution() if you only know the predicted value.
    • NominalPrediction

      public NominalPrediction(double actual, double[] distribution, double weight)
      Creates the NominalPrediction object.
      Parameters:
      actual - the actual value, or MISSING_VALUE.
      distribution - the predicted probability distribution. Use NominalPrediction.makeDistribution() if you only know the predicted value.
      weight - the weight assigned to the prediction.
  • Method Details

    • distribution

      public double[] distribution()
      Gets the predicted probabilities
      Returns:
      the predicted probabilities
    • actual

      public double actual()
      Gets the actual class value.
      Specified by:
      actual in interface Prediction
      Returns:
      the actual class value, or MISSING_VALUE if no prediction was made.
    • predicted

      public double predicted()
      Gets the predicted class value.
      Specified by:
      predicted in interface Prediction
      Returns:
      the predicted class value, or MISSING_VALUE if no prediction was made.
    • weight

      public double weight()
      Gets the weight assigned to this prediction. This is typically the weight of the test instance the prediction was made for.
      Specified by:
      weight in interface Prediction
      Returns:
      the weight assigned to this prediction.
    • margin

      public double margin()
      Calculates the prediction margin. This is defined as the difference between the probability predicted for the actual class and the highest predicted probability of the other classes.
      Returns:
      the margin for this prediction, or MISSING_VALUE if either the actual or predicted value is missing.
    • makeDistribution

      public static double[] makeDistribution(double predictedClass, int numClasses)
      Convert a single prediction into a probability distribution with all zero probabilities except the predicted value which has probability 1.0. If no prediction was made, all probabilities are zero.
      Parameters:
      predictedClass - the index of the predicted class, or MISSING_VALUE if no prediction was made.
      numClasses - the number of possible classes for this nominal prediction.
      Returns:
      the probability distribution.
    • makeUniformDistribution

      public static double[] makeUniformDistribution(int numClasses)
      Creates a uniform probability distribution -- where each of the possible classes is assigned equal probability.
      Parameters:
      numClasses - the number of possible classes for this nominal prediction.
      Returns:
      the probability distribution.
    • toString

      public String toString()
      Gets a human readable representation of this prediction.
      Overrides:
      toString in class Object
      Returns:
      a human readable representation of this prediction.
    • getRevision

      public String getRevision()
      Returns the revision string.
      Specified by:
      getRevision in interface RevisionHandler
      Returns:
      the revision