Package weka.attributeSelection
Class OneRAttributeEval
- java.lang.Object
-
- weka.attributeSelection.ASEvaluation
-
- weka.attributeSelection.OneRAttributeEval
-
- All Implemented Interfaces:
java.io.Serializable
,AttributeEvaluator
,CapabilitiesHandler
,OptionHandler
,RevisionHandler
public class OneRAttributeEval extends ASEvaluation implements AttributeEvaluator, OptionHandler
OneRAttributeEval :
Evaluates the worth of an attribute by using the OneR classifier.
Valid options are:-S <seed> Random number seed for cross validation (default = 1)
-F <folds> Number of folds for cross validation (default = 10)
-D Use training data for evaluation rather than cross validaton
-B <minimum bucket size> Minimum number of objects in a bucket (passed on to OneR, default = 6)
- Version:
- $Revision: 11219 $
- Author:
- Mark Hall (mhall@cs.waikato.ac.nz)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description OneRAttributeEval()
Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
buildEvaluator(Instances data)
Initializes a OneRAttribute attribute evaluator.double
evaluateAttribute(int attribute)
evaluates an individual attribute by measuring the amount of information gained about the class given the attribute.java.lang.String
evalUsingTrainingDataTipText()
Returns a string for this option suitable for display in the gui as a tip textjava.lang.String
foldsTipText()
Returns a string for this option suitable for display in the gui as a tip textCapabilities
getCapabilities()
Returns the capabilities of this evaluator.boolean
getEvalUsingTrainingData()
Returns true if the training data is to be used for evaluationint
getFolds()
Get the number of folds used for cross validationint
getMinimumBucketSize()
Get the minimum bucket size used by oneRjava.lang.String[]
getOptions()
returns the current setup.java.lang.String
getRevision()
Returns the revision string.int
getSeed()
Get the random number seedjava.lang.String
globalInfo()
Returns a string describing this attribute evaluatorjava.util.Enumeration
listOptions()
Returns an enumeration describing the available options.static void
main(java.lang.String[] args)
Main method for testing this class.java.lang.String
minimumBucketSizeTipText()
Returns a string for this option suitable for display in the gui as a tip textint[]
postProcess(int[] attributeSet)
Provides a chance for a attribute evaluator to do any special post processing of the selected attribute set.java.lang.String
seedTipText()
Returns a string for this option suitable for display in the gui as a tip textvoid
setEvalUsingTrainingData(boolean e)
Use the training data to evaluate attributes rather than cross validationvoid
setFolds(int folds)
Set the number of folds to use for cross validationvoid
setMinimumBucketSize(int minB)
Set the minumum bucket size used by OneRvoid
setOptions(java.lang.String[] options)
Parses a given list of options.void
setSeed(int seed)
Set the random number seed for cross validationjava.lang.String
toString()
Return a description of the evaluator-
Methods inherited from class weka.attributeSelection.ASEvaluation
clean, forName, makeCopies
-
-
-
-
Method Detail
-
globalInfo
public java.lang.String globalInfo()
Returns a string describing this attribute evaluator- Returns:
- a description of the evaluator suitable for displaying in the explorer/experimenter gui
-
seedTipText
public java.lang.String seedTipText()
Returns a string for this option suitable for display in the gui as a tip text- Returns:
- a string describing this option
-
setSeed
public void setSeed(int seed)
Set the random number seed for cross validation- Parameters:
seed
- the seed to use
-
getSeed
public int getSeed()
Get the random number seed- Returns:
- an
int
value
-
foldsTipText
public java.lang.String foldsTipText()
Returns a string for this option suitable for display in the gui as a tip text- Returns:
- a string describing this option
-
setFolds
public void setFolds(int folds)
Set the number of folds to use for cross validation- Parameters:
folds
- the number of folds
-
getFolds
public int getFolds()
Get the number of folds used for cross validation- Returns:
- the number of folds
-
evalUsingTrainingDataTipText
public java.lang.String evalUsingTrainingDataTipText()
Returns a string for this option suitable for display in the gui as a tip text- Returns:
- a string describing this option
-
setEvalUsingTrainingData
public void setEvalUsingTrainingData(boolean e)
Use the training data to evaluate attributes rather than cross validation- Parameters:
e
- true if training data is to be used for evaluation
-
minimumBucketSizeTipText
public java.lang.String minimumBucketSizeTipText()
Returns a string for this option suitable for display in the gui as a tip text- Returns:
- a string describing this option
-
setMinimumBucketSize
public void setMinimumBucketSize(int minB)
Set the minumum bucket size used by OneR- Parameters:
minB
- the minimum bucket size to use
-
getMinimumBucketSize
public int getMinimumBucketSize()
Get the minimum bucket size used by oneR- Returns:
- the minimum bucket size used
-
getEvalUsingTrainingData
public boolean getEvalUsingTrainingData()
Returns true if the training data is to be used for evaluation- Returns:
- true if training data is to be used for evaluation
-
listOptions
public java.util.Enumeration listOptions()
Returns an enumeration describing the available options.- Specified by:
listOptions
in interfaceOptionHandler
- Returns:
- an enumeration of all the available options.
-
setOptions
public void setOptions(java.lang.String[] options) throws java.lang.Exception
Parses a given list of options. Valid options are:-S <seed> Random number seed for cross validation (default = 1)
-F <folds> Number of folds for cross validation (default = 10)
-D Use training data for evaluation rather than cross validaton
-B <minimum bucket size> Minimum number of objects in a bucket (passed on to OneR, default = 6)
- Specified by:
setOptions
in interfaceOptionHandler
- Parameters:
options
- the list of options as an array of strings- Throws:
java.lang.Exception
- if an option is not supported
-
getOptions
public java.lang.String[] getOptions()
returns the current setup.- Specified by:
getOptions
in interfaceOptionHandler
- Returns:
- the options of the current setup
-
getCapabilities
public Capabilities getCapabilities()
Returns the capabilities of this evaluator.- Specified by:
getCapabilities
in interfaceCapabilitiesHandler
- Overrides:
getCapabilities
in classASEvaluation
- Returns:
- the capabilities of this evaluator
- See Also:
Capabilities
-
buildEvaluator
public void buildEvaluator(Instances data) throws java.lang.Exception
Initializes a OneRAttribute attribute evaluator. Discretizes all attributes that are numeric.- Specified by:
buildEvaluator
in classASEvaluation
- Parameters:
data
- set of instances serving as training data- Throws:
java.lang.Exception
- if the evaluator has not been generated successfully
-
evaluateAttribute
public double evaluateAttribute(int attribute) throws java.lang.Exception
evaluates an individual attribute by measuring the amount of information gained about the class given the attribute.- Specified by:
evaluateAttribute
in interfaceAttributeEvaluator
- Parameters:
attribute
- the index of the attribute to be evaluated- Returns:
- the "merit" of the attribute
- Throws:
java.lang.Exception
- if the attribute could not be evaluated
-
toString
public java.lang.String toString()
Return a description of the evaluator- Overrides:
toString
in classjava.lang.Object
- Returns:
- description as a string
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classASEvaluation
- Returns:
- the revision
-
postProcess
public int[] postProcess(int[] attributeSet)
Description copied from class:ASEvaluation
Provides a chance for a attribute evaluator to do any special post processing of the selected attribute set.- Overrides:
postProcess
in classASEvaluation
- Parameters:
attributeSet
- the set of attributes found by the search- Returns:
- a possibly ranked list of postprocessed attributes
-
main
public static void main(java.lang.String[] args)
Main method for testing this class.- Parameters:
args
- the options
-
-