Package weka.attributeSelection

# 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`

public abstract class ASEvaluation extends Object implements Serializable, CapabilitiesHandler, CapabilitiesIgnorer, RevisionHandler, CommandlineRunnable, OptionHandler
Abstract attribute selection evaluation class

Version:
  $Revision: 15520 $
Author:
  Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ASEvaluation()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract void`
  `buildEvaluator(Instances data)`
  Generates a attribute evaluator.
  `void`
  `clean()`
  Tells the evaluator that the attribute selection process is complete.
  `String`
  `doNotCheckCapabilitiesTipText()`
  Returns the tip text for this property
  `static ASEvaluation`
  `forName(String evaluatorName, String[] options)`
  Creates a new instance of an attribute/subset evaluator given it's class name and (optional) arguments to pass to it's setOptions method.
  `Capabilities`
  `getCapabilities()`
  Returns the capabilities of this evaluator.
  `boolean`
  `getDoNotCheckCapabilities()`
  Get whether capabilities checking is turned off.
  `String[]`
  `getOptions()`
  Gets the current settings of the evaluator.
  `String`
  `getRevision()`
  Returns the revision string.
  `Enumeration<Option>`
  `listOptions()`
  Returns an enumeration describing the available options.
  `static ASEvaluation[]`
  `makeCopies(ASEvaluation model, int num)`
  Creates copies of the current evaluator.
  `void`
  `postExecution()`
  Perform any teardown stuff that might need to happen after execution.
  `int[]`
  `postProcess(int[] attributeSet)`
  Provides a chance for a attribute evaluator to do any special post processing of the selected attribute set.
  `void`
  `preExecution()`
  Perform any setup stuff that might need to happen before commandline execution.
  `void`
  `run(Object toRun, String[] options)`
  Execute the supplied object.
  `static void`
  `runEvaluator(ASEvaluation evaluator, String[] options)`
  runs the evaluator with the given commandline options
  `void`
  `setDoNotCheckCapabilities(boolean doNotCheckCapabilities)`
  Set whether not to check capabilities.
  `void`
  `setOptions(String[] options)`
  Parses a given list of options.

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## 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:
      - `Capabilities`

  - ### 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