Class EFDT

    • Field Detail

      • reEvalPeriodOption

        public IntOption reEvalPeriodOption
      • maxByteSizeOption

        public IntOption maxByteSizeOption
      • numericEstimatorOption

        public ClassOption numericEstimatorOption
      • nominalEstimatorOption

        public ClassOption nominalEstimatorOption
      • memoryEstimatePeriodOption

        public IntOption memoryEstimatePeriodOption
      • gracePeriodOption

        public IntOption gracePeriodOption
      • splitCriterionOption

        public ClassOption splitCriterionOption
      • splitConfidenceOption

        public FloatOption splitConfidenceOption
      • tieThresholdOption

        public FloatOption tieThresholdOption
      • binarySplitsOption

        public FlagOption binarySplitsOption
      • stopMemManagementOption

        public FlagOption stopMemManagementOption
      • removePoorAttsOption

        public FlagOption removePoorAttsOption
      • noPrePruneOption

        public FlagOption noPrePruneOption
      • nbThresholdOption

        public IntOption nbThresholdOption
      • decisionNodeCount

        protected int decisionNodeCount
      • activeLeafNodeCount

        protected int activeLeafNodeCount
      • inactiveLeafNodeCount

        protected int inactiveLeafNodeCount
      • inactiveLeafByteSizeEstimate

        protected double inactiveLeafByteSizeEstimate
      • activeLeafByteSizeEstimate

        protected double activeLeafByteSizeEstimate
      • byteSizeEstimateOverheadFraction

        protected double byteSizeEstimateOverheadFraction
      • growthAllowed

        protected boolean growthAllowed
      • numInstances

        protected int numInstances
      • splitCount

        protected int splitCount
    • Constructor Detail

      • EFDT

        public EFDT()
    • Method Detail

      • calcByteSize

        public int calcByteSize()
      • resetLearningImpl

        public void resetLearningImpl()
        Description copied from class: AbstractClassifier
        Resets this classifier. It must be similar to starting a new classifier from scratch.

        The reason for ...Impl methods: ease programmer burden by not requiring them to remember calls to super in overridden methods. Note that this will produce compiler errors if not overridden.
        Specified by:
        resetLearningImpl in class AbstractClassifier
      • getVotesForInstance

        public double[] getVotesForInstance​(Instance inst)
        Description copied from interface: Classifier
        Predicts the class memberships for a given instance. If an instance is unclassified, the returned array elements must be all zero.
        Specified by:
        getVotesForInstance in interface Classifier
        Specified by:
        getVotesForInstance in class AbstractClassifier
        Parameters:
        inst - the instance to be classified
        Returns:
        an array containing the estimated membership probabilities of the test instance in each class
      • getModelMeasurementsImpl

        protected Measurement[] getModelMeasurementsImpl()
        Description copied from class: AbstractClassifier
        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. Note that this will produce compiler errors if not overridden.
        Specified by:
        getModelMeasurementsImpl in class AbstractClassifier
        Returns:
        an array of measurements to be used in evaluation tasks
      • measureTreeDepth

        public int measureTreeDepth()
      • getModelDescription

        public void getModelDescription​(StringBuilder out,
                                        int indent)
        Description copied from class: AbstractClassifier
        Returns a string representation of the model.
        Specified by:
        getModelDescription in class AbstractClassifier
        Parameters:
        out - the stringbuilder to add the description
        indent - the number of characters to indent
      • isRandomizable

        public boolean isRandomizable()
        Description copied from interface: Learner
        Gets whether this learner needs a random seed. Examples of methods that needs a random seed are bagging and boosting.
        Specified by:
        isRandomizable in interface Learner<Example<Instance>>
        Returns:
        true if the learner needs a random seed.
      • computeHoeffdingBound

        public static double computeHoeffdingBound​(double range,
                                                   double confidence,
                                                   double n)
      • enforceTrackerLimit

        public void enforceTrackerLimit()
      • estimateModelByteSizes

        public void estimateModelByteSizes()
      • deactivateAllLeaves

        public void deactivateAllLeaves()
      • trainOnInstanceImpl

        public void trainOnInstanceImpl​(Instance inst)
        Description copied from class: AbstractClassifier
        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. Note that this will produce compiler errors if not overridden.
        Specified by:
        trainOnInstanceImpl in class AbstractClassifier
        Parameters:
        inst - the instance to be used for training
      • newLearningNode

        protected EFDT.LearningNode newLearningNode​(double[] initialClassObservations)