All Packages  Class Hierarchy  This Package  Previous  Next  Index  WEKA's home

Class weka.attributeSelection.WrapperSubsetEval

java.lang.Object
   |
   +----weka.attributeSelection.ASEvaluation
           |
           +----weka.attributeSelection.SubsetEvaluator
                   |
                   +----weka.attributeSelection.WrapperSubsetEval

public class WrapperSubsetEval
extends SubsetEvaluator
implements OptionHandler
Wrapper attribute subset evaluator.

For more information see:
Kohavi, R., John G., Wrappers for Feature Subset Selection. In Artificial Intelligence journal, special issue on relevance, Vol. 97, Nos 1-2, pp.273-324.

Valid options are:

-B
Class name of base learner to use for accuracy estimation. Place any classifier options last on the command line following a "--". Eg -B weka.classifiers.NaiveBayes ... -- -K

-F
Number of cross validation folds to use for estimating accuracy.

-T
Threshold by which to execute another cross validation (standard deviation ---expressed as a percentage of the mean).

Version:
$Revision: 1.8 $
Author:
Mark Hall (mhall@cs.waikato.ac.nz)

Constructor Index

 o WrapperSubsetEval()
Constructor.

Method Index

 o buildEvaluator(Instances)
Generates a attribute evaluator.
 o evaluateSubset(BitSet)
Evaluates a subset of attributes
 o getClassifier()
Get the classifier used as the base learner.
 o getFolds()
Get the number of folds used for accuracy estimation
 o getOptions()
Gets the current settings of WrapperSubsetEval.
 o getSeed()
Get the random number seed used for cross validation
 o getThreshold()
Get the value of the threshold
 o listOptions()
Returns an enumeration describing the available options
 o main(String[])
Main method for testing this class.
 o setClassifier(Classifier)
Set the classifier to use for accuracy estimation
 o setFolds(int)
Set the number of folds to use for accuracy estimation
 o setOptions(String[])
Parses a given list of options.
 o setSeed(int)
Set the seed to use for cross validation
 o setThreshold(double)
Set the value of the threshold for repeating cross validation
 o toString()
Returns a string describing the wrapper

Constructors

 o WrapperSubsetEval
 public WrapperSubsetEval()
Constructor. Calls restOptions to set default options

Methods

 o listOptions
 public Enumeration listOptions()
Returns an enumeration describing the available options

Returns:
an enumeration of all the available options
 o setOptions
 public void setOptions(String options[]) throws Exception
Parses a given list of options. Valid options are:

-B
Class name of base learner to use for accuracy estimation. Place any classifier options last on the command line following a "--". Eg -B weka.classifiers.NaiveBayes ... -- -K

-F
Number of cross validation folds to use for estimating accuracy.

-T
Threshold by which to execute another cross validation (standard deviation ---expressed as a percentage of the mean).

Parameters:
options - the list of options as an array of strings
Throws: Exception
if an option is not supported
 o setThreshold
 public void setThreshold(double t)
Set the value of the threshold for repeating cross validation

Parameters:
t - the value of the threshold
 o getThreshold
 public double getThreshold()
Get the value of the threshold

Returns:
the threshold as a double
 o setFolds
 public void setFolds(int f)
Set the number of folds to use for accuracy estimation

Parameters:
f - the number of folds
 o getFolds
 public int getFolds()
Get the number of folds used for accuracy estimation

Returns:
the number of folds
 o setSeed
 public void setSeed(int s)
Set the seed to use for cross validation

Parameters:
s - the seed
 o getSeed
 public int getSeed()
Get the random number seed used for cross validation

Returns:
the seed
 o setClassifier
 public void setClassifier(Classifier newClassifier)
Set the classifier to use for accuracy estimation

Parameters:
newClassifier - the Classifier to use.
 o getClassifier
 public Classifier getClassifier()
Get the classifier used as the base learner.

Returns:
the classifier used as the classifier
 o getOptions
 public String[] getOptions()
Gets the current settings of WrapperSubsetEval.

Returns:
an array of strings suitable for passing to setOptions()
 o buildEvaluator
 public 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
Overrides:
buildEvaluator in class ASEvaluation
 o evaluateSubset
 public double evaluateSubset(BitSet subset) throws Exception
Evaluates a subset of attributes

Parameters:
subset - a bitset representing the attribute subset to be evaluated
Throws: Exception
if the subset could not be evaluated
Overrides:
evaluateSubset in class SubsetEvaluator
 o toString
 public String toString()
Returns a string describing the wrapper

Returns:
the description as a string
Overrides:
toString in class Object
 o main
 public static void main(String args[])
Main method for testing this class.

Parameters:
args - the options

All Packages  Class Hierarchy  This Package  Previous  Next  Index  WEKA's home