Class FIMTDD

    • Field Detail

      • leafNodeCount

        protected int leafNodeCount
      • splitNodeCount

        protected int splitNodeCount
      • examplesSeen

        protected double examplesSeen
      • sumOfValues

        protected double sumOfValues
      • sumOfSquares

        protected double sumOfSquares
      • maxID

        public int maxID
      • splitCriterionOption

        public ClassOption splitCriterionOption
      • gracePeriodOption

        public IntOption gracePeriodOption
      • splitConfidenceOption

        public FloatOption splitConfidenceOption
      • tieThresholdOption

        public FloatOption tieThresholdOption
      • PageHinckleyAlphaOption

        public FloatOption PageHinckleyAlphaOption
      • PageHinckleyThresholdOption

        public IntOption PageHinckleyThresholdOption
      • alternateTreeFadingFactorOption

        public FloatOption alternateTreeFadingFactorOption
      • alternateTreeTMinOption

        public IntOption alternateTreeTMinOption
      • alternateTreeTimeOption

        public IntOption alternateTreeTimeOption
      • regressionTreeOption

        public FlagOption regressionTreeOption
      • learningRatioOption

        public FloatOption learningRatioOption
      • learningRateDecayFactorOption

        public FloatOption learningRateDecayFactorOption
      • learningRatioConstOption

        public FlagOption learningRatioConstOption
    • Constructor Detail

      • FIMTDD

        public FIMTDD()
    • Method Detail

      • 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
      • 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.
      • 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
      • 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
      • calcByteSize

        public int calcByteSize()
      • 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
      • normalizeTargetValue

        public double normalizeTargetValue​(double value)
      • getNormalizedError

        public double getNormalizedError​(Instance inst,
                                         double prediction)
      • trainOnInstanceImpl

        public void trainOnInstanceImpl​(Instance inst)
        Method for updating (training) the model using a new instance
        Specified by:
        trainOnInstanceImpl in class AbstractClassifier
        Parameters:
        inst - the instance to be used for training
      • processInstance

        public void processInstance​(Instance inst,
                                    FIMTDD.Node node,
                                    double prediction,
                                    double normalError,
                                    boolean growthAllowed,
                                    boolean inAlternate)
      • checkRoot

        protected void checkRoot()
      • computeHoeffdingBound

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

        public boolean buildingModelTree()
      • computeSD

        public double computeSD​(double squaredVal,
                                double val,
                                double size)