CompactRegressionEnsemble

Пакет: classreg.learning.regr

Компактный класс ансамбля регрессии

Описание

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

Конструкция

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

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

fullEns

Ансамбль регрессии создается fitrensemble.

Свойства

CategoricalPredictors

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

CombineWeights

Вектор символов, описывающий, как ансамбль комбинирует прогнозы ученика.

ExpandedPredictorNames

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

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

NumTrained

Количество обученных учеников в ансамбле, положительной скалярной величине.

PredictorNames

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

ResponseName

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

ResponseTransform

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

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

ens.ResponseTransform = @function

Trained

Обученные ученики, массив ячеек компактных моделей регрессии.

TrainedWeights

Числовой вектор весов ансамбль присваивает своим ученикам. Ансамбль вычисляет предсказанный ответ путем агрегации взвешенных прогнозов от его учеников.

Методы

потеряОшибка регрессии
предсказатьПредскажите ансамбль использования ответов моделей регрессии
predictorImportanceОценки важности предиктора
removeLearnersУдалите членов компактного ансамбля регрессии

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

Значение. Чтобы изучить, как классы значения влияют на операции копии, смотрите Копирование Объектов (MATLAB).

Примеры

свернуть все

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

Загрузите набор данных carsmall. Рассмотрите модель, которая объясняет экономию топлива автомобиля (MPG) с помощью его веса (Weight) и количество цилиндров (Cylinders).

load carsmall
X = [Weight Cylinders];
Y = MPG;

Обучите повышенный ансамбль 100 деревьев регрессии с помощью LSBoost. Укажите, что Cylinders является категориальной переменной.

Mdl = fitrensemble(X,Y,'PredictorNames',{'W','C'},...
    'CategoricalPredictors',2)
Mdl = 
  classreg.learning.regr.RegressionEnsemble
           PredictorNames: {'W'  'C'}
             ResponseName: 'Y'
    CategoricalPredictors: 2
        ResponseTransform: 'none'
          NumObservations: 94
               NumTrained: 100
                   Method: 'LSBoost'
             LearnerNames: {'Tree'}
     ReasonForTermination: 'Terminated normally after completing the requested number of training cycles.'
                  FitInfo: [100x1 double]
       FitInfoDescription: {2x1 cell}
           Regularization: []


  Properties, Methods

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

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

CMdl = compact(Mdl)
CMdl = 
  classreg.learning.regr.CompactRegressionEnsemble
           PredictorNames: {'W'  'C'}
             ResponseName: 'Y'
    CategoricalPredictors: 2
        ResponseTransform: 'none'
               NumTrained: 100


  Properties, Methods

CMdl является объектом модели CompactRegressionEnsemble. CMdl является почти тем же самым как Mdl. Одно исключение - то, что CMdl не хранит данные тренировки.

Сравните суммы места, занимавшего Mdl и CMdl.

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

      490933      466134

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

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

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

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

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

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

typicalX = [mean(X(:,1)) mode(X(:,2))];
predMeanX = predict(CMdl,typicalX)
predMeanX = 26.2520

Советы

Для компактного ансамбля деревьев регрессии свойство Trained ens хранит вектор ячейки ens.NumTrained объекты модели CompactRegressionTree. Для текстового или графического дисплея древовидного t в векторе ячейки войти

view(ens.Trained{t})

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

Введенный в R2011a