exponenta event banner

Класс CompactTreeBagger

Компактный ансамбль деревьев принятия решений, выращенных методом начальной загрузки

Описание

CompactTreeBagger класс - облегченный класс, содержащий деревья, выращенные с помощью TreeBagger. CompactTreeBagger не сохраняет никакой информации о том, как TreeBagger выращивал деревья принятия решений. Он не содержит входных данных, используемых для выращивания деревьев, и не содержит обучающих параметров, таких как минимальный размер листа или количество переменных, отобранных для каждого решения, разделенного случайным образом. Можно использовать только CompactTreeBagger для прогнозирования реакции обученного ансамбля с новыми данными Xи другие связанные функции.

CompactTreeBagger позволяет сохранить обучаемый ансамбль на диск или использовать его любым другим способом, при этом отбрасывая обучающие данные и различные параметры обучающей конфигурации, не имеющие отношения к прогнозированию реакции полностью выращенного ансамбля. Это снижает требования к хранению и памяти, особенно для ансамблей, обученных работе с большими наборами данных.

Строительство

CompactTreeBaggerСоздать CompactTreeBagger объект

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

Функции объекта

combineОбъединить два ансамбля
errorОшибка (вероятность неправильной классификации или MSE)
marginМаржа классификации
mdsproxМногомерное масштабирование матрицы близости
meanMarginСредняя классификационная маржа
outlierMeasureПоказатель отклонения для данных
partialDependenceВычислить частичную зависимость
plotPartialDependenceСоздание графиков частичной зависимости (PDP) и индивидуального условного ожидания (ICE)
predictПрогнозирование ответов с использованием совокупности упакованных в мешки деревьев принятия решений
proximityМатрица близости для данных
setDefaultYfitЗадать значение по умолчанию для predict

Свойства

ClassNames

ClassNames свойство является массивом ячеек, содержащим имена классов для переменной ответа Y поставляется в TreeBagger. Это свойство пусто для деревьев регрессии.

DefaultYfit

DefaultYfit свойство управляет прогнозируемым значением CompactTreeBagger возвращает, когда предсказание невозможно, например, когда predict метод должен предсказывать для наблюдения, которое имеет только ложные значения в матрице, поставляемой через 'useifort' аргумент.

Для классификации можно задать для этого свойства одно из следующих значений: '' или 'MostPopular'. При выборе 'MostPopular' (по умолчанию) значение свойства становится именем наиболее вероятного класса в данных обучения.

Для регрессии можно задать для этого свойства любой числовой скаляр. Значением по умолчанию является среднее значение ответа для данных обучения.

DeltaCriterionDecisionSplit

DeltaCriterionDecisionSplit свойство является числовым массивом размера 1-by-Nvars из изменений критерия расщепления, суммированных по расщеплениям по каждой переменной, усредненных по всему ансамблю выращенных деревьев.

Method

Method свойство - 'classification' для классификационных ансамблей и 'regression' для регрессионных ансамблей.

NumPredictorSplit

NumPredictorSplit свойство представляет собой числовой массив 1-by-Nvars размера, где каждый элемент дает количество разбиений на этом предикторе, суммированных по всем деревьям.

NumTrees

NumTrees свойство - скаляр, равный числу деревьев решений в ансамбле.

PredictorNames

PredictorNames свойство представляет собой массив ячеек, содержащий имена переменных предиктора (функций). Эти имена взяты из необязательного 'names' параметр, предоставленный TreeBagger. Имена по умолчанию: 'x1', 'x2'и т.д.

SurrogateAssociation

SurrogateAssociation свойство представляет собой матрицу размера Nvars-by-Nvars с прогностическими показателями переменной ассоциации, усредненной по всему ансамблю выращенных деревьев. Если вы выросли ансамбль настройки 'surrogate' кому 'on'эта матрица для каждого дерева заполняется прогностическими показателями ассоциации, усредненными по суррогатным разделениям. Если вы выросли ансамбль настройки 'surrogate' кому 'off' (по умолчанию), SurrogateAssociation диагональ.

Trees

Trees свойство является массивом ячеек размера NumTrees-by-1, содержащий деревья в ансамбле.

Примеры

свернуть все

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

Загрузить 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'}

Копирование семантики

Значение. Сведения о том, как это влияет на использование класса, см. в разделе Сравнение классов дескрипторов и значений в документации по объектно-ориентированному программированию MATLAB ®.

Совет

Trees имущество CMdl сохраняет вектор ячейки CMdl.NumTrees CompactClassificationTree или CompactRegressionTree объекты модели. Для текстового или графического отображения дерева t в векторе ячейки введите

view(CMdl.Trees{t})