RegressionEnsemble

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

Регрессия ансамбля

Описание

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

Конструкция

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

Свойства

BinEdges

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

Числовые предикторы интервалов программного обеспечения, только если вы задаете 'NumBins' аргумент пары "имя-значение" как положительный целочисленный скаляр, когда обучение модель с древовидными учениками. 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 значениями является NaNs.

CategoricalPredictors

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

CombineWeights

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

ExpandedPredictorNames

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

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

FitInfo

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

FitInfoDescription

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

LearnerNames

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

HyperparameterOptimizationResults

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

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

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

Method

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

ModelParameters

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

NumObservations

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

NumTrained

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

PredictorNames

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

ReasonForTermination

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

Regularization

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

ResponseName

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

ResponseTransform

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

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

ens.ResponseTransform = @function

Trained

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

TrainedWeights

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

W

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

X

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

Y

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

Методы

компактныйСоздайте компактный ансамбль регрессии
crossvalКрест подтверждает ансамбль
cvshrinkКрест подтверждает уменьшение (сокращение) ансамбль
упорядочитьНайдите, что веса минимизируют ошибку перезамены плюс термин штрафа
resubLossОшибка регрессии перезаменой
resubPredictПредскажите ответ ансамбля перезаменой
резюмеВозобновите учебный ансамбль
уменьшениеСократите ансамбль

Унаследованные методы

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

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

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

Примеры

свернуть все

Загрузите 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 = 
  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.Trained свойство, которое хранит 100 1 вектор ячейки обученных деревьев регрессии (CompactRegressionTree объекты модели), которые составляют ансамбль.

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

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

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

Предскажите экономию топлива автомобилей за 4 000 фунтов с 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

Для просмотра документации необходимо авторизоваться на сайте