public class HoeffdingOptionTree extends AbstractClassifier
Hoeffding Option Trees are regular Hoeffding trees containing additional option nodes that allow several tests to be applied, leading to multiple Hoeffding trees as separate paths. They consist of a single structure that efficiently represents multiple trees. A particular example can travel down multiple paths of the tree, contributing, in different ways, to different options.
See for details:
B. Pfahringer, G. Holmes, and R. Kirkby. New options for hoeffding trees. In AI, pages 90–99, 2007.
Parameters:
| Modifier and Type | Class and Description |
|---|---|
static class |
HoeffdingOptionTree.ActiveLearningNode |
static class |
HoeffdingOptionTree.FoundNode |
static class |
HoeffdingOptionTree.InactiveLearningNode |
static class |
HoeffdingOptionTree.LearningNode |
static class |
HoeffdingOptionTree.LearningNodeNB |
static class |
HoeffdingOptionTree.LearningNodeNBAdaptive |
static class |
HoeffdingOptionTree.Node |
static class |
HoeffdingOptionTree.SplitNode |
| Modifier and Type | Field and Description |
|---|---|
protected double |
activeLeafByteSizeEstimate |
protected int |
activeLeafNodeCount |
FlagOption |
binarySplitsOption |
protected double |
byteSizeEstimateOverheadFraction |
protected int |
decisionNodeCount |
FileOption |
dumpFileOption |
IntOption |
gracePeriodOption |
protected double |
inactiveLeafByteSizeEstimate |
protected int |
inactiveLeafNodeCount |
MultiChoiceOption |
leafpredictionOption |
IntOption |
maxByteSizeOption |
IntOption |
maxOptionPathsOption |
protected int |
maxPredictionPaths |
IntOption |
memoryEstimatePeriodOption |
IntOption |
memoryStrategyOption |
IntOption |
nbThresholdOption |
ClassOption |
nominalEstimatorOption |
FlagOption |
noPrePruneOption |
ClassOption |
numericEstimatorOption |
FlagOption |
removePoorAttsOption |
FloatOption |
secondarySplitConfidenceOption |
FloatOption |
splitConfidenceOption |
ClassOption |
splitCriterionOption |
FloatOption |
tieThresholdOption |
protected HoeffdingOptionTree.Node |
treeRoot |
classifierRandom, modelContext, randomSeed, randomSeedOption, trainingWeightSeenByModelclassOptionNamesToPreparedObjects, options| Constructor and Description |
|---|
HoeffdingOptionTree() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
activateLearningNode(HoeffdingOptionTree.InactiveLearningNode toActivate,
HoeffdingOptionTree.SplitNode parent,
int parentBranch) |
protected void |
attemptToSplit(HoeffdingOptionTree.ActiveLearningNode node,
HoeffdingOptionTree.SplitNode parent,
int parentIndex) |
int |
calcByteSize() |
static double |
computeHoeffdingBound(double range,
double confidence,
double n) |
void |
deactivateAllLeaves() |
protected void |
deactivateLearningNode(HoeffdingOptionTree.ActiveLearningNode toDeactivate,
HoeffdingOptionTree.SplitNode parent,
int parentBranch) |
void |
enforceTrackerLimit() |
void |
estimateModelByteSizes() |
protected HoeffdingOptionTree.FoundNode[] |
findLearningNodes() |
protected void |
findLearningNodes(HoeffdingOptionTree.Node node,
HoeffdingOptionTree.SplitNode parent,
int parentBranch,
List<HoeffdingOptionTree.FoundNode> found) |
void |
getModelDescription(StringBuilder out,
int indent)
Returns a string representation of the model.
|
protected Measurement[] |
getModelMeasurementsImpl()
Gets the current measurements of this classifier.
The reason for ...Impl methods: ease programmer burden by not requiring them to remember calls to super in overridden methods. |
String |
getPurposeString()
Gets the purpose of this object
|
double[] |
getVotesForInstance(weka.core.Instance inst)
Predicts the class memberships for a given instance.
|
boolean |
isRandomizable()
Gets whether this classifier needs a random seed.
|
int |
measureByteSize()
Gets the memory size of this object.
|
int |
measureTreeDepth() |
protected HoeffdingOptionTree.LearningNode |
newLearningNode() |
protected HoeffdingOptionTree.LearningNode |
newLearningNode(double[] initialClassObservations) |
protected AttributeClassObserver |
newNominalClassObserver() |
protected AttributeClassObserver |
newNumericClassObserver() |
void |
resetLearningImpl()
Resets this classifier.
|
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. |
contextIsCompatible, copy, correctlyClassifies, getAttributeNameString, getAWTRenderer, getClassLabelString, getClassNameString, getDescription, getModelContext, getModelMeasurements, getNominalValueString, getSubClassifiers, modelAttIndexToInstanceAttIndex, modelAttIndexToInstanceAttIndex, prepareForUseImpl, resetLearning, setModelContext, setRandomSeed, trainingHasStarted, trainingWeightSeenByModel, trainOnInstancediscoverOptionsViaReflection, getCLICreationString, getOptions, getPreparedClassOption, getPreparedClassOption, prepareClassOptions, prepareForUse, prepareForUsecopy, measureByteSize, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetCLICreationString, getOptions, prepareForUse, prepareForUsepublic IntOption maxOptionPathsOption
public IntOption maxByteSizeOption
public ClassOption numericEstimatorOption
public ClassOption nominalEstimatorOption
public IntOption memoryEstimatePeriodOption
public IntOption gracePeriodOption
public ClassOption splitCriterionOption
public FloatOption splitConfidenceOption
public FloatOption secondarySplitConfidenceOption
public FloatOption tieThresholdOption
public FlagOption binarySplitsOption
public FlagOption removePoorAttsOption
public FlagOption noPrePruneOption
public FileOption dumpFileOption
public IntOption memoryStrategyOption
protected HoeffdingOptionTree.Node treeRoot
protected int decisionNodeCount
protected int activeLeafNodeCount
protected int inactiveLeafNodeCount
protected double inactiveLeafByteSizeEstimate
protected double activeLeafByteSizeEstimate
protected double byteSizeEstimateOverheadFraction
protected int maxPredictionPaths
public MultiChoiceOption leafpredictionOption
public IntOption nbThresholdOption
public String getPurposeString()
OptionHandlergetPurposeString in interface OptionHandlergetPurposeString in class AbstractClassifierpublic int calcByteSize()
public int measureByteSize()
MOAObjectmeasureByteSize in interface MOAObjectmeasureByteSize in class AbstractMOAObjectpublic void resetLearningImpl()
AbstractClassifierresetLearningImpl in class AbstractClassifierpublic void trainOnInstanceImpl(weka.core.Instance inst)
AbstractClassifiertrainOnInstanceImpl in class AbstractClassifierinst - the instance to be used for trainingpublic double[] getVotesForInstance(weka.core.Instance inst)
Classifierinst - the instance to be classifiedprotected Measurement[] getModelMeasurementsImpl()
AbstractClassifiergetModelMeasurementsImpl in class AbstractClassifierpublic int measureTreeDepth()
public void getModelDescription(StringBuilder out, int indent)
AbstractClassifiergetModelDescription in class AbstractClassifierout - the stringbuilder to add the descriptionindent - the number of characters to indentpublic boolean isRandomizable()
Classifierpublic static double computeHoeffdingBound(double range,
double confidence,
double n)
protected AttributeClassObserver newNominalClassObserver()
protected AttributeClassObserver newNumericClassObserver()
protected void attemptToSplit(HoeffdingOptionTree.ActiveLearningNode node, HoeffdingOptionTree.SplitNode parent, int parentIndex)
public void enforceTrackerLimit()
public void estimateModelByteSizes()
public void deactivateAllLeaves()
protected void deactivateLearningNode(HoeffdingOptionTree.ActiveLearningNode toDeactivate, HoeffdingOptionTree.SplitNode parent, int parentBranch)
protected void activateLearningNode(HoeffdingOptionTree.InactiveLearningNode toActivate, HoeffdingOptionTree.SplitNode parent, int parentBranch)
protected HoeffdingOptionTree.FoundNode[] findLearningNodes()
protected void findLearningNodes(HoeffdingOptionTree.Node node, HoeffdingOptionTree.SplitNode parent, int parentBranch, List<HoeffdingOptionTree.FoundNode> found)
protected HoeffdingOptionTree.LearningNode newLearningNode()
protected HoeffdingOptionTree.LearningNode newLearningNode(double[] initialClassObservations)
Copyright © 2014 University of Waikato, Hamilton, NZ. All Rights Reserved.