RegressionEnsemble

Пакет: classreg.learning.regr
Суперклассы: CompactRegressionEnsemble

Ансамблевая регрессия

Описание

RegressionEnsemble объединяет набор подготовленных моделей слабых учащихся и данных, на которых эти учащиеся были обучены. Он может предсказать ответ ансамбля для новых данных, агрегируя предсказания от своих слабых учащихся.

Конструкция

Создайте объект регрессионного ансамбля с помощью fitrensemble.

Свойства

BinEdges

Границы интервала для числовых предикторов, заданные как массив ячеек из p числовых векторов, где p - количество предикторов. Каждый вектор включает границы интервала для числового предиктора. Элемент в массиве ячеек для категориального предиктора пуст, потому что программное обеспечение не встраивает категориальные предикторы.

Программное обеспечение помещает числовые предикторы только, если вы задаете 'NumBins' аргумент имя-значение как положительный целочисленный скаляр при обучении модели с учениками дерева. The BinEdges свойство пустое, если 'NumBins' значение пустое (по умолчанию).

Можно воспроизвести привязанные данные предиктора Xbinned при помощи BinEdges свойство обученной модели mdl.

X = mdl.X; % Predictor data
Xbinned = zeros(size(X));
edges = mdl.BinEdges;
% Find indices of binned predictors.
idxNumeric = find(~cellfun(@isempty,edges));
if iscolumn(idxNumeric)
    idxNumeric = idxNumeric';
end
for j = idxNumeric 
    x = X(:,j);
    % Convert x to array if x is a table.
    if istable(x) 
        x = table2array(x);
    end
    % Group x into bins by using the discretize function.
    xbinned = discretize(x,[-inf; edges{j}; inf]); 
    Xbinned(:,j) = xbinned;
end
Xbinned содержит индексы интервала в диапазоне от 1 до количества интервалов для числовых предикторов. Xbinned значения 0 для категориальных предикторов. Если X содержит NaNs, затем соответствующее Xbinned значения NaNс.

CategoricalPredictors

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

CombineWeights

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

ExpandedPredictorNames

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

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

FitInfo

Числовой массив информации о подгонке. The FitInfoDescription свойство описывает содержимое этого массива.

FitInfoDescription

Вектор символов, описывающий смысл FitInfo массив.

LearnerNames

Массив ячеек из символьных векторов с именами слабых учащихся ансамбля. Имя каждого ученика появляется всего один раз. Например, если у вас есть ансамбль из 100 деревьев, LearnerNames является {'Tree'}.

HyperparameterOptimizationResults

Описание оптимизации гиперпараметров перекрестной валидации, сохраненное как BayesianOptimization объект или таблица гиперпараметров и связанных значений. Непусто, когда OptimizeHyperparameters Пара "имя-значение" не пуста при создании. Значение зависит от настройки HyperparameterOptimizationOptions Пара "имя-значение" при создании:

  • 'bayesopt' (по умолчанию) - Объект класса BayesianOptimization

  • 'gridsearch' или 'randomsearch' - Таблица используемых гиперпараметров, наблюдаемых значений целевой функции (потери перекрестной валидации) и ранг наблюдений от самого низкого (лучшего) до самого высокого (худшего)

Method

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

ModelParameters

Параметры, используемые в обучающих ens.

NumObservations

Числовой скаляр, содержащий количество наблюдений в обучающих данных.

NumTrained

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

PredictorNames

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

ReasonForTermination

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

Regularization

Структура, содержащая результат regularize способ. Использование Regularization с shrink чтобы уменьшить ошибку реституции и сжать ансамбль.

ResponseName

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

ResponseTransform

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

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

ens.ResponseTransform = @function

Trained

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

TrainedWeights

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

W

Масштабированный weights, вектор с длиной n, количество строк в X. Сумма элементов W является 1.

X

Матрица или таблица предикторов значений, которая обучала ансамбль. Каждый столбец X представляет одну переменную, и каждая строка представляет одно наблюдение.

Y

Численный вектор-столбец с одинаковым числом строк, как X который обучал ансамбль. Каждая запись в Y - ответ на данные в соответствующей строке X.

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

compactСоздайте компрессионный регрессионный ансамбль
crossvalCross validate ансамбль
cvshrinkПерекрестная проверка ансамбля усадки (обрезки)
limeЛокальные интерпретируемые модели-агностические объяснения (LIME)
lossОшибка регрессии
partialDependenceВычисление частичной зависимости
plotPartialDependenceСоздайте график частичной зависимости (PDP) и отдельные графики условного ожидания (ICE)
predictСпрогнозируйте ответы, используя ансамбль регрессионых моделей
predictorImportanceОценки предикторной важности для регрессионого ансамбля
regularizeНайдите веса, чтобы минимизировать ошибку восстановления плюс срок штрафа
removeLearnersУдалите представителей компрессионного регрессионного ансамбля
resubLossРегрессионная ошибка путем реституции
resubPredictПредсказать ответ ансамбля путем реституции
resumeВозобновить обучение ансамбля
shapleyЗначения Shapley
shrinkАнсамбль чернослива

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

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

Примеры

свернуть все

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

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

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

Mdl = fitrensemble(X,Y,'Method','LSBoost',...
    'PredictorNames',{'W','C'},'CategoricalPredictors',2)
Mdl = 
  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.Trained - свойство, которое хранит вектор камеры 100 на 1 обученных регрессионых деревьев (CompactRegressionTree моделировать объекты), которые составляют ансамбль.

Постройте график первого обученного регрессионного дерева.

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

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

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

Спрогнозируйте расход топлива 4000 фунтов с 4, 6 и 8 цилиндрами.

XNew = [4000*ones(3,1) [4; 6; 8]];
mpgNew = predict(Mdl,XNew)
mpgNew = 3×1

   19.5926
   18.6388
   15.4810

Совет

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

view(ens.Trained{t})

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

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