RegressionPartitionedModel

Пакет: classreg.learning.partition

Перекрестная подтвержденная модель регрессии

Описание

RegressionPartitionedModel является набором моделей регрессии, обученных на перекрестных подтвержденных сгибах. Оцените качество регрессии перекрестной проверкой с помощью одного или нескольких “kfold” методов: kfoldPredict, kfoldLoss и kfoldfun. Каждый “kfold” метод использует модели, обученные на, окутывают наблюдения, чтобы предсказать ответ для наблюдений из сгиба. Например, предположите, что вы пересекаетесь, подтверждают использование пяти сгибов. В этом случае каждый учебный сгиб содержит примерно 4/5 данных, и каждый тестовый сгиб содержит примерно 1/5 данных. Первая модель, сохраненная в Trained{1}, была обучена на X и Y с первым исключенным 1/5, вторая модель, сохраненная в Trained{2}, была обучена на X и Y со вторым исключенным 1/5 и так далее. Когда вы вызываете kfoldPredict, он вычисляет прогнозы для первого 1/5 данных с помощью первой модели для второго 1/5 данных с помощью второй модели и так далее. Короче говоря, ответ для каждого наблюдения вычисляется kfoldPredict с помощью модели, обученной без этого наблюдения.

Конструкция

cvmodel = crossval(tree) создает перекрестную подтвержденную модель классификации из дерева регрессии. Для получения дополнительной информации синтаксиса смотрите страницу с описанием метода crossval.

cvmodel = fitrtree(X,Y,Name,Value) создает перекрестную подтвержденную модель, когда name является одним из 'CrossVal', 'KFold', 'Holdout', 'Leaveout' или 'CVPartition'. Для получения дополнительной информации синтаксиса смотрите страницу ссылки на функцию fitrtree.

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

tree

Дерево регрессии создается с fitrtree.

Свойства

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 содержит NaN s, то соответствующими значениями Xbinned является NaN s.

CategoricalPredictors

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

CrossValidatedModel

Имя перекрестной подтвержденной модели, вектора символов.

Kfold

Количество сгибов используется в перекрестном подтвержденном дереве, положительном целом числе.

ModelParameters

Объект, содержащий параметры tree.

Partition

Раздел класса cvpartition используется в перекрестной подтвержденной модели.

PredictorNames

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

ResponseName

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

ResponseTransform

Указатель на функцию для преобразования необработанных значений ответа (среднеквадратическая ошибка). Указатель на функцию должен принять матрицу значений ответа и возвратить матрицу, одного размера. Вектор символов по умолчанию 'none' означает @(x)x или никакое преобразование.

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

ctree.ResponseTransform = @function

Trained

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

W

Масштабированный weights, вектор с длиной n, количество строк в X.

X

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

Y

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

Методы

kfoldLossПотеря перекрестной проверки разделенной модели регрессии
kfoldPredictПредскажите ответ для наблюдений, не используемых для обучения
kfoldfunКрест подтверждает функцию

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

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

Примеры

свернуть все

Загрузите выборочные данные. Создайте переменную X, содержащую данные Weight и Horsepower.

load carsmall
X = [Horsepower Weight];

Создайте дерево регрессии использование выборочных данных.

cvtree = fitrtree(X,MPG,'crossval','on');

Оцените ошибку перекрестной проверки данных carsmall с помощью Horsepower и Weight как переменные прогноза для пробега (MPG).

L = kfoldLoss(cvtree)
L = 25.5338
Для просмотра документации необходимо авторизоваться на сайте