public class HoeffdingAdaptiveTree extends HoeffdingTree
This adaptive Hoeffding Tree uses ADWIN to monitor performance of branches on the tree and to replace them with new branches when their accuracy decreases if the new branches are more accurate.
See details in:Adaptive Learning from Evolving Data Streams. Albert Bifet, Ricard Gavaldà . IDA 2009
HoeffdingTreeNBAdaptive
Modifier and Type | Class and Description |
---|---|
static class |
HoeffdingAdaptiveTree.AdaLearningNode |
static class |
HoeffdingAdaptiveTree.AdaSplitNode |
static interface |
HoeffdingAdaptiveTree.NewNode |
HoeffdingTree.ActiveLearningNode, HoeffdingTree.FoundNode, HoeffdingTree.InactiveLearningNode, HoeffdingTree.LearningNode, HoeffdingTree.LearningNodeNB, HoeffdingTree.LearningNodeNBAdaptive, HoeffdingTree.Node, HoeffdingTree.SplitNode
Modifier and Type | Field and Description |
---|---|
protected int |
alternateTrees |
protected int |
prunedAlternateTrees |
protected int |
switchedAlternateTrees |
activeLeafByteSizeEstimate, activeLeafNodeCount, binarySplitsOption, byteSizeEstimateOverheadFraction, decisionNodeCount, gracePeriodOption, growthAllowed, inactiveLeafByteSizeEstimate, inactiveLeafNodeCount, leafpredictionOption, maxByteSizeOption, memoryEstimatePeriodOption, nbThresholdOption, nominalEstimatorOption, noPrePruneOption, numericEstimatorOption, removePoorAttsOption, splitConfidenceOption, splitCriterionOption, stopMemManagementOption, tieThresholdOption, treeRoot
classifierRandom, modelContext, randomSeed, randomSeedOption, trainingWeightSeenByModel
classOptionNamesToPreparedObjects, options
Constructor and Description |
---|
HoeffdingAdaptiveTree() |
Modifier and Type | Method and Description |
---|---|
HoeffdingTree.FoundNode[] |
filterInstanceToLeaves(weka.core.Instance inst,
HoeffdingTree.SplitNode parent,
int parentBranch,
boolean updateSplitterCounts) |
String |
getPurposeString()
Gets the purpose of this object
|
double[] |
getVotesForInstance(weka.core.Instance inst)
Predicts the class memberships for a given instance.
|
protected HoeffdingTree.LearningNode |
newLearningNode(double[] initialClassObservations) |
protected HoeffdingTree.SplitNode |
newSplitNode(InstanceConditionalTest splitTest,
double[] classObservations) |
protected HoeffdingTree.SplitNode |
newSplitNode(InstanceConditionalTest splitTest,
double[] classObservations,
int size) |
void |
trainOnInstanceImpl(weka.core.Instance inst)
Trains this classifier incrementally using the given instance.
The reason for ...Impl methods: ease programmer burden by not requiring them to remember calls to super in overridden methods. |
activateLearningNode, attemptToSplit, calcByteSize, computeHoeffdingBound, deactivateAllLeaves, deactivateLearningNode, enforceTrackerLimit, estimateModelByteSizes, findLearningNodes, findLearningNodes, getModelDescription, getModelMeasurementsImpl, isRandomizable, measureByteSize, measureTreeDepth, newLearningNode, newNominalClassObserver, newNumericClassObserver, resetLearningImpl
contextIsCompatible, copy, correctlyClassifies, getAttributeNameString, getAWTRenderer, getClassLabelString, getClassNameString, getDescription, getModelContext, getModelMeasurements, getNominalValueString, getSubClassifiers, modelAttIndexToInstanceAttIndex, modelAttIndexToInstanceAttIndex, prepareForUseImpl, resetLearning, setModelContext, setRandomSeed, trainingHasStarted, trainingWeightSeenByModel, trainOnInstance
discoverOptionsViaReflection, getCLICreationString, getOptions, getPreparedClassOption, getPreparedClassOption, prepareClassOptions, prepareForUse, prepareForUse
copy, measureByteSize, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getCLICreationString, getOptions, prepareForUse, prepareForUse
protected int alternateTrees
protected int prunedAlternateTrees
protected int switchedAlternateTrees
public String getPurposeString()
OptionHandler
getPurposeString
in interface OptionHandler
getPurposeString
in class HoeffdingTree
protected HoeffdingTree.LearningNode newLearningNode(double[] initialClassObservations)
newLearningNode
in class HoeffdingTree
protected HoeffdingTree.SplitNode newSplitNode(InstanceConditionalTest splitTest, double[] classObservations)
newSplitNode
in class HoeffdingTree
protected HoeffdingTree.SplitNode newSplitNode(InstanceConditionalTest splitTest, double[] classObservations, int size)
newSplitNode
in class HoeffdingTree
public void trainOnInstanceImpl(weka.core.Instance inst)
AbstractClassifier
trainOnInstanceImpl
in class HoeffdingTree
inst
- the instance to be used for trainingpublic HoeffdingTree.FoundNode[] filterInstanceToLeaves(weka.core.Instance inst, HoeffdingTree.SplitNode parent, int parentBranch, boolean updateSplitterCounts)
public double[] getVotesForInstance(weka.core.Instance inst)
Classifier
getVotesForInstance
in interface Classifier
getVotesForInstance
in class HoeffdingTree
inst
- the instance to be classifiedCopyright © 2014 University of Waikato, Hamilton, NZ. All Rights Reserved.