Class FTLeavesNode

    • Constructor Detail

      • FTLeavesNode

        public FTLeavesNode​(boolean errorOnProbabilities,
                            int numBoostingIterations,
                            int minNumInstances,
                            double weightTrimBeta,
                            boolean useAIC)
        Constructor for Functional Leaves tree node.
        Parameters:
        errorOnProbabilities - Use error on probabilities for stopping criterion of LogitBoost?
        numBoostingIterations - sets the numBoostingIterations parameter
        minNumInstances - minimum number of instances at which a node is considered for splitting
    • Method Detail

      • buildClassifier

        public void buildClassifier​(Instances data)
                             throws java.lang.Exception
        Method for building a Functional Leaves tree (only called for the root node). Grows an initial Functional Tree.
        Specified by:
        buildClassifier in class FTtree
        Parameters:
        data - the data to train with
        Throws:
        java.lang.Exception - if something goes wrong
      • buildTree

        public void buildTree​(Instances data,
                              SimpleLinearRegression[][] higherRegressions,
                              double totalInstanceWeight,
                              double higherNumParameters)
                       throws java.lang.Exception
        Method for building the tree structure. Builds a logistic model, splits the node and recursively builds tree for child nodes.
        Specified by:
        buildTree in class FTtree
        Parameters:
        data - the training data passed on to this node
        higherRegressions - An array of regression functions produced by LogitBoost at higher levels in the tree. They represent a logistic regression model that is refined locally at this node.
        totalInstanceWeight - the total number of training examples
        higherNumParameters - effective number of parameters in the logistic regression model built in parent nodes
        Throws:
        java.lang.Exception - if something goes wrong
      • prune

        public double prune()
                     throws java.lang.Exception
        Prunes a tree using C4.5 pruning procedure.
        Specified by:
        prune in class FTtree
        Throws:
        java.lang.Exception - if something goes wrong
      • distributionForInstance

        public double[] distributionForInstance​(Instance instance)
                                         throws java.lang.Exception
        Returns the class probabilities for an instance given by the Functional Leaves tree.
        Specified by:
        distributionForInstance in class FTtree
        Parameters:
        instance - the instance
        Returns:
        the array of probabilities
        Throws:
        java.lang.Exception - if distribution can't be computed successfully