Categories &

Functions List

Class Definition: RegressionBaggedEnsemble

statistics: RegressionBaggedEnsemble

Bagged ensemble of regression trees

A RegressionBaggedEnsemble object holds regression trees each grown on a sample drawn from the training data in proportion to the observation weights, each split chosen from ceil (P / 3) predictors drawn afresh at every node. It predicts by averaging its trees.

Create one with fitrensemble and 'Method' set to 'Bag'. It carries everything a RegressionEnsemble does, and which rows each tree drew. LSBoost that resamples, asked for with 'Resample', 'FResample' or 'Replace', returns this class too: its trees are boosted and summed by their weights, each fitted on the rows it drew.

See also: fitrensemble, RegressionEnsemble, CompactRegressionEnsemble, TreeBagger

Source Code: RegressionBaggedEnsemble

The RegressionBaggedEnsemble class contains the following properties:

A number greater than 0 and no greater than 1, each tree drawing ceil (FResample * N) observations. This property is read-only.

A logical scalar, true by default. This property is read-only.

An NxNumTrained logical matrix, true where a tree’s sample holds an observation. This property is read-only.

Empty until regularize fills it with a structure of lasso weights for the trees, and emptied again by resume. This property is read-only.

The response the ensemble was fitted on, a row missing a value having been left out. This property is read-only.

The predictors the ensemble was fitted on, one row per observation. This property is read-only.

A logical column over the rows as supplied. This property is read-only.

The weights given, normalized to sum to one. This property is read-only.

A structure with the fields Type, Method, LearnerTemplates, NLearn, the number of learning cycles asked for in all, and for LSBoost LearnRate. This property is read-only.

This property is read-only.

Always empty, binning not being implemented. This property is read-only.

Always empty, such optimization not being implemented. This property is read-only.

A cell array of character vectors. This property is read-only.

The predictors every tree treats as categorical, empty when none is. This property is read-only.

This property is read-only.

The same as PredictorNames. This property is read-only.

'LSBoost' or 'Bag'. This property is read-only.

Always {'Tree'}. This property is read-only.

This property is read-only.

For LSBoost, a column with the weighted mean squared error of each tree against the residual it was fitted to. Empty for Bag. This property is read-only.

This property is read-only.

Always empty, as MATLAB returns it for tree learners. This property is read-only.

This property is read-only.

A column cell array of CompactRegressionTree objects. This property is read-only.

A column with one weight per tree. This property is read-only.

'WeightedSum' for LSBoost, 'WeightedAverage' for Bag. This property is read-only.

See CompactRegressionEnsemble.ResponseTransform.

The RegressionBaggedEnsemble class offers the following public methods:

RegressionBaggedEnsemble: obj = RegressionBaggedEnsemble (X, Y)
RegressionBaggedEnsemble: obj = RegressionBaggedEnsemble (…, name, value)

fitrensemble with 'Method' set to 'Bag' is the documented way in, and its help lists the options both take.

See also: fitrensemble, RegressionEnsemble

RegressionBaggedEnsemble: CVMdl = crossval (obj)
RegressionBaggedEnsemble: CVMdl = crossval (…, name, value)

Behaves as RegressionEnsemble.crossval, returning a RegressionPartitionedEnsemble.

See also: RegressionBaggedEnsemble, RegressionPartitionedEnsemble

RegressionBaggedEnsemble: B = regularize (obj)
RegressionBaggedEnsemble: B = regularize (…, name, value)

Behaves as RegressionEnsemble.regularize.

See also: RegressionBaggedEnsemble, RegressionEnsemble.regularize

RegressionBaggedEnsemble: C = shrink (obj)
RegressionBaggedEnsemble: C = shrink (…, name, value)

Behaves as RegressionEnsemble.shrink, returning a CompactRegressionEnsemble.

See also: RegressionBaggedEnsemble, RegressionEnsemble.shrink

RegressionBaggedEnsemble: [vals, nlearn] = cvshrink (obj)
RegressionBaggedEnsemble: [vals, nlearn] = cvshrink (…, name, value)

Behaves as RegressionEnsemble.cvshrink.

See also: RegressionBaggedEnsemble, RegressionEnsemble.cvshrink

RegressionBaggedEnsemble: CMdl = compact (obj)

Returns a CompactRegressionEnsemble, as RegressionEnsemble.compact does.

See also: RegressionBaggedEnsemble, CompactRegressionEnsemble

RegressionBaggedEnsemble: B = resume (obj, NumLearningCycles)
RegressionBaggedEnsemble: B = resume (…, ’NPrint’, n)

Behaves as RegressionEnsemble.resume, the new trees’ samples added to UseObsForLearner.

See also: RegressionBaggedEnsemble, RegressionEnsemble.resume

RegressionBaggedEnsemble: yfit = predict (obj, X)
RegressionBaggedEnsemble: yfit = predict (…, name, value)

Behaves as CompactRegressionEnsemble.predict.

See also: RegressionBaggedEnsemble, CompactRegressionEnsemble.predict

RegressionBaggedEnsemble: L = loss (obj, X, Y)
RegressionBaggedEnsemble: L = loss (…, name, value)

Behaves as CompactRegressionEnsemble.loss.

See also: RegressionBaggedEnsemble, CompactRegressionEnsemble.loss

RegressionBaggedEnsemble: yfit = resubPredict (obj)
RegressionBaggedEnsemble: yfit = resubPredict (…, name, value)

Behaves as RegressionEnsemble.resubPredict.

See also: RegressionBaggedEnsemble, RegressionEnsemble.resubPredict

RegressionBaggedEnsemble: L = resubLoss (obj)
RegressionBaggedEnsemble: L = resubLoss (…, name, value)

Behaves as RegressionEnsemble.resubLoss.

See also: RegressionBaggedEnsemble, RegressionEnsemble.resubLoss

RegressionBaggedEnsemble: imp = predictorImportance (obj)
RegressionBaggedEnsemble: [imp, ma] = predictorImportance (obj)

The mean over the trees of each tree’s predictorImportance, as CompactRegressionEnsemble.predictorImportance computes it.

See also: RegressionBaggedEnsemble, RegressionBaggedEnsemble.oobPermutedPredictorImportance

RegressionBaggedEnsemble: yfit = oobPredict (obj)
RegressionBaggedEnsemble: yfit = oobPredict (…, ’Learners’, idx)

Each training observation is predicted by the trees whose samples left it out, as predict predicts it with 'UseObsForLearner' set to ! UseObsForLearner; one in the sample of every tree used is NaN. 'Learners' restricts the trees.

See also: RegressionBaggedEnsemble, RegressionBaggedEnsemble.oobLoss

RegressionBaggedEnsemble: L = oobLoss (obj)
RegressionBaggedEnsemble: L = oobLoss (…, name, value)

The loss of the out-of-bag predictions against Y, weighted by W, an observation in the sample of every tree used being left out. 'LossFun' and 'Mode' are taken as by CompactRegressionEnsemble.loss, and 'Learners' restricts the trees.

See also: RegressionBaggedEnsemble, RegressionBaggedEnsemble.oobPredict

RegressionBaggedEnsemble: imp = oobPermutedPredictorImportance (obj)
RegressionBaggedEnsemble: imp = oobPermutedPredictorImportance (…, ’Learners’, idx)

For each tree, the values of each predictor are permuted among the observations out of its bag, and the tree’s mean squared error on them, weighted by W, is taken before and after. imp holds, for each predictor, the mean of the rise over the trees divided by its standard deviation over the trees, zero where the mean is zero. 'Learners' restricts the trees.

See also: RegressionBaggedEnsemble, RegressionBaggedEnsemble.predictorImportance