|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectweka.classifiers.Classifier
weka.classifiers.rules.DecisionTable
public class DecisionTable
Class for building and using a simple decision table majority classifier.
For more information see:
Ron Kohavi: The Power of Decision Tables. In: 8th European Conference on Machine Learning, 174-189, 1995.
@inproceedings{Kohavi1995,
author = {Ron Kohavi},
booktitle = {8th European Conference on Machine Learning},
pages = {174-189},
publisher = {Springer},
title = {The Power of Decision Tables},
year = {1995}
}
Valid options are:
-S <search method specification> Full class name of search method, followed by its options. eg: "weka.attributeSelection.BestFirst -D 1" (default weka.attributeSelection.BestFirst)
-X <number of folds> Use cross validation to evaluate features. Use number of folds = 1 for leave one out CV. (Default = leave one out CV)
-E <acc | rmse | mae | auc> Performance evaluation measure to use for selecting attributes. (Default = accuracy for discrete class and rmse for numeric class)
-I Use nearest neighbour instead of global table majority.
-R Display decision table rules.
Options specific to search method weka.attributeSelection.BestFirst:
-P <start set> Specify a starting set of attributes. Eg. 1,3,5-7.
-D <0 = backward | 1 = forward | 2 = bi-directional> Direction of search. (default = 1).
-N <num> Number of non-improving nodes to consider before terminating search.
-S <num> Size of lookup cache for evaluated subsets. Expressed as a multiple of the number of attributes in the data set. (default = 1)
| Field Summary | |
|---|---|
static int |
EVAL_ACCURACY
|
static int |
EVAL_AUC
|
static int |
EVAL_DEFAULT
default is accuracy for discrete class and RMSE for numeric class |
static int |
EVAL_MAE
|
static int |
EVAL_RMSE
|
static Tag[] |
TAGS_EVALUATION
|
| Constructor Summary | |
|---|---|
DecisionTable()
Constructor for a DecisionTable |
|
| Method Summary | |
|---|---|
void |
buildClassifier(Instances data)
Generates the classifier. |
java.lang.String |
crossValTipText()
Returns the tip text for this property |
java.lang.String |
displayRulesTipText()
Returns the tip text for this property |
double[] |
distributionForInstance(Instance instance)
Calculates the class membership probabilities for the given test instance. |
java.util.Enumeration |
enumerateMeasures()
Returns an enumeration of the additional measure names |
java.lang.String |
evaluationMeasureTipText()
Returns the tip text for this property |
Capabilities |
getCapabilities()
Returns default capabilities of the classifier. |
int |
getCrossVal()
Gets the number of folds for cross validation |
boolean |
getDisplayRules()
Gets whether rules are being printed |
SelectedTag |
getEvaluationMeasure()
Gets the currently set performance evaluation measure used for selecting attributes for the decision table |
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 current search method |
TechnicalInformation |
getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on. |
boolean |
getUseIBk()
Gets whether IBk is being used instead of the majority class |
java.lang.String |
globalInfo()
Returns a string describing classifier |
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options. |
static void |
main(java.lang.String[] argv)
Main method for testing this class. |
double |
measureNumRules()
Returns the number of rules |
java.lang.String |
printFeatures()
Returns a string description of the features selected |
java.lang.String |
searchTipText()
Returns the tip text for this property |
void |
setCrossVal(int folds)
Sets the number of folds for cross validation (1 = leave one out) |
void |
setDisplayRules(boolean rules)
Sets whether rules are to be printed |
void |
setEvaluationMeasure(SelectedTag newMethod)
Sets the performance evaluation measure to use for selecting attributes for the decision table |
void |
setOptions(java.lang.String[] options)
Parses the options for this object. |
void |
setSearch(ASSearch search)
Sets the search method to use |
void |
setUseIBk(boolean ibk)
Sets whether IBk should be used instead of the majority class |
java.lang.String |
toString()
Returns a description of the classifier. |
java.lang.String |
useIBkTipText()
Returns the tip text for this property |
| Methods inherited from class weka.classifiers.Classifier |
|---|
classifyInstance, debugTipText, forName, getDebug, makeCopies, makeCopy, setDebug |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final int EVAL_DEFAULT
public static final int EVAL_ACCURACY
public static final int EVAL_RMSE
public static final int EVAL_MAE
public static final int EVAL_AUC
public static final Tag[] TAGS_EVALUATION
| Constructor Detail |
|---|
public DecisionTable()
| Method Detail |
|---|
public java.lang.String globalInfo()
public TechnicalInformation getTechnicalInformation()
getTechnicalInformation in interface TechnicalInformationHandlerpublic java.util.Enumeration listOptions()
listOptions in interface OptionHandlerlistOptions in class Classifierpublic java.lang.String crossValTipText()
public void setCrossVal(int folds)
folds - the number of foldspublic int getCrossVal()
public java.lang.String useIBkTipText()
public void setUseIBk(boolean ibk)
ibk - true if IBk is to be usedpublic boolean getUseIBk()
public java.lang.String displayRulesTipText()
public void setDisplayRules(boolean rules)
rules - true if rules are to be printedpublic boolean getDisplayRules()
public java.lang.String searchTipText()
public void setSearch(ASSearch search)
search - public ASSearch getSearch()
public java.lang.String evaluationMeasureTipText()
public SelectedTag getEvaluationMeasure()
public void setEvaluationMeasure(SelectedTag newMethod)
newMethod - the new performance evaluation metric to use
public void setOptions(java.lang.String[] options)
throws java.lang.Exception
-S <search method specification> Full class name of search method, followed by its options. eg: "weka.attributeSelection.BestFirst -D 1" (default weka.attributeSelection.BestFirst)
-X <number of folds> Use cross validation to evaluate features. Use number of folds = 1 for leave one out CV. (Default = leave one out CV)
-E <acc | rmse | mae | auc> Performance evaluation measure to use for selecting attributes. (Default = accuracy for discrete class and rmse for numeric class)
-I Use nearest neighbour instead of global table majority.
-R Display decision table rules.
Options specific to search method weka.attributeSelection.BestFirst:
-P <start set> Specify a starting set of attributes. Eg. 1,3,5-7.
-D <0 = backward | 1 = forward | 2 = bi-directional> Direction of search. (default = 1).
-N <num> Number of non-improving nodes to consider before terminating search.
-S <num> Size of lookup cache for evaluated subsets. Expressed as a multiple of the number of attributes in the data set. (default = 1)
setOptions in interface OptionHandlersetOptions in class Classifieroptions - the list of options as an array of strings
java.lang.Exception - if an option is not supportedpublic java.lang.String[] getOptions()
getOptions in interface OptionHandlergetOptions in class Classifierpublic Capabilities getCapabilities()
getCapabilities in interface CapabilitiesHandlergetCapabilities in class ClassifierCapabilities
public void buildClassifier(Instances data)
throws java.lang.Exception
buildClassifier in class Classifierdata - set of instances serving as training data
java.lang.Exception - if the classifier has not been generated successfully
public double[] distributionForInstance(Instance instance)
throws java.lang.Exception
distributionForInstance in class Classifierinstance - the instance to be classified
java.lang.Exception - if distribution can't be computedpublic java.lang.String printFeatures()
public double measureNumRules()
public java.util.Enumeration enumerateMeasures()
enumerateMeasures in interface AdditionalMeasureProducerpublic double getMeasure(java.lang.String additionalMeasureName)
getMeasure in interface AdditionalMeasureProduceradditionalMeasureName - the name of the measure to query for its value
java.lang.IllegalArgumentException - if the named measure is not supportedpublic java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.String getRevision()
getRevision in interface RevisionHandlergetRevision in class Classifierpublic static void main(java.lang.String[] argv)
argv - the command-line options
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||