Configurable
, java.io.Serializable
, CapabilitiesHandler
, Classifier
, MultiClassClassifier
, AWTRenderable
, Learner<Example<Instance>>
, MOAObject
, OptionHandler
HoeffdingAdaptiveTreeClassifLeaves
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 | 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 | Description |
---|---|---|
protected int |
alternateTrees |
|
protected int |
prunedAlternateTrees |
|
protected int |
switchedAlternateTrees |
classifierRandom, modelContext, randomSeed, randomSeedOption, trainingWeightSeenByModel
config
activeLeafByteSizeEstimate, activeLeafNodeCount, binarySplitsOption, byteSizeEstimateOverheadFraction, decisionNodeCount, gracePeriodOption, growthAllowed, inactiveLeafByteSizeEstimate, inactiveLeafNodeCount, leafpredictionOption, maxByteSizeOption, memoryEstimatePeriodOption, nbThresholdOption, nominalEstimatorOption, noPrePruneOption, numericEstimatorOption, removePoorAttsOption, splitConfidenceOption, splitCriterionOption, stopMemManagementOption, tieThresholdOption, treeRoot
Constructor | Description |
---|---|
HoeffdingAdaptiveTree() |
Modifier and Type | Method | Description |
---|---|---|
ImmutableCapabilities |
defineImmutableCapabilities() |
Defines the set of capabilities the object has.
|
HoeffdingTree.FoundNode[] |
filterInstanceToLeaves(Instance inst,
HoeffdingTree.SplitNode parent,
int parentBranch,
boolean updateSplitterCounts) |
|
java.lang.String |
getPurposeString() |
Dictionary with option texts and objects
|
double[] |
getVotesForInstance(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(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. |
contextIsCompatible, copy, correctlyClassifies, getAttributeNameString, getAWTRenderer, getClassLabelString, getClassNameString, getDescription, getModel, getModelContext, getModelMeasurements, getNominalValueString, getPredictionForInstance, getPredictionForInstance, getSubClassifiers, getSublearners, getVotesForInstance, modelAttIndexToInstanceAttIndex, modelAttIndexToInstanceAttIndex, prepareForUseImpl, resetLearning, setModelContext, setRandomSeed, trainingHasStarted, trainingWeightSeenByModel, trainOnInstance, trainOnInstance
copy, measureByteSize, toString
getCLICreationString, getOptions, getPreparedClassOption, prepareClassOptions, prepareForUse, prepareForUse
getCapabilities
activateLearningNode, attemptToSplit, calcByteSize, computeHoeffdingBound, deactivateAllLeaves, deactivateLearningNode, enforceTrackerLimit, estimateModelByteSizes, findLearningNodes, findLearningNodes, getModelDescription, getModelMeasurementsImpl, getNodeCount, getTreeRoot, isRandomizable, measureByteSize, measureTreeDepth, newLearningNode, newNominalClassObserver, newNumericClassObserver, resetLearningImpl
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getCLICreationString, getOptions, prepareForUse, prepareForUse
protected int alternateTrees
protected int prunedAlternateTrees
protected int switchedAlternateTrees
public java.lang.String getPurposeString()
AbstractOptionHandler
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, int size)
newSplitNode
in class HoeffdingTree
protected HoeffdingTree.SplitNode newSplitNode(InstanceConditionalTest splitTest, double[] classObservations)
newSplitNode
in class HoeffdingTree
public void trainOnInstanceImpl(Instance inst)
AbstractClassifier
trainOnInstanceImpl
in class HoeffdingTree
inst
- the instance to be used for trainingpublic HoeffdingTree.FoundNode[] filterInstanceToLeaves(Instance inst, HoeffdingTree.SplitNode parent, int parentBranch, boolean updateSplitterCounts)
public double[] getVotesForInstance(Instance inst)
Classifier
getVotesForInstance
in interface Classifier
getVotesForInstance
in class HoeffdingTree
inst
- the instance to be classifiedpublic ImmutableCapabilities defineImmutableCapabilities()
CapabilitiesHandler
defineImmutableCapabilities
in interface CapabilitiesHandler
defineImmutableCapabilities
in class HoeffdingTree
Copyright © 2020 University of Waikato, Hamilton, NZ. All Rights Reserved.