Package weka.classifiers.trees.ft
Class FTNode
- java.lang.Object
-
- weka.classifiers.Classifier
-
- weka.classifiers.trees.lmt.LogisticBase
-
- weka.classifiers.trees.ft.FTtree
-
- weka.classifiers.trees.ft.FTNode
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,CapabilitiesHandler
,OptionHandler
,RevisionHandler
,WeightedInstancesHandler
public class FTNode extends FTtree
Class for Functional tree structure.- Version:
- $Revision: 1.4 $
- Author:
- Jo\~{a}o Gama, Carlos Ferreira
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description FTNode(boolean errorOnProbabilities, int numBoostingIterations, int minNumInstances, double weightTrimBeta, boolean useAIC)
Constructor for Functional tree node.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
buildClassifier(Instances data)
Method for building a Functional tree (only called for the root node).void
buildTree(Instances data, SimpleLinearRegression[][] higherRegressions, double totalInstanceWeight, double higherNumParameters)
Method for building the tree structure.double[]
distributionForInstance(Instance instance)
Returns the class probabilities for an instance given by the Functional Tree.java.lang.String
getRevision()
Returns the revision string.double
prune()
Method for prunning a tree using C4.5 pruning procedure.-
Methods inherited from class weka.classifiers.trees.ft.FTtree
assignIDs, assignLeafModelNumbers, cleanup, getConstError, getModelParameters, getNodes, getNodes, getNumInnerNodes, getNumLeaves, graph, hasModels, modelDistributionForInstance, modelsToString, numLeaves, numNodes, toString
-
Methods inherited from class weka.classifiers.trees.lmt.LogisticBase
getMaxIterations, getNumRegressions, getUseAIC, getUsedAttributes, getWeightTrimBeta, percentAttributesUsed, setHeuristicStop, setMaxIterations, setUseAIC, setWeightTrimBeta
-
Methods inherited from class weka.classifiers.Classifier
classifyInstance, debugTipText, forName, getCapabilities, getDebug, getOptions, listOptions, makeCopies, makeCopy, setDebug, setOptions
-
-
-
-
Constructor Detail
-
FTNode
public FTNode(boolean errorOnProbabilities, int numBoostingIterations, int minNumInstances, double weightTrimBeta, boolean useAIC)
Constructor for Functional tree node.- Parameters:
errorOnProbabilities
- Use error on probabilities for stopping criterion of LogitBoost?numBoostingIterations
- sets the numBoostingIterations parameterminNumInstances
- minimum number of instances at which a node is considered for splitting
-
-
Method Detail
-
buildClassifier
public void buildClassifier(Instances data) throws java.lang.Exception
Method for building a Functional tree (only called for the root node). Grows an initial Functional Tree.- Specified by:
buildClassifier
in classFTtree
- Parameters:
data
- the data to train with- Throws:
java.lang.Exception
- if something goes wrong
-
buildTree
public void buildTree(Instances data, SimpleLinearRegression[][] higherRegressions, double totalInstanceWeight, double higherNumParameters) throws java.lang.Exception
Method for building the tree structure. Builds a logistic model, splits the node and recursively builds tree for child nodes.- Specified by:
buildTree
in classFTtree
- Parameters:
data
- the training data passed on to this nodehigherRegressions
- An array of regression functions produced by LogitBoost at higher levels in the tree. They represent a logistic regression model that is refined locally at this node.totalInstanceWeight
- the total number of training exampleshigherNumParameters
- effective number of parameters in the logistic regression model built in parent nodes- Throws:
java.lang.Exception
- if something goes wrong
-
prune
public double prune() throws java.lang.Exception
Method for prunning a tree using C4.5 pruning procedure.
-
distributionForInstance
public double[] distributionForInstance(Instance instance) throws java.lang.Exception
Returns the class probabilities for an instance given by the Functional Tree.- Specified by:
distributionForInstance
in classFTtree
- Parameters:
instance
- the instance- Returns:
- the array of probabilities
- Throws:
java.lang.Exception
- if distribution can't be computed successfully
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classFTtree
- Returns:
- the revision
-
-