Package weka.classifiers.trees.m5
Class Rule
- java.lang.Object
-
- weka.classifiers.trees.m5.Rule
-
- All Implemented Interfaces:
java.io.Serializable
,RevisionHandler
public class Rule extends java.lang.Object implements java.io.Serializable, RevisionHandler
Generates a single m5 tree or rule- Version:
- $Revision: 6260 $
- Author:
- Mark Hall
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Rule()
Constructor declaration
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
buildClassifier(Instances data)
Generates a single rule or m5 model tree.double
classifyInstance(Instance instance)
Calculates a prediction for an instance using this rule or M5 model treevoid
freeNotCoveredInstances()
Free up memory consumed by the set of instances not covered by this rule.RuleNode
getM5RootNode()
double
getMinNumInstances()
Get the minimum number of instances to allow at a leaf nodeboolean
getRegressionTree()
Get the value of regressionTree.java.lang.String
getRevision()
Returns the revision string.boolean
getSmoothing()
Get whether or not smoothing has been turned onboolean
getUnpruned()
Get whether unpruned tree/rules are being generatedboolean
getUseTree()
get whether an m5 tree is being used rather than rulesInstances
notCoveredInstances()
Get the instances not covered by this rulevoid
setMinNumInstances(double minNum)
Set the minumum number of instances to allow at a leaf nodevoid
setRegressionTree(boolean newregressionTree)
Set the value of regressionTree.void
setSmoothing(boolean s)
Smooth predictionsvoid
setUnpruned(boolean unpruned)
Use unpruned tree/rulesvoid
setUseTree(boolean u)
Use an m5 tree rather than generate rulesRuleNode
topOfTree()
Returns the top of the tree.java.lang.String
toString()
Return a description of the m5 tree or rule
-
-
-
Method Detail
-
buildClassifier
public void buildClassifier(Instances data) throws java.lang.Exception
Generates a single rule or m5 model tree.- Parameters:
data
- set of instances serving as training data- Throws:
java.lang.Exception
- if the rule has not been generated successfully
-
classifyInstance
public double classifyInstance(Instance instance) throws java.lang.Exception
Calculates a prediction for an instance using this rule or M5 model tree- Parameters:
instance
- the instance whos class value is to be predicted- Returns:
- the prediction
- Throws:
java.lang.Exception
- if a prediction can't be made.
-
topOfTree
public RuleNode topOfTree()
Returns the top of the tree.
-
toString
public java.lang.String toString()
Return a description of the m5 tree or rule- Overrides:
toString
in classjava.lang.Object
- Returns:
- a description of the m5 tree or rule as a String
-
setUnpruned
public void setUnpruned(boolean unpruned)
Use unpruned tree/rules- Parameters:
unpruned
- true if unpruned tree/rules are to be generated
-
getUnpruned
public boolean getUnpruned()
Get whether unpruned tree/rules are being generated- Returns:
- true if unpruned tree/rules are to be generated
-
setUseTree
public void setUseTree(boolean u)
Use an m5 tree rather than generate rules- Parameters:
u
- true if m5 tree is to be used
-
getUseTree
public boolean getUseTree()
get whether an m5 tree is being used rather than rules- Returns:
- true if an m5 tree is being used.
-
setSmoothing
public void setSmoothing(boolean s)
Smooth predictions- Parameters:
s
- true if smoothing is to be used
-
getSmoothing
public boolean getSmoothing()
Get whether or not smoothing has been turned on- Returns:
- true if smoothing is being used
-
notCoveredInstances
public Instances notCoveredInstances()
Get the instances not covered by this rule- Returns:
- the instances not covered
-
freeNotCoveredInstances
public void freeNotCoveredInstances()
Free up memory consumed by the set of instances not covered by this rule.
-
getRegressionTree
public boolean getRegressionTree()
Get the value of regressionTree.- Returns:
- Value of regressionTree.
-
setRegressionTree
public void setRegressionTree(boolean newregressionTree)
Set the value of regressionTree.- Parameters:
newregressionTree
- Value to assign to regressionTree.
-
setMinNumInstances
public void setMinNumInstances(double minNum)
Set the minumum number of instances to allow at a leaf node- Parameters:
minNum
- the minimum number of instances
-
getMinNumInstances
public double getMinNumInstances()
Get the minimum number of instances to allow at a leaf node- Returns:
- a
double
value
-
getM5RootNode
public RuleNode getM5RootNode()
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Returns:
- the revision
-
-