Class InputSmearing

  • All Implemented Interfaces:
    Serializable, weka.core.CapabilitiesHandler, weka.core.CapabilitiesIgnorer, weka.core.CommandlineRunnable, weka.core.OptionHandler, weka.core.Randomizable, weka.core.RevisionHandler, weka.core.TechnicalInformationHandler, weka.filters.UnsupervisedFilter

    public class InputSmearing
    extends weka.filters.SimpleBatchFilter
    implements weka.core.Randomizable, weka.filters.UnsupervisedFilter, weka.core.TechnicalInformationHandler
    Version:
    $Revision$
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected WekaAttributeRange m_AttributeRange
      the range of the attributes to work on.
      protected int[] m_Indices
      the indices to work on.
      protected Random m_Random
      the random number generator to use.
      protected int m_Seed
      The random number seed.
      protected double m_StdDev
      the standard deviation multiplier to use.
      protected Double[] m_StdDevs
      the std devs to use.
      • Fields inherited from class weka.filters.Filter

        m_Debug, m_DoNotCheckCapabilities, m_FirstBatchDone, m_InputRelAtts, m_InputStringAtts, m_NewBatch, m_OutputRelAtts, m_OutputStringAtts
    • Constructor Summary

      Constructors 
      Constructor Description
      InputSmearing()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      String attributeRangeTipText()
      Returns the tip text for this property.
      protected weka.core.Instances determineOutputFormat​(weka.core.Instances inputFormat)
      Determines the output format based on the input format and returns this.
      WekaAttributeRange getAttributeRange()
      Returns the 1-based range of the attributes to work on.
      weka.core.Capabilities getCapabilities()
      Returns the Capabilities of this filter.
      String[] getOptions()
      Gets the current settings of the Classifier.
      String getRevision()
      Returns the revision string.
      int getSeed()
      Gets the seed for the random number generations
      double getStdDev()
      Gets the multiplier for the standard deviation to use for input smearing.
      weka.core.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.
      String globalInfo()
      Returns a string describing this classifier.
      Enumeration<weka.core.Option> listOptions()
      Returns an enumeration describing the available options.
      static void main​(String[] args)
      Main method for testing this class.
      protected weka.core.Instances process​(weka.core.Instances instances)
      Processes the given data (may change the provided dataset) and returns the modified version.
      String seedTipText()
      Returns the tip text for this property
      void setAttributeRange​(WekaAttributeRange value)
      Sets the range (1-based) of the attributes to work on.
      void setOptions​(String[] options)
      Parses a given list of options.
      void setSeed​(int seed)
      Set the seed for random number generation.
      void setStdDev​(double value)
      Sets the multiplier for the standard deviation to use for input smearing.
      String stdDevTipText()
      Returns the tip text for this property
      • Methods inherited from class weka.filters.SimpleBatchFilter

        allowAccessToFullInputFormat, batchFinished, hasImmediateOutputFormat, input
      • Methods inherited from class weka.filters.SimpleFilter

        reset, setInputFormat
      • Methods inherited from class weka.filters.Filter

        batchFilterFile, bufferInput, copyValues, copyValues, debugTipText, doNotCheckCapabilitiesTipText, filterFile, flushInput, getCapabilities, getDebug, getDoNotCheckCapabilities, getInputFormat, getOutputFormat, initInputLocators, initOutputLocators, inputFormatPeek, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputFormatPeek, outputPeek, postExecution, preExecution, push, push, resetQueue, run, runFilter, setDebug, setDoNotCheckCapabilities, setOutputFormat, testInputFormat, toString, useFilter, wekaStaticWrapper
    • Field Detail

      • m_Seed

        protected int m_Seed
        The random number seed.
      • m_AttributeRange

        protected WekaAttributeRange m_AttributeRange
        the range of the attributes to work on.
      • m_StdDev

        protected double m_StdDev
        the standard deviation multiplier to use.
      • m_Indices

        protected int[] m_Indices
        the indices to work on.
      • m_StdDevs

        protected Double[] m_StdDevs
        the std devs to use.
      • m_Random

        protected Random m_Random
        the random number generator to use.
    • Constructor Detail

      • InputSmearing

        public InputSmearing()
    • Method Detail

      • globalInfo

        public String globalInfo()
        Returns a string describing this classifier.
        Specified by:
        globalInfo in class weka.filters.SimpleFilter
        Returns:
        a description of the classifier suitable for displaying in the explorer/experimenter gui
      • getTechnicalInformation

        public weka.core.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 weka.core.TechnicalInformationHandler
        Returns:
        the technical information about this class
      • listOptions

        public Enumeration<weka.core.Option> listOptions()
        Returns an enumeration describing the available options.
        Specified by:
        listOptions in interface weka.core.OptionHandler
        Overrides:
        listOptions in class weka.filters.Filter
        Returns:
        an enumeration of all the available options.
      • setOptions

        public void setOptions​(String[] options)
                        throws Exception
        Parses a given list of options.
        Specified by:
        setOptions in interface weka.core.OptionHandler
        Overrides:
        setOptions in class weka.filters.Filter
        Parameters:
        options - the list of options as an array of strings
        Throws:
        Exception - if an option is not supported
      • getOptions

        public String[] getOptions()
        Gets the current settings of the Classifier.
        Specified by:
        getOptions in interface weka.core.OptionHandler
        Overrides:
        getOptions in class weka.filters.Filter
        Returns:
        an array of strings suitable for passing to setOptions
      • setSeed

        public void setSeed​(int seed)
        Set the seed for random number generation.
        Specified by:
        setSeed in interface weka.core.Randomizable
        Parameters:
        seed - the seed
      • getSeed

        public int getSeed()
        Gets the seed for the random number generations
        Specified by:
        getSeed in interface weka.core.Randomizable
        Returns:
        the seed for the random number generation
      • seedTipText

        public String seedTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getStdDev

        public double getStdDev()
        Gets the multiplier for the standard deviation to use for input smearing.
        Returns:
        the multiplier
      • setStdDev

        public void setStdDev​(double value)
        Sets the multiplier for the standard deviation to use for input smearing.
        Parameters:
        value - the multiplier
      • stdDevTipText

        public String stdDevTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • setAttributeRange

        public void setAttributeRange​(WekaAttributeRange value)
        Sets the range (1-based) of the attributes to work on.
        Parameters:
        value - the range (1-based)
      • getAttributeRange

        public WekaAttributeRange getAttributeRange()
        Returns the 1-based range of the attributes to work on.
        Returns:
        the range (1-based)
      • attributeRangeTipText

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

        public weka.core.Capabilities getCapabilities()
        Returns the Capabilities of this filter. Derived filters have to override this method to enable capabilities.
        Specified by:
        getCapabilities in interface weka.core.CapabilitiesHandler
        Overrides:
        getCapabilities in class weka.filters.Filter
        Returns:
        the capabilities of this object
        See Also:
        Capabilities
      • determineOutputFormat

        protected weka.core.Instances determineOutputFormat​(weka.core.Instances inputFormat)
                                                     throws Exception
        Determines the output format based on the input format and returns this. In case the output format cannot be returned immediately, i.e., hasImmediateOutputFormat() returns false, then this method will called from batchFinished() after the call of preprocess(Instances), in which, e.g., statistics for the actual processing step can be gathered.
        Specified by:
        determineOutputFormat in class weka.filters.SimpleFilter
        Parameters:
        inputFormat - the input format to base the output format on
        Returns:
        the output format
        Throws:
        Exception - in case the determination goes wrong
      • process

        protected weka.core.Instances process​(weka.core.Instances instances)
                                       throws Exception
        Processes the given data (may change the provided dataset) and returns the modified version. This method is called in batchFinished().
        Specified by:
        process in class weka.filters.SimpleFilter
        Parameters:
        instances - the data to process
        Returns:
        the modified data
        Throws:
        Exception - in case the processing goes wrong
        See Also:
        SimpleBatchFilter.batchFinished()
      • getRevision

        public String getRevision()
        Returns the revision string.
        Specified by:
        getRevision in interface weka.core.RevisionHandler
        Overrides:
        getRevision in class weka.filters.Filter
        Returns:
        the revision
      • main

        public static void main​(String[] args)
        Main method for testing this class.
        Parameters:
        args - should contain arguments to the filter: use -h for help