compact

Класс: TreeBagger

Компактный ансамбль деревьев решений

Описание

CMdl = compact(Mdl) создает компактную версию Mdl, а TreeBagger объект модели. Вы можете предсказать регрессии, используя CMdl именно так, как вы можете использовать Mdl. Однако с CMdl не содержит обучающих данных, вы не можете выполнить некоторые действия, такие как выполнение предсказаний из сумки с помощью oobPredict.

Входные параметры

Mdl

Регрессионный ансамбль, созданный с TreeBagger.

Выходные аргументы

CMdl

Компактный регрессионный ансамбль. CMdl является классом CompactTreeBagger.

Примеры

расширить все

Создайте компактный пакет деревьев для эффективных предсказаний новых данных.

Загрузите ionosphere набор данных.

load ionosphere

Обучите сумку из 100 деревьев классификации с помощью всех измерений и AdaBoostM1 способ.

Mdl = TreeBagger(100,X,Y,'Method','classification')
Mdl = 
  TreeBagger
Ensemble with 100 bagged decision trees:
                    Training X:             [351x34]
                    Training Y:              [351x1]
                        Method:       classification
                 NumPredictors:                   34
         NumPredictorsToSample:                    6
                   MinLeafSize:                    1
                 InBagFraction:                    1
         SampleWithReplacement:                    1
          ComputeOOBPrediction:                    0
 ComputeOOBPredictorImportance:                    0
                     Proximity:                   []
                    ClassNames:             'b'             'g'

  Properties, Methods

Mdl является TreeBagger объект модели, который содержит обучающие данные, среди прочего.

Создайте компактную версию Mdl.

CMdl = compact(Mdl)
CMdl = 
  CompactTreeBagger
Ensemble with 100 bagged decision trees:
              Method:       classification
       NumPredictors:                   34
          ClassNames: 'b' 'g'

  Properties, Methods

CMdl является CompactTreeBagger объект модели. CMdl почти так же, как Mdl. Одним из исключений является то, что он не хранит обучающие данные.

Сравните количества занимаемого пространства Mdl и CMdl.

mdlInfo = whos('Mdl');
cMdlInfo = whos('CMdl');
[mdlInfo.bytes cMdlInfo.bytes]
ans = 1×2

     1115742      976936

Mdl занимает больше пространства, чем CMdl.

CMdl.Trees хранит обученные деревья классификации (CompactClassificationTree объекты модели), которые составляют Mdl.

Отобразите график первого дерева в компактной модели.

view(CMdl.Trees{1},'Mode','graph');

Figure Classification tree viewer contains an axes and other objects of type uimenu, uicontrol. The axes contains 60 objects of type line, text.

По умолчанию TreeBagger выращивает глубокие деревья.

Спрогнозируйте метку среднего значения X использование компактного ансамбля.

predMeanX = predict(CMdl,mean(X))
predMeanX = 1x1 cell array
    {'g'}