Class MultiClassClassifierUpdateable

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, Classifier, UpdateableClassifier, BatchPredictor, CapabilitiesHandler, CapabilitiesIgnorer, CommandlineRunnable, OptionHandler, Randomizable, RevisionHandler, WeightedInstancesHandler

    public class MultiClassClassifierUpdateable
    extends MultiClassClassifier
    implements OptionHandler, UpdateableClassifier
    A metaclassifier for handling multi-class datasets with 2-class classifiers. This classifier is also capable of applying error correcting output codes for increased accuracy. The base classifier must be an updateable classifier

    Valid options are:

     -M <num>
      Sets the method to use. Valid values are 0 (1-against-all),
      1 (random codes), 2 (exhaustive code), and 3 (1-against-1). (default 0)
     
     -R <num>
      Sets the multiplier when using random codes. (default 2.0)
     -P
      Use pairwise coupling (only has an effect for 1-against1)
     -S <num>
      Random number seed.
      (default 1)
     -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.functions.SGD)
    Version:
    $Revision: 9248 $
    Author:
    Eibe Frank (eibe@cs.waikato.ac.nz), Len Trigg (len@reeltwo.com), Richard Kirkby (rkirkby@cs.waikato.ac.nz), Mark Hall (mhall{[at]}pentaho{[dot]}com)
    See Also:
    Serialized Form
    • Constructor Detail

      • MultiClassClassifierUpdateable

        public MultiClassClassifierUpdateable()
        Constructor
    • Method Detail

      • globalInfo

        public java.lang.String globalInfo()
        Overrides:
        globalInfo in class MultiClassClassifier
        Returns:
        a description of the classifier suitable for displaying in the explorer/experimenter gui
      • updateClassifier

        public void updateClassifier​(Instance instance)
                              throws java.lang.Exception
        Updates the classifier with the given instance.
        Specified by:
        updateClassifier in interface UpdateableClassifier
        Parameters:
        instance - the new training instance to include in the model
        Throws:
        java.lang.Exception - if the instance could not be incorporated in the model.
      • distributionForInstance

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

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