компактный

Класс: 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

     1066952      925404

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

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

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

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

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

Предскажите метку среднего значения X с помощью компактного ансамбля.

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