public class AttributeSelectedClassifier extends SingleClassifierEnhancer implements OptionHandler, Drawable, AdditionalMeasureProducer, WeightedInstancesHandler
-E <attribute evaluator specification> Full class name of attribute evaluator, followed by its options. eg: "weka.attributeSelection.CfsSubsetEval -L" (default weka.attributeSelection.CfsSubsetEval)
-S <search method specification> Full class name of search method, followed by its options. eg: "weka.attributeSelection.BestFirst -D 1" (default weka.attributeSelection.BestFirst)
-D If set, classifier is run in debug mode and may output additional info to the console
-W Full name of base classifier. (default: weka.classifiers.trees.J48)
Options specific to classifier weka.classifiers.trees.J48:
-U Use unpruned tree.
-C <pruning confidence> Set confidence threshold for pruning. (default 0.25)
-M <minimum number of instances> Set minimum number of instances per leaf. (default 2)
-R Use reduced error pruning.
-N <number of folds> Set number of folds for reduced error pruning. One fold is used as pruning set. (default 3)
-B Use binary splits only.
-S Don't perform subtree raising.
-L Do not clean up after the tree has been built.
-A Laplace smoothing for predicted probabilities.
-Q <seed> Seed for random data shuffling (default 1).
| Modifier and Type | Field and Description |
|---|---|
protected AttributeSelection |
m_AttributeSelection
The attribute selection object
|
protected ASEvaluation |
m_Evaluator
The attribute evaluator to use
|
protected double |
m_numAttributesSelected
The number of attributes selected by the attribute selection phase
|
protected int |
m_numClasses
The number of class vals in the training data (1 if class is numeric)
|
protected Instances |
m_ReducedHeader
The header of the dimensionally reduced data
|
protected ASSearch |
m_Search
The search method to use
|
protected double |
m_selectionTime
The time taken to select attributes in milliseconds
|
protected double |
m_totalTime
The time taken to select attributes AND build the classifier
|
m_ClassifierBATCH_SIZE_DEFAULT, m_BatchSize, m_Debug, m_DoNotCheckCapabilities, m_numDecimalPlaces, NUM_DECIMAL_PLACES_DEFAULTBayesNet, Newick, NOT_DRAWABLE, TREE| Constructor and Description |
|---|
AttributeSelectedClassifier()
Default constructor.
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
batchSizeTipText()
Tool tip text for this property
|
void |
buildClassifier(Instances data)
Build the classifier on the dimensionally reduced data.
|
protected java.lang.String |
defaultClassifierString()
String describing default classifier.
|
double[] |
distributionForInstance(Instance instance)
Classifies a given instance after attribute selection
|
double[][] |
distributionsForInstances(Instances insts)
Batch scoring method.
|
java.util.Enumeration<java.lang.String> |
enumerateMeasures()
Returns an enumeration of the additional measure names
|
java.lang.String |
evaluatorTipText()
Returns the tip text for this property
|
java.lang.String |
getBatchSize()
Gets the preferred batch size from the base learner if it implements BatchPredictor.
|
Capabilities |
getCapabilities()
Returns default capabilities of the classifier.
|
ASEvaluation |
getEvaluator()
Gets the attribute evaluator used
|
protected java.lang.String |
getEvaluatorSpec()
Gets the evaluator specification string, which contains the class name of the attribute evaluator
and any options to it
|
double |
getMeasure(java.lang.String additionalMeasureName)
Returns the value of the named measure
|
java.lang.String[] |
getOptions()
Gets the current settings of the Classifier.
|
java.lang.String |
getRevision()
Returns the revision string.
|
ASSearch |
getSearch()
Gets the search method used
|
protected java.lang.String |
getSearchSpec()
Gets the search specification string, which contains the class name of the search method and any
options to it
|
java.lang.String |
globalInfo()
Returns a string describing this search method
|
java.lang.String |
graph()
Returns graph describing the classifier (if possible).
|
int |
graphType()
Returns the type of graph this classifier represents.
|
boolean |
implementsMoreEfficientBatchPrediction()
Returns true if the base classifier implements BatchPredictor and is able to generate batch
predictions efficiently
|
java.util.Enumeration<Option> |
listOptions()
Returns an enumeration describing the available options.
|
static void |
main(java.lang.String[] argv)
Main method for testing this class.
|
double |
measureNumAttributesSelected()
Additional measure --- number of attributes selected
|
double |
measureSelectionTime()
Additional measure --- time taken (milliseconds) to select the attributes
|
double |
measureTime()
Additional measure --- time taken (milliseconds) to select attributes and build the classifier
|
java.lang.String |
searchTipText()
Returns the tip text for this property
|
void |
setBatchSize(java.lang.String size)
Set the batch size to use.
|
void |
setEvaluator(ASEvaluation evaluator)
Sets the attribute evaluator
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
void |
setSearch(ASSearch search)
Sets the search method
|
java.lang.String |
toString()
Output a representation of this classifier
|
classifierTipText, defaultClassifierOptions, getClassifier, getClassifierSpec, postExecution, preExecution, setClassifierclassifyInstance, debugTipText, doNotCheckCapabilitiesTipText, forName, getDebug, getDoNotCheckCapabilities, getNumDecimalPlaces, makeCopies, makeCopy, numDecimalPlacesTipText, run, runClassifier, setDebug, setDoNotCheckCapabilities, setNumDecimalPlacesprotected AttributeSelection m_AttributeSelection
protected ASEvaluation m_Evaluator
protected ASSearch m_Search
protected Instances m_ReducedHeader
protected int m_numClasses
protected double m_numAttributesSelected
protected double m_selectionTime
protected double m_totalTime
public AttributeSelectedClassifier()
protected java.lang.String defaultClassifierString()
defaultClassifierString in class SingleClassifierEnhancerpublic java.lang.String globalInfo()
public java.util.Enumeration<Option> listOptions()
listOptions in interface OptionHandlerlistOptions in class SingleClassifierEnhancerpublic void setOptions(java.lang.String[] options)
throws java.lang.Exception
-E <attribute evaluator specification> Full class name of attribute evaluator, followed by its options. eg: "weka.attributeSelection.CfsSubsetEval -L" (default weka.attributeSelection.CfsSubsetEval)
-S <search method specification> Full class name of search method, followed by its options. eg: "weka.attributeSelection.BestFirst -D 1" (default weka.attributeSelection.BestFirst)
-D If set, classifier is run in debug mode and may output additional info to the console
-W Full name of base classifier. (default: weka.classifiers.trees.J48)
Options specific to classifier weka.classifiers.trees.J48:
-U Use unpruned tree.
-C <pruning confidence> Set confidence threshold for pruning. (default 0.25)
-M <minimum number of instances> Set minimum number of instances per leaf. (default 2)
-R Use reduced error pruning.
-N <number of folds> Set number of folds for reduced error pruning. One fold is used as pruning set. (default 3)
-B Use binary splits only.
-S Don't perform subtree raising.
-L Do not clean up after the tree has been built.
-A Laplace smoothing for predicted probabilities.
-Q <seed> Seed for random data shuffling (default 1).
setOptions in interface OptionHandlersetOptions in class SingleClassifierEnhanceroptions - the list of options as an array of stringsjava.lang.Exception - if an option is not supportedpublic java.lang.String[] getOptions()
getOptions in interface OptionHandlergetOptions in class SingleClassifierEnhancerpublic java.lang.String evaluatorTipText()
public void setEvaluator(ASEvaluation evaluator)
evaluator - the evaluator with all options set.public ASEvaluation getEvaluator()
protected java.lang.String getEvaluatorSpec()
public java.lang.String searchTipText()
public void setSearch(ASSearch search)
search - the search method with all options set.public ASSearch getSearch()
protected java.lang.String getSearchSpec()
public Capabilities getCapabilities()
getCapabilities in interface ClassifiergetCapabilities in interface CapabilitiesHandlergetCapabilities in class SingleClassifierEnhancerCapabilitiespublic void buildClassifier(Instances data) throws java.lang.Exception
buildClassifier in interface Classifierdata - the training datajava.lang.Exception - if the classifier could not be built successfullypublic double[] distributionForInstance(Instance instance) throws java.lang.Exception
distributionForInstance in interface ClassifierdistributionForInstance in class AbstractClassifierinstance - the instance to be classifiedjava.lang.Exception - if instance could not be classified successfullypublic java.lang.String batchSizeTipText()
batchSizeTipText in class AbstractClassifierpublic void setBatchSize(java.lang.String size)
setBatchSize in interface BatchPredictorsetBatchSize in class AbstractClassifiersize - the batch size to usepublic java.lang.String getBatchSize()
getBatchSize in interface BatchPredictorgetBatchSize in class AbstractClassifierpublic double[][] distributionsForInstances(Instances insts) throws java.lang.Exception
distributionsForInstances in interface BatchPredictordistributionsForInstances in class AbstractClassifierinsts - the instances to get predictions forjava.lang.Exception - if a problem occurspublic boolean implementsMoreEfficientBatchPrediction()
implementsMoreEfficientBatchPrediction in interface BatchPredictorimplementsMoreEfficientBatchPrediction in class AbstractClassifierpublic int graphType()
public java.lang.String graph()
throws java.lang.Exception
public java.lang.String toString()
toString in class java.lang.Objectpublic double measureNumAttributesSelected()
public double measureSelectionTime()
public double measureTime()
public java.util.Enumeration<java.lang.String> enumerateMeasures()
enumerateMeasures in interface AdditionalMeasureProducerpublic double getMeasure(java.lang.String additionalMeasureName)
getMeasure in interface AdditionalMeasureProduceradditionalMeasureName - the name of the measure to query for its valuejava.lang.IllegalArgumentException - if the named measure is not supportedpublic java.lang.String getRevision()
getRevision in interface RevisionHandlergetRevision in class AbstractClassifierpublic static void main(java.lang.String[] argv)
argv - should contain the following arguments: -t training file [-T test file] [-c class index]