Class OrdinalClassClassifier

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, CapabilitiesHandler, OptionHandler, RevisionHandler, TechnicalInformationHandler

    public class OrdinalClassClassifier
    extends SingleClassifierEnhancer
    implements OptionHandler, TechnicalInformationHandler
    Meta classifier that allows standard classification algorithms to be applied to ordinal class problems.

    For more information see:

    Eibe Frank, Mark Hall: A Simple Approach to Ordinal Classification. In: 12th European Conference on Machine Learning, 145-156, 2001.

    BibTeX:

     @inproceedings{Frank2001,
        author = {Eibe Frank and Mark Hall},
        booktitle = {12th European Conference on Machine Learning},
        pages = {145-156},
        publisher = {Springer},
        title = {A Simple Approach to Ordinal Classification},
        year = {2001}
     }
     

    Valid options are:

     -D
      If set, classifier is run in debug mode and
      may output additional info to the console
     -W
      Full name of base classifier.
      (default: weka.classifiers.trees.J48)
     
     Options specific to classifier weka.classifiers.trees.J48:
     
     -U
      Use unpruned tree.
     -C <pruning confidence>
      Set confidence threshold for pruning.
      (default 0.25)
     -M <minimum number of instances>
      Set minimum number of instances per leaf.
      (default 2)
     -R
      Use reduced error pruning.
     -N <number of folds>
      Set number of folds for reduced error
      pruning. One fold is used as pruning set.
      (default 3)
     -B
      Use binary splits only.
     -S
      Don't perform subtree raising.
     -L
      Do not clean up after the tree has been built.
     -A
      Laplace smoothing for predicted probabilities.
     -Q <seed>
      Seed for random data shuffling (default 1).
    Version:
    $Revision 1.0 $
    Author:
    Mark Hall
    See Also:
    OptionHandler, Serialized Form
    • Constructor Detail

      • OrdinalClassClassifier

        public OrdinalClassClassifier()
        Default constructor.
    • Method Detail

      • globalInfo

        public java.lang.String globalInfo()
        Returns a string describing this attribute evaluator
        Returns:
        a description of the evaluator suitable for displaying in the explorer/experimenter gui
      • getTechnicalInformation

        public TechnicalInformation getTechnicalInformation()
        Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
        Specified by:
        getTechnicalInformation in interface TechnicalInformationHandler
        Returns:
        the technical information about this class
      • buildClassifier

        public void buildClassifier​(Instances insts)
                             throws java.lang.Exception
        Builds the classifiers.
        Specified by:
        buildClassifier in class Classifier
        Parameters:
        insts - the training data.
        Throws:
        java.lang.Exception - if a classifier can't be built
      • distributionForInstance

        public double[] distributionForInstance​(Instance inst)
                                         throws java.lang.Exception
        Returns the distribution for an instance.
        Overrides:
        distributionForInstance in class Classifier
        Parameters:
        inst - the instance to compute the distribution for
        Returns:
        the class distribution for the given instance
        Throws:
        java.lang.Exception - if the distribution can't be computed successfully
      • setOptions

        public void setOptions​(java.lang.String[] options)
                        throws java.lang.Exception
        Parses a given list of options.

        Valid options are:

         -D
          If set, classifier is run in debug mode and
          may output additional info to the console
         -W
          Full name of base classifier.
          (default: weka.classifiers.trees.J48)
         
         Options specific to classifier weka.classifiers.trees.J48:
         
         -U
          Use unpruned tree.
         -C <pruning confidence>
          Set confidence threshold for pruning.
          (default 0.25)
         -M <minimum number of instances>
          Set minimum number of instances per leaf.
          (default 2)
         -R
          Use reduced error pruning.
         -N <number of folds>
          Set number of folds for reduced error
          pruning. One fold is used as pruning set.
          (default 3)
         -B
          Use binary splits only.
         -S
          Don't perform subtree raising.
         -L
          Do not clean up after the tree has been built.
         -A
          Laplace smoothing for predicted probabilities.
         -Q <seed>
          Seed for random data shuffling (default 1).
        Specified by:
        setOptions in interface OptionHandler
        Overrides:
        setOptions in class SingleClassifierEnhancer
        Parameters:
        options - the list of options as an array of strings
        Throws:
        java.lang.Exception - if an option is not supported
      • toString

        public java.lang.String toString()
        Prints the classifiers.
        Overrides:
        toString in class java.lang.Object
        Returns:
        a string representation of this classifier
      • main

        public static void main​(java.lang.String[] argv)
        Main method for testing this class.
        Parameters:
        argv - the options