Class ARFFIMTDD

  • All Implemented Interfaces:
    Configurable, Serializable, CapabilitiesHandler, Classifier, Regressor, AWTRenderable, Learner<Example<Instance>>, MOAObject, OptionHandler

    public class ARFFIMTDD
    extends AbstractClassifier
    implements Regressor
    Implementation of ARFFIMTDD, an extension of FIMTDD to be used by AdaptiveRandomForestRegressor.

    See details in:
    Heitor Murilo Gomes, Jean Paul Barddal, Luis Eduardo Boiko Ferreira, Albert Bifet. Adaptive random forests for data stream regression. In European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning (ESANN), 2018. https://www.elen.ucl.ac.be/Proceedings/esann/esannpdf/es2018-183.pdf

    FIMT-DD:
    Ikonomovska, Elena, João Gama, and Sašo Džeroski. Learning model trees from evolving data streams. Data mining and knowledge discovery 23.1 (2011): 128-168.

    See Also:
    Serialized Form
    • 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
      • subspaceSizeOption

        public IntOption subspaceSizeOption
      • 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
      • learningRatioOption

        public FloatOption learningRatioOption
      • learningRateDecayFactorOption

        public FloatOption learningRateDecayFactorOption
      • learningRatioConstOption

        public FlagOption learningRatioConstOption
    • Constructor Detail

      • ARFFIMTDD

        public ARFFIMTDD()
    • 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,
                                    ARFFIMTDD.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)
      • computeSD

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