CompactClassificationEnsemble

Пакет: classreg.learning.classif

Класс компактного классификационного ансамбля

Описание

Компактная версия классификационного ансамбля (класса ClassificationEnsemble). В компактную версию не включены данные для обучения классификационного ансамбля. Поэтому вы не можете выполнять некоторые задачи с компактным классификационным ансамблем, таким как перекрестные валидации. Используйте компактный классификационный ансамбль для составления предсказаний (классификаций) новых данных.

Конструкция

ens = compact(fullEns) строит компактный ансамбль принятия решений из ансамбля полного принятия решений.

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

fullEns

Классификационный ансамбль, созданный fitcensemble.

Свойства

CategoricalPredictors

Категориальные индексы предиктора, заданные как вектор положительных целых чисел. CategoricalPredictors содержит значения индекса, соответствующие столбцам данных предиктора, которые содержат категориальные предикторы. Если ни один из предикторов не является категориальным, то это свойство пустое ([]).

ClassNames

Список элементов в Y с удаленными дубликатами. ClassNames может быть числовым вектором, вектором категориальных переменных, логическим вектором, символьным массивом или массивом ячеек векторов символов. ClassNames имеет тот совпадающий тип данных, что и данные в аргументе Y. (Программа обрабатывает массивы строк как массивы ячеек векторов символов.)

CombineWeights

Вектор символов, описывающий как ens сочетает в себе слабые веса учащихся 'WeightedSum' или 'WeightedAverage'.

Cost

Квадратная матрица, где Cost(i,j) - стоимость классификации точки в класс j если его класс true i (строки соответствуют истинному классу, а столбцы - предсказанному классу). Порядок строк и столбцов Cost соответствует порядку классов в ClassNames. Количество строк и столбцов в Cost количество уникальных классов в ответе. Это свойство доступно только для чтения.

ExpandedPredictorNames

Расширенные имена предикторов, сохраненные как массив ячеек из векторов символов.

Если модель использует кодировку для категориальных переменных, то ExpandedPredictorNames включает имена, которые описывают расширенные переменные. В противном случае ExpandedPredictorNames то же, что и PredictorNames.

NumTrained

Число подготовленных слабых учащихся в ens, скаляр.

PredictorNames

Массив ячеек с именами для переменных предиктора в том порядке, в котором они появляются X.

Prior

Числовой вектор априорных вероятностей для каждого класса. Порядок элементов Prior соответствует порядку классов в ClassNames. Количество элементов Prior количество уникальных классов в ответе. Это свойство доступно только для чтения.

ResponseName

Вектор символов с именем переменной отклика Y.

ScoreTransform

Указатель на функцию для преобразования счетов или вектор символов, представляющий встроенную функцию преобразования. 'none' означает отсутствие преобразования; эквивалентно 'none' означает @(x)x. Список встроенных функций преобразования и синтаксис пользовательских функций преобразования см. в fitctree.

Добавление или изменение ScoreTransform функция, использующая запись через точку:

ens.ScoreTransform = 'function'

или

ens.ScoreTransform = @function

Trained

Вектор камеры из обученных классификационных моделей.

  • Если Method является 'LogitBoost' или 'GentleBoost', затем CompactClassificationEnsemble хранит обученную j обучающегося в CompactRegressionLearner свойство объекта, хранящегося в Обученном {j}. То есть для доступа к обученному учащемуся j, используйте ens. Обучен {j}.CompactRegressionLearner.

  • В противном случае камеры вектора камеры содержат соответствующие, компактные классификационные модели.

TrainedWeights

Численный вектор обученных весов для слабых учащихся в ens. TrainedWeights имеет T элементы, где T количество слабых учащихся в learners.

UsePredForLearner

Логическая матрица размера P-by- NumTrained, где P количество предикторов (столбцов) в обучающих данных X. UsePredForLearner(i,j) является true когда ученик j использует предиктор i, и есть false в противном случае. Для каждого учащегося предикторы имеют такой же порядок, как и столбцы в обучающих данных X.

Если ансамбль не является типом Subspace, все записи в UsePredForLearner являются true.

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

compareHoldoutСравните точности двух классификационных моделей с помощью новых данных
edgeКлассификационное ребро
limeЛокальные интерпретируемые модели-агностические объяснения (LIME)
lossОшибка классификации
marginКлассификационные поля
partialDependenceВычисление частичной зависимости
plotPartialDependenceСоздайте график частичной зависимости (PDP) и отдельные графики условного ожидания (ICE)
predictКлассифицируйте наблюдения с помощью ансамбля классификационных моделей
predictorImportanceОценки предикторной важности для классификационного ансамбля деревьев решений
removeLearnersУдаление представителей компактного классификационного ансамбля
shapleyЗначения Shapley

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

Значение. Чтобы узнать, как классы значений влияют на операции копирования, см. раздел «Копирование объектов».

Примеры

свернуть все

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

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

load ionosphere

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

Mdl = fitcensemble(X,Y,'Method','AdaBoostM1')
Mdl = 
  ClassificationEnsemble
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: {'b'  'g'}
           ScoreTransform: 'none'
          NumObservations: 351
               NumTrained: 100
                   Method: 'AdaBoostM1'
             LearnerNames: {'Tree'}
     ReasonForTermination: 'Terminated normally after completing the requested number of training cycles.'
                  FitInfo: [100x1 double]
       FitInfoDescription: {2x1 cell}


  Properties, Methods

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

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

CMdl = compact(Mdl)
CMdl = 
  CompactClassificationEnsemble
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: {'b'  'g'}
           ScoreTransform: 'none'
               NumTrained: 100


  Properties, Methods

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

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

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

      878146      631686

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

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

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

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

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

По умолчанию fitcensemble выращивает мелкие деревья для оживленных ансамблей деревьев.

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

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

Совет

Для ансамбля классификационных деревьев Trained свойство ens сохраняет ens.NumTrained-by-1 вектор камеры компактных классификационных моделей. Для текстового или графического отображения древовидных t в векторе камеры введите:

  • view (ens.Trained {t}.CompactRegressionLearner) для ансамблей, агрегированных с использованием LogitBoost или GentleBoost.

  • view (ens.Trained {t}) для всех других методов агрегации.

Расширенные возможности

.
Введенный в R2011a