Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

compact

Class: RegressionTree

Compact regression tree

Syntax

ctree = compact(tree)

Description

ctree = compact(tree) creates a compact version of tree.

Input Arguments

tree

A regression tree created using fitrtree.

Output Arguments

ctree

A compact regression tree. ctree has class CompactRegressionTree. You can predict regressions using ctree exactly as you can using tree. However, since ctree does not contain training data, you cannot perform some actions, such as cross validation.

Examples

expand all

Compare the size of a full regression tree model to the compacted model.

Load the carsmall data set. Consider Acceleration, Displacement, Horsepower, and Weight as predictor variables.

load carsmall
X = [Acceleration Cylinders Displacement Horsepower Weight];

Grow a regression tree using the entire data set.

Mdl = fitrtree(X,MPG)
Mdl = 

  RegressionTree
             ResponseName: 'Y'
    CategoricalPredictors: []
        ResponseTransform: 'none'
          NumObservations: 94


Mdl is a RegressionTree model. It is a full model, that is, it stores information such as the predictor and response data fitrtree used in training. For a properties list of full regression tree models, see RegressionTree.

Create a compact version of the full regression tree. That is, one that contains enough information to make predictions only.

CMdl = compact(Mdl)
CMdl = 

  classreg.learning.regr.CompactRegressionTree
             ResponseName: 'Y'
    CategoricalPredictors: []
        ResponseTransform: 'none'


CMdl is a CompactRegressionTree model. For a properties list of compact regression tree models, see CompactRegressionTree.

Inspect the amounts of memory that the full and compact regression trees consume.

mdlInfo = whos('Mdl');
cMdlInfo = whos('CMdl');
[mdlInfo.bytes cMdlInfo.bytes]
cMdlInfo.bytes/mdlInfo.bytes
ans =

       19858       14356


ans =

    0.7229

In this case, the compact regression tree model consumes about 25% less memory than the full model consumes.

Was this topic helpful?