Пакет: 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
использование модели, обученной без этого наблюдения.
создает перекрестно проверенную регрессионую модель из регрессионной модели (CVMdl
=
crossval(Mdl
)Mdl
).
В качестве альтернативы:
CVNetMdl = fitrnet(X,Y,Name,Value)
CVTreeMdl = fitrtree(X,Y,Name,Value)
создать перекрестно проверенную модель при Name
является либо 'CrossVal'
, 'KFold'
, 'Holdout'
, 'Leaveout'
, или 'CVPartition'
. Для получения дополнительной информации о синтаксисе см. fitrnet
и fitrtree
.
|
Регрессионая модель, заданная как одно из следующего:
|
|
Границы интервала для числовых предикторов, заданные как массив ячеек из p числовых векторов, где p - количество предикторов. Каждый вектор включает границы интервала для числового предиктора. Элемент в массиве ячеек для категориального предиктора пуст, потому что программное обеспечение не встраивает категориальные предикторы. Программное обеспечение помещает числовые предикторы только, если вы задаете Можно воспроизвести привязанные данные предиктора 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 Xbinned содержит индексы интервала в диапазоне от 1 до количества интервалов для числовых предикторов. Xbinned значения 0 для категориальных предикторов. Если X содержит NaN s, затем соответствующее Xbinned значения NaN с.
|
|
Категориальные индексы предиктора, заданные как вектор положительных целых чисел. Принимая, что данные предиктора содержат наблюдения в строках, |
|
Имя перекрестно проверенной модели, вектор символов. |
|
Количество складок, используемых в перекрестно проверенной модели, положительное целое число. |
|
Параметры хранения объектов |
|
Количество наблюдений в обучающих данных, хранимых в |
|
Разбиение классов на |
|
Массив ячеек с именами для переменных предиктора в том порядке, в котором они появляются |
|
Имя переменной отклика |
|
Указатель на функцию для преобразования значений необработанного отклика (средняя квадратичная невязка). Указатель на функцию должен принять матрицу значений отклика и вернуть матрицу того же размера. Вектор символов по умолчанию Добавление или изменение CVMdl.ResponseTransform = @function |
|
Обученные учащиеся, массив ячеек из компактных регрессионых моделей. |
|
Масштабированный |
|
Матрица или таблица значений предиктора. |
|
Числовой вектор-столбец. Каждая запись в |
kfoldLoss | Потеря для перекрестно проверенной секционированной регрессионой модели |
kfoldPredict | Предсказать ответы на наблюдения в перекрестно проверенной регрессионой модели |
kfoldfun | Перекрестная проверка функции для регрессии |
Значение. Чтобы узнать, как классы значений влияют на операции копирования, см. раздел «Копирование объектов».