All Packages Class Hierarchy This Package Previous Next Index WEKA's home
Class weka.classifiers.j48.J48
java.lang.Object
|
+----weka.classifiers.Classifier
|
+----weka.classifiers.DistributionClassifier
|
+----weka.classifiers.j48.J48
- public class J48
- extends DistributionClassifier
- implements OptionHandler, Drawable, Matchable, Sourcable, WeightedInstancesHandler, Summarizable, AdditionalMeasureProducer
Class for generating an unpruned or a pruned C4.5 decision tree.
For more information, see
Ross Quinlan (1993). C4.5: Programs for Machine Learning,
Morgan Kaufmann Publishers, San Mateo, CA.
Valid options are:
-U
Use unpruned tree.
-C confidence
Set confidence threshold for pruning. (Default: 0.25)
-M number
Set minimum number of instances per leaf. (Default: 2)
-R
Use reduced error pruning. No subtree raising is performed.
-N number
Set number of folds for reduced error pruning. One fold is
used as the pruning set. (Default: 3)
-B
Use binary splits for nominal attributes.
-S
Don't perform subtree raising.
-L
Do not clean up after the tree has been built.
-A
If set, Laplace smoothing is used for predicted probabilites.
- Version:
- $Revision: 1.22 $
- Author:
- Eibe Frank (eibe@cs.waikato.ac.nz)
J48()
-
buildClassifier(Instances)
- Generates the classifier.
classifyInstance(Instance)
- Classifies an instance.
distributionForInstance(Instance)
- Returns class probabilities for an instance.
enumerateMeasures()
- Returns an enumeration of the additional measure names
getBinarySplits()
- Get the value of binarySplits.
getConfidenceFactor()
- Get the value of CF.
getMeasure(String)
- Returns the value of the named measure
getMinNumObj()
- Get the value of minNumObj.
getNumFolds()
- Get the value of numFolds.
getOptions()
- Gets the current settings of the Classifier.
getReducedErrorPruning()
- Get the value of reducedErrorPruning.
getSaveInstanceData()
- Check whether instance data is to be saved.
getSubtreeRaising()
- Get the value of subtreeRaising.
getUnpruned()
- Get the value of unpruned.
getUseLaplace()
- Get the value of useLaplace.
graph()
- Returns graph describing the tree.
listOptions()
- Returns an enumeration describing the available options
Valid options are:
-U
Use unpruned tree.
-C confidence
Set confidence threshold for pruning.
main(String[])
- Main method for testing this class
measureNumLeaves()
- Returns the number of leaves
measureNumRules()
- Returns the number of rules (same as number of leaves)
measureTreeSize()
- Returns the size of the tree
prefix()
- Returns tree in prefix order.
setBinarySplits(boolean)
- Set the value of binarySplits.
setConfidenceFactor(float)
- Set the value of CF.
setMinNumObj(int)
- Set the value of minNumObj.
setNumFolds(int)
- Set the value of numFolds.
setOptions(String[])
- Parses a given list of options.
setReducedErrorPruning(boolean)
- Set the value of reducedErrorPruning.
setSaveInstanceData(boolean)
- Set whether instance data is to be saved.
setSubtreeRaising(boolean)
- Set the value of subtreeRaising.
setUnpruned(boolean)
- Set the value of unpruned.
setUseLaplace(boolean)
- Set the value of useLaplace.
toSource(String)
- Returns tree as an if-then statement.
toString()
- Returns a description of the classifier.
toSummaryString()
- Returns a superconcise version of the model
J48
public J48()
buildClassifier
public void buildClassifier(Instances instances) throws java.lang.Exception
Generates the classifier.
- Throws:
- java.lang.Exception - if classifier can't be built successfully
- Overrides:
- buildClassifier in class Classifier
classifyInstance
public double classifyInstance(Instance instance) throws java.lang.Exception
Classifies an instance.
- Throws:
- java.lang.Exception - if instance can't be classified successfully
- Overrides:
- classifyInstance in class DistributionClassifier
distributionForInstance
public final double[] distributionForInstance(Instance instance) throws java.lang.Exception
Returns class probabilities for an instance.
- Throws:
- java.lang.Exception - if distribution can't be computed successfully
- Overrides:
- distributionForInstance in class DistributionClassifier
graph
public java.lang.String graph() throws java.lang.Exception
Returns graph describing the tree.
- Throws:
- java.lang.Exception - if graph can't be computed
prefix
public java.lang.String prefix() throws java.lang.Exception
Returns tree in prefix order.
- Throws:
- java.lang.Exception - if something goes wrong
toSource
public java.lang.String toSource(java.lang.String className) throws java.lang.Exception
Returns tree as an if-then statement.
- Returns:
- the tree as a Java if-then type statement
- Throws:
- java.lang.Exception - if something goes wrong
listOptions
public java.util.Enumeration listOptions()
Returns an enumeration describing the available options
Valid options are:
-U
Use unpruned tree.
-C confidence
Set confidence threshold for pruning. (Default: 0.25)
-M number
Set minimum number of instances per leaf. (Default: 2)
-R
Use reduced error pruning. No subtree raising is performed.
-N number
Set number of folds for reduced error pruning. One fold is
used as the pruning set. (Default: 3)
-B
Use binary splits for nominal attributes.
-S
Don't perform subtree raising.
-L
Do not clean up after the tree has been built.
-A
If set, Laplace smoothing is used for predicted probabilites.
- 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.
- 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()
Gets the current settings of the Classifier.
- Returns:
- an array of strings suitable for passing to setOptions
getUseLaplace
public boolean getUseLaplace()
Get the value of useLaplace.
- Returns:
- Value of useLaplace.
setUseLaplace
public void setUseLaplace(boolean newuseLaplace)
Set the value of useLaplace.
- Parameters:
newuseLaplace
- Value to assign to useLaplace.
toString
public java.lang.String toString()
Returns a description of the classifier.
- Overrides:
- toString in class java.lang.Object
toSummaryString
public java.lang.String toSummaryString()
Returns a superconcise version of the model
measureTreeSize
public double measureTreeSize()
Returns the size of the tree
- Returns:
- the size of the tree
measureNumLeaves
public double measureNumLeaves()
Returns the number of leaves
- Returns:
- the number of leaves
measureNumRules
public double measureNumRules()
Returns the number of rules (same as number of leaves)
- Returns:
- the number of rules
enumerateMeasures
public java.util.Enumeration enumerateMeasures()
Returns an enumeration of the additional measure names
- Returns:
- an enumeration of the measure names
getMeasure
public double getMeasure(java.lang.String additionalMeasureName)
Returns the value of the named measure
- Parameters:
measureName
- the name of the measure to query for its value
- Returns:
- the value of the named measure
- Throws:
- java.lang.IllegalArgumentException - if the named measure is not supported
getUnpruned
public boolean getUnpruned()
Get the value of unpruned.
- Returns:
- Value of unpruned.
setUnpruned
public void setUnpruned(boolean v)
Set the value of unpruned. Turns reduced-error pruning
off if set.
- Parameters:
v
- Value to assign to unpruned.
getConfidenceFactor
public float getConfidenceFactor()
Get the value of CF.
- Returns:
- Value of CF.
setConfidenceFactor
public void setConfidenceFactor(float v)
Set the value of CF.
- Parameters:
v
- Value to assign to CF.
getMinNumObj
public int getMinNumObj()
Get the value of minNumObj.
- Returns:
- Value of minNumObj.
setMinNumObj
public void setMinNumObj(int v)
Set the value of minNumObj.
- Parameters:
v
- Value to assign to minNumObj.
getReducedErrorPruning
public boolean getReducedErrorPruning()
Get the value of reducedErrorPruning.
- Returns:
- Value of reducedErrorPruning.
setReducedErrorPruning
public void setReducedErrorPruning(boolean v)
Set the value of reducedErrorPruning. Turns
unpruned trees off if set.
- Parameters:
v
- Value to assign to reducedErrorPruning.
getNumFolds
public int getNumFolds()
Get the value of numFolds.
- Returns:
- Value of numFolds.
setNumFolds
public void setNumFolds(int v)
Set the value of numFolds.
- Parameters:
v
- Value to assign to numFolds.
getBinarySplits
public boolean getBinarySplits()
Get the value of binarySplits.
- Returns:
- Value of binarySplits.
setBinarySplits
public void setBinarySplits(boolean v)
Set the value of binarySplits.
- Parameters:
v
- Value to assign to binarySplits.
getSubtreeRaising
public boolean getSubtreeRaising()
Get the value of subtreeRaising.
- Returns:
- Value of subtreeRaising.
setSubtreeRaising
public void setSubtreeRaising(boolean v)
Set the value of subtreeRaising.
- Parameters:
v
- Value to assign to subtreeRaising.
getSaveInstanceData
public boolean getSaveInstanceData()
Check whether instance data is to be saved.
- Returns:
- true if instance data is saved
setSaveInstanceData
public void setSaveInstanceData(boolean v)
Set whether instance data is to be saved.
- Parameters:
v
- true if instance data is to be saved
main
public static void main(java.lang.String argv[])
Main method for testing this class
- Parameters:
String
- options
All Packages Class Hierarchy This Package Previous Next Index WEKA's home