Package weka.attributeSelection
Class ASEvaluation
- java.lang.Object
-
- weka.attributeSelection.ASEvaluation
-
- All Implemented Interfaces:
java.io.Serializable,CapabilitiesHandler,CapabilitiesIgnorer,CommandlineRunnable,RevisionHandler
- Direct Known Subclasses:
AttributeSetEvaluator,CfsSubsetEval,ClassifierAttributeEval,CorrelationAttributeEval,GainRatioAttributeEval,HoldOutSubsetEvaluator,InfoGainAttributeEval,OneRAttributeEval,ReliefFAttributeEval,SymmetricalUncertAttributeEval,UnsupervisedAttributeEvaluator,UnsupervisedSubsetEvaluator,WrapperSubsetEval
public abstract class ASEvaluation extends java.lang.Object implements java.io.Serializable, CapabilitiesHandler, CapabilitiesIgnorer, RevisionHandler, CommandlineRunnable
Abstract attribute selection evaluation class- Version:
- $Revision: 12201 $
- Author:
- Mark Hall (mhall@cs.waikato.ac.nz)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ASEvaluation()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract voidbuildEvaluator(Instances data)Generates a attribute evaluator.voidclean()Tells the evaluator that the attribute selection process is complete.java.lang.StringdoNotCheckCapabilitiesTipText()Returns the tip text for this propertystatic ASEvaluationforName(java.lang.String evaluatorName, java.lang.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.CapabilitiesgetCapabilities()Returns the capabilities of this evaluator.booleangetDoNotCheckCapabilities()Get whether capabilities checking is turned off.java.lang.StringgetRevision()Returns the revision string.static ASEvaluation[]makeCopies(ASEvaluation model, int num)Creates copies of the current evaluator.voidpostExecution()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.voidpreExecution()Perform any setup stuff that might need to happen before commandline execution.voidrun(java.lang.Object toRun, java.lang.String[] options)Execute the supplied object.static voidrunEvaluator(ASEvaluation evaluator, java.lang.String[] options)runs the evaluator with the given commandline optionsvoidsetDoNotCheckCapabilities(boolean doNotCheckCapabilities)Set whether not to check capabilities.
-
-
-
Method Detail
-
doNotCheckCapabilitiesTipText
public java.lang.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:
setDoNotCheckCapabilitiesin interfaceCapabilitiesIgnorer- Parameters:
doNotCheckCapabilities- true if capabilities are not to be checked.
-
getDoNotCheckCapabilities
public boolean getDoNotCheckCapabilities()
Get whether capabilities checking is turned off.- Specified by:
getDoNotCheckCapabilitiesin interfaceCapabilitiesIgnorer- Returns:
- true if capabilities checking is turned off.
-
buildEvaluator
public abstract void buildEvaluator(Instances data) throws java.lang.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:
java.lang.Exception- if the evaluator has not been generated successfully
-
postProcess
public int[] postProcess(int[] attributeSet) throws java.lang.ExceptionProvides 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:
java.lang.Exception- if postprocessing fails for some reason
-
forName
public static ASEvaluation forName(java.lang.String evaluatorName, java.lang.String[] options) throws java.lang.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 evaluatoroptions- an array of options suitable for passing to setOptions. May be null.- Returns:
- the newly created evaluator, ready for use.
- Throws:
java.lang.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 java.lang.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 copynum- the number of evaluator copies to create.- Returns:
- an array of evaluators.
- Throws:
java.lang.Exception- if an error occurs
-
getCapabilities
public Capabilities getCapabilities()
Returns the capabilities of this evaluator.- Specified by:
getCapabilitiesin interfaceCapabilitiesHandler- Returns:
- the capabilities of this evaluator
- See Also:
Capabilities
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- 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, java.lang.String[] options)
runs the evaluator with the given commandline options- Parameters:
evaluator- the evaluator to runoptions- the commandline options
-
preExecution
public void preExecution() throws java.lang.ExceptionPerform any setup stuff that might need to happen before commandline execution. Subclasses should override if they need to do something here- Specified by:
preExecutionin interfaceCommandlineRunnable- Throws:
java.lang.Exception- if a problem occurs during setup
-
run
public void run(java.lang.Object toRun, java.lang.String[] options) throws java.lang.ExceptionExecute the supplied object. Subclasses need to override this method.- Specified by:
runin interfaceCommandlineRunnable- Parameters:
toRun- the object to executeoptions- any options to pass to the object- Throws:
java.lang.Exception- if a problem occurs
-
postExecution
public void postExecution() throws java.lang.ExceptionPerform any teardown stuff that might need to happen after execution. Subclasses should override if they need to do something here- Specified by:
postExecutionin interfaceCommandlineRunnable- Throws:
java.lang.Exception- if a problem occurs during teardown
-
-