Class AddClassification

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

    public class AddClassification
    extends SimpleBatchFilter
    A filter for adding the classification, the class distribution and an error flag to a dataset with a classifier. The classifier is either trained on the data itself or provided as serialized model.

    Valid options are:

     -D
      Turns on output of debugging information.
     -W <classifier specification>
      Full class name of classifier to use, followed
      by scheme options. eg:
       "weka.classifiers.bayes.NaiveBayes -D"
      (default: weka.classifiers.rules.ZeroR)
     -serialized <file>
      Instead of training a classifier on the data, one can also provide
      a serialized model and use that for tagging the data.
     -classification
      Adds an attribute with the actual classification.
      (default: off)
     -remove-old-class
      Removes the old class attribute.
      (default: off)
     -distribution
      Adds attributes with the distribution for all classes
      (for numeric classes this will be identical to the attribute
      output with '-classification').
      (default: off)
     -error
      Adds an attribute indicating whether the classifier output
      a wrong classification (for numeric classes this is the numeric
      difference).
      (default: off)
    Version:
    $Revision: 6900 $
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Constructor Detail

      • AddClassification

        public AddClassification()
    • Method Detail

      • globalInfo

        public java.lang.String globalInfo()
        Returns a string describing this filter.
        Specified by:
        globalInfo in class SimpleFilter
        Returns:
        a description of the filter suitable for displaying in the explorer/experimenter gui
      • listOptions

        public java.util.Enumeration listOptions()
        Returns an enumeration describing the available options.
        Specified by:
        listOptions in interface OptionHandler
        Overrides:
        listOptions in class SimpleFilter
        Returns:
        an enumeration of all the available options.
      • setOptions

        public void setOptions​(java.lang.String[] options)
                        throws java.lang.Exception
        Parses the options for this object.

        Valid options are:

         -D
          Turns on output of debugging information.
         -W <classifier specification>
          Full class name of classifier to use, followed
          by scheme options. eg:
           "weka.classifiers.bayes.NaiveBayes -D"
          (default: weka.classifiers.rules.ZeroR)
         -serialized <file>
          Instead of training a classifier on the data, one can also provide
          a serialized model and use that for tagging the data.
         -classification
          Adds an attribute with the actual classification.
          (default: off)
         -remove-old-class
          Removes the old class attribute.
          (default: off)
         -distribution
          Adds attributes with the distribution for all classes
          (for numeric classes this will be identical to the attribute
          output with '-classification').
          (default: off)
         -error
          Adds an attribute indicating whether the classifier output
          a wrong classification (for numeric classes this is the numeric
          difference).
          (default: off)
        Specified by:
        setOptions in interface OptionHandler
        Overrides:
        setOptions in class SimpleFilter
        Parameters:
        options - the options to use
        Throws:
        java.lang.Exception - if setting of options fails
        See Also:
        SimpleFilter.reset()
      • getOptions

        public java.lang.String[] getOptions()
        Gets the current settings of the classifier.
        Specified by:
        getOptions in interface OptionHandler
        Overrides:
        getOptions in class SimpleFilter
        Returns:
        an array of strings suitable for passing to setOptions
      • classifierTipText

        public java.lang.String classifierTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • setClassifier

        public void setClassifier​(Classifier value)
        Sets the classifier to classify instances with.
        Parameters:
        value - The classifier to be used (with its options set).
      • getClassifier

        public Classifier getClassifier()
        Gets the classifier used by the filter.
        Returns:
        The classifier to be used.
      • serializedClassifierFileTipText

        public java.lang.String serializedClassifierFileTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getSerializedClassifierFile

        public java.io.File getSerializedClassifierFile()
        Gets the file pointing to a serialized, trained classifier. If it is null or pointing to a directory it will not be used.
        Returns:
        the file the serialized, trained classifier is located in
      • setSerializedClassifierFile

        public void setSerializedClassifierFile​(java.io.File value)
        Sets the file pointing to a serialized, trained classifier. If the argument is null, doesn't exist or pointing to a directory, then the value is ignored.
        Parameters:
        value - the file pointing to the serialized, trained classifier
      • outputClassificationTipText

        public java.lang.String outputClassificationTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getOutputClassification

        public boolean getOutputClassification()
        Get whether the classifiction of the classifier is output.
        Returns:
        true if the classification of the classifier is output.
      • setOutputClassification

        public void setOutputClassification​(boolean value)
        Set whether the classification of the classifier is output.
        Parameters:
        value - whether the classification of the classifier is output.
      • removeOldClassTipText

        public java.lang.String removeOldClassTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getRemoveOldClass

        public boolean getRemoveOldClass()
        Get whether the old class attribute is removed.
        Returns:
        true if the old class attribute is removed.
      • setRemoveOldClass

        public void setRemoveOldClass​(boolean value)
        Set whether the old class attribute is removed.
        Parameters:
        value - whether the old class attribute is removed.
      • outputDistributionTipText

        public java.lang.String outputDistributionTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getOutputDistribution

        public boolean getOutputDistribution()
        Get whether the classifiction of the classifier is output.
        Returns:
        true if the distribution of the classifier is output.
      • setOutputDistribution

        public void setOutputDistribution​(boolean value)
        Set whether the Distribution of the classifier is output.
        Parameters:
        value - whether the distribution of the classifier is output.
      • outputErrorFlagTipText

        public java.lang.String outputErrorFlagTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getOutputErrorFlag

        public boolean getOutputErrorFlag()
        Get whether the classifiction of the classifier is output.
        Returns:
        true if the classification of the classifier is output.
      • setOutputErrorFlag

        public void setOutputErrorFlag​(boolean value)
        Set whether the classification of the classifier is output.
        Parameters:
        value - whether the classification of the classifier is output.
      • main

        public static void main​(java.lang.String[] args)
        runs the filter with the given arguments.
        Parameters:
        args - the commandline arguments