Class ASEvaluation

java.lang.Object
weka.attributeSelection.ASEvaluation
All Implemented Interfaces:
Serializable, CapabilitiesHandler, CapabilitiesIgnorer, CommandlineRunnable, OptionHandler, RevisionHandler
Direct Known Subclasses:
AttributeSetEvaluator, CfsSubsetEval, ClassifierAttributeEval, CorrelationAttributeEval, GainRatioAttributeEval, HoldOutSubsetEvaluator, InfoGainAttributeEval, OneRAttributeEval, ReliefFAttributeEval, SymmetricalUncertAttributeEval, UnsupervisedAttributeEvaluator, UnsupervisedSubsetEvaluator, WrapperSubsetEval

Abstract attribute selection evaluation class
Version:
$Revision: 15519 $
Author:
Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
  • Constructor Details

    • ASEvaluation

      public ASEvaluation()
  • Method Details

    • doNotCheckCapabilitiesTipText

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

      public void setDoNotCheckCapabilities(boolean doNotCheckCapabilities)
      Set whether not to check capabilities.
      Specified by:
      setDoNotCheckCapabilities in interface CapabilitiesIgnorer
      Parameters:
      doNotCheckCapabilities - true if capabilities are not to be checked.
    • getDoNotCheckCapabilities

      public boolean getDoNotCheckCapabilities()
      Get whether capabilities checking is turned off.
      Specified by:
      getDoNotCheckCapabilities in interface CapabilitiesIgnorer
      Returns:
      true if capabilities checking is turned off.
    • listOptions

      public Enumeration<Option> listOptions()
      Returns an enumeration describing the available options.
      Specified by:
      listOptions in interface OptionHandler
      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 OptionHandler
      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 evaluator.
      Specified by:
      getOptions in interface OptionHandler
      Returns:
      an array of strings suitable for passing to setOptions
    • buildEvaluator

      public abstract void buildEvaluator(Instances data) throws Exception
      Generates a attribute evaluator. Has to initialize all fields of the evaluator that are not being set via options.
      Parameters:
      data - set of instances serving as training data
      Throws:
      Exception - if the evaluator has not been generated successfully
    • postProcess

      public int[] postProcess(int[] attributeSet) throws Exception
      Provides a chance for a attribute evaluator to do any special post processing of the selected attribute set. Can also be used to clean up any data structures post attribute selection.
      Parameters:
      attributeSet - the set of attributes found by the search
      Returns:
      a possibly ranked list of postprocessed attributes
      Throws:
      Exception - if postprocessing fails for some reason
    • forName

      public static ASEvaluation forName(String evaluatorName, String[] options) throws Exception
      Creates a new instance of an attribute/subset evaluator given it's class name and (optional) arguments to pass to it's setOptions method. If the evaluator implements OptionHandler and the options parameter is non-null, the evaluator will have it's options set.
      Parameters:
      evaluatorName - the fully qualified class name of the evaluator
      options - an array of options suitable for passing to setOptions. May be null.
      Returns:
      the newly created evaluator, ready for use.
      Throws:
      Exception - if the evaluator name is invalid, or the options supplied are not acceptable to the evaluator
    • makeCopies

      public static ASEvaluation[] makeCopies(ASEvaluation model, int num) throws Exception
      Creates copies of the current evaluator. Note that this method now uses Serialization to perform a deep copy, so the evaluator object must be fully Serializable. Any currently built model will now be copied as well.
      Parameters:
      model - an example evaluator to copy
      num - the number of evaluator copies to create.
      Returns:
      an array of evaluators.
      Throws:
      Exception - if an error occurs
    • getCapabilities

      public Capabilities getCapabilities()
      Returns the capabilities of this evaluator.
      Specified by:
      getCapabilities in interface CapabilitiesHandler
      Returns:
      the capabilities of this evaluator
      See Also:
    • getRevision

      public String getRevision()
      Returns the revision string.
      Specified by:
      getRevision in interface RevisionHandler
      Returns:
      the revision
    • clean

      public void clean()
      Tells the evaluator that the attribute selection process is complete. It can then clean up data structures, references to training data as necessary in order to save memory
    • runEvaluator

      public static void runEvaluator(ASEvaluation evaluator, String[] options)
      runs the evaluator with the given commandline options
      Parameters:
      evaluator - the evaluator to run
      options - the commandline options
    • preExecution

      public void preExecution() throws Exception
      Perform any setup stuff that might need to happen before commandline execution. Subclasses should override if they need to do something here
      Specified by:
      preExecution in interface CommandlineRunnable
      Throws:
      Exception - if a problem occurs during setup
    • run

      public void run(Object toRun, String[] options) throws Exception
      Execute the supplied object. Subclasses need to override this method.
      Specified by:
      run in interface CommandlineRunnable
      Parameters:
      toRun - the object to execute
      options - any options to pass to the object
      Throws:
      Exception - if a problem occurs
    • postExecution

      public void postExecution() throws Exception
      Perform any teardown stuff that might need to happen after execution. Subclasses should override if they need to do something here
      Specified by:
      postExecution in interface CommandlineRunnable
      Throws:
      Exception - if a problem occurs during teardown