Class SerializedClassifier

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

    public class SerializedClassifier
    extends Classifier
    A wrapper around a serialized classifier model. This classifier loads a serialized models and uses it to make predictions.

    Warning: since the serialized model doesn't get changed, cross-validation cannot bet used with this classifier.

    Valid options are:

     -D
      If set, classifier is run in debug mode and
      may output additional info to the console
     -model <filename>
      The file containing the serialized model.
      (required)
    Version:
    $Revision: 7560 $
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Constructor Detail

      • SerializedClassifier

        public SerializedClassifier()
    • Method Detail

      • globalInfo

        public java.lang.String globalInfo()
        Returns a string describing classifier
        Returns:
        a description suitable for displaying in the explorer/experimenter gui
      • listOptions

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

        public java.lang.String[] getOptions()
        returns the options of the current setup
        Specified by:
        getOptions in interface OptionHandler
        Overrides:
        getOptions in class Classifier
        Returns:
        the current options
      • setOptions

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

        Valid options are:

         -D
          If set, classifier is run in debug mode and
          may output additional info to the console
         -model <filename>
          The file containing the serialized model.
          (required)
        Specified by:
        setOptions in interface OptionHandler
        Overrides:
        setOptions in class Classifier
        Parameters:
        options - the options to use
        Throws:
        java.lang.Exception - if setting of options fails
      • modelFileTipText

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

        public java.io.File getModelFile()
        Gets the file containing the serialized model.
        Returns:
        the file.
      • setModelFile

        public void setModelFile​(java.io.File value)
        Sets the file containing the serialized model.
        Parameters:
        value - the file.
      • setModel

        public void setModel​(Classifier value)
        Sets the fully built model to use, if one doesn't want to load a model from a file or already deserialized a model from somewhere else.
        Parameters:
        value - the built model
        See Also:
        getCurrentModel()
      • getCurrentModel

        public Classifier getCurrentModel()
        Gets the currently loaded model (can be null). Call buildClassifier method to load model from file.
        Returns:
        the current model
        See Also:
        setModel(Classifier)
      • distributionForInstance

        public double[] distributionForInstance​(Instance instance)
                                         throws java.lang.Exception
        Calculates the class membership probabilities for the given test instance.
        Overrides:
        distributionForInstance in class Classifier
        Parameters:
        instance - the instance to be classified
        Returns:
        preedicted class probability distribution
        Throws:
        java.lang.Exception - if distribution can't be computed successfully
      • buildClassifier

        public void buildClassifier​(Instances data)
                             throws java.lang.Exception
        loads only the serialized classifier
        Specified by:
        buildClassifier in class Classifier
        Parameters:
        data - the training instances
        Throws:
        java.lang.Exception - if something goes wrong
      • toString

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

        public static void main​(java.lang.String[] args)
        Runs the classifier with the given options
        Parameters:
        args - the commandline options