CompactClassificationEnsemble

Пакет: classreg.learning.classif

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

Описание

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

Конструкция

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

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

fullEns

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

Свойства

CategoricalPredictors

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

ClassNames

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

CombineWeights

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

Cost

Квадратная матрица, где Cost(i,j) стоимость классификации точки в класс j если его истинным классом является 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, используйте сущность. Обученный {j}.CompactRegressionLearner.

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

TrainedWeights

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

UsePredForLearner

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

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

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

compareHoldoutСравните точность двух моделей классификации с помощью новых данных
edgeРебро классификации
gatherСоберите свойства объекта Statistics and Machine Learning Toolbox от графического процессора
limeЛокальные поддающиеся толкованию объяснения модели агностические (LIME)
lossОшибка классификации
marginПоля классификации
partialDependenceВычислите частичную зависимость
plotPartialDependenceСоздайте графики отдельного условного ожидания (ICE) и частичный график зависимости (PDP)
predictКлассифицируйте ансамбль использования наблюдений моделей классификации
predictorImportanceОценки важности предиктора для ансамбля классификации деревьев решений
removeLearnersУдалите члены компактного ансамбля классификации
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

      878354      631686

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

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

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

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

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

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

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

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

Советы

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

  • представление (сущность. Обученный {t}.CompactRegressionLearner) поскольку ансамбли агрегировали использование LogitBoost или GentleBoost.

  • представление (сущность. Обученный {t}) для всех других методов агрегации.

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

Введенный в R2011a