Class IntervalEstimatorEvaluator

  • All Implemented Interfaces:
    adams.core.CleanUpHandler, adams.core.Destroyable, adams.core.GlobalInfoSupporter, adams.core.logging.LoggingLevelHandler, adams.core.logging.LoggingSupporter, adams.core.option.OptionHandler, adams.core.SerializableObject, adams.core.ShallowCopySupporter<Evaluator>, adams.core.SizeOfHandler, Evaluator, WekaClassifierBasedEvaluator, Serializable, Comparable

    public class IntervalEstimatorEvaluator
    extends AbstractSerializableEvaluator
    implements WekaClassifierBasedEvaluator
    Stores the interval provided by the interval estimator classifier

    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -missing-evaluation <float> (property: missingEvaluation)
        The value to use as replacement for missing evaluations.
        default: -999999.0
     
    -serialization-file <adams.core.io.PlaceholderFile> (property: serializationFile)
        The file to serialize the generated internal model to.
        default: ${CWD}
     
    -override-serialized-file <boolean> (property: overrideSerializedFile)
        If set to true, then any serialized file will be ignored and the setup for 
        serialization will be regenerated.
        default: false
     
    -classifier <weka.classifiers.Classifier> (property: classifier)
        The classifier to use (must implement weka.classifiers.IntervalEstimator
        ).
        default: weka.classifiers.functions.GaussianProcesses -L 1.0 -N 0 -K \"weka.classifiers.functions.supportVector.PolyKernel -E 1.0 -C 250007\"
     
    -confidence-level <double> (property: confidenceLevel)
        The confidence level to use (0-1).
        default: 0.95
        minimum: 0.0
        maximum: 1.0
     
    -normalize <boolean> (property: normalize)
        If enabled, the confidence intervals get normalized to the class range.
        default: false
     
    Author:
    FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_Classifier

        protected weka.classifiers.Classifier m_Classifier
        the interval estimator to use.
      • m_ActualClassifier

        protected weka.classifiers.Classifier m_ActualClassifier
        the actual classifier in use.
      • m_ConfidenceLevel

        protected double m_ConfidenceLevel
        the confidence level.
      • m_Normalize

        protected boolean m_Normalize
        whether to normalize.
      • m_TrainingData

        protected weka.core.Instances m_TrainingData
        the training data.
      • m_Header

        protected weka.core.Instances m_Header
        the header.
      • m_ClassRange

        protected double[] m_ClassRange
        the class range.
    • Constructor Detail

      • IntervalEstimatorEvaluator

        public IntervalEstimatorEvaluator()
    • Method Detail

      • globalInfo

        public String globalInfo()
        Returns a string describing the object.
        Specified by:
        globalInfo in interface adams.core.GlobalInfoSupporter
        Specified by:
        globalInfo in class adams.core.option.AbstractOptionHandler
        Returns:
        a description suitable for displaying in the gui
      • defineOptions

        public void defineOptions()
        Adds options to the internal list of options.
        Specified by:
        defineOptions in interface adams.core.option.OptionHandler
        Overrides:
        defineOptions in class AbstractSerializableEvaluator
      • getDefaultMissingEvaluation

        protected float getDefaultMissingEvaluation()
        Returns the default value in case of missing evaluations.
        Specified by:
        getDefaultMissingEvaluation in class AbstractEvaluator
        Returns:
        the default value
      • setClassifier

        public void setClassifier​(weka.classifiers.Classifier value)
        Sets the interval estimator to use.
        Specified by:
        setClassifier in interface WekaClassifierBasedEvaluator
        Parameters:
        value - the classifier
      • classifierTipText

        public String classifierTipText()
        Returns the tip text for this property.
        Specified by:
        classifierTipText in interface WekaClassifierBasedEvaluator
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setConfidenceLevel

        public void setConfidenceLevel​(double value)
        Sets the confidence level to use.
        Parameters:
        value - the level (0-1)
      • getConfidenceLevel

        public double getConfidenceLevel()
        Returns the confidence level in use.
        Returns:
        the level (0-1)
      • confidenceLevelTipText

        public String confidenceLevelTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setNormalize

        public void setNormalize​(boolean value)
        Sets whether to normalize the confidence intervals using the class range.
        Parameters:
        value - true if to normalize
      • getNormalize

        public boolean getNormalize()
        Returns whether to normalize the confidence intervals using the class range.
        Returns:
        true if to normalize
      • normalizeTipText

        public String normalizeTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • performBuild

        protected boolean performBuild​(weka.core.Instances data)
        Builds the evaluator.
        Specified by:
        performBuild in class AbstractEvaluator
        Parameters:
        data - the instance to check
        Returns:
        true if build successful
      • postProcess

        protected double[][] postProcess​(double[][] levels)
        Post-processes the confidence levels if necessary.
        Parameters:
        levels - the levels to process
        Returns:
        the updated levels
      • performEvaluate

        protected Float performEvaluate​(weka.core.Instance data)
        Performs the actual evaluation. Returns the range of the first confidence interval (upper - lower).
        Overrides:
        performEvaluate in class AbstractEvaluator
        Parameters:
        data - the instance to check
        Returns:
        evaluation metric, AbstractEvaluator.m_MissingEvaluation in case the class value is missing
      • initSerializationSetup

        public void initSerializationSetup()
        Regenerates all the objects that are necessary for serialization.
        Specified by:
        initSerializationSetup in interface adams.core.SerializableObject
      • retrieveSerializationSetup

        public Object[] retrieveSerializationSetup()
        Returns the member variables to serialize to a file.
        Specified by:
        retrieveSerializationSetup in interface adams.core.SerializableObject
        Returns:
        the objects to serialize
      • setSerializationSetup

        public void setSerializationSetup​(Object[] value)
        Updates the member variables with the provided objects obtained from deserialization.
        Specified by:
        setSerializationSetup in interface adams.core.SerializableObject
        Parameters:
        value - the deserialized objects
      • cleanUp

        public void cleanUp()
        Cleans up data structures, frees up memory.
        Specified by:
        cleanUp in interface adams.core.CleanUpHandler