Пакет: 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 содержит NaNs, затем соответствующее Xbinned значения NaNs.
|
|
Индексы категориального предиктора, указанные как вектор положительных целых чисел. Предполагая, что данные предиктора содержат наблюдения в строках, |
|
Имя перекрестно проверенной модели, символьный вектор. |
|
Количество складок, используемых в модели с перекрестной проверкой, положительное целое число. |
|
Параметры хранения объекта |
|
Количество наблюдений в данных обучения, хранящихся в |
|
Раздел класса |
|
Массив ячеек имен для переменных предиктора в порядке их появления в |
|
Имя переменной ответа |
|
Дескриптор функции для преобразования необработанных значений отклика (среднеквадратичная ошибка). Дескриптор функции должен принимать матрицу значений отклика и возвращать матрицу того же размера. Вектор символов по умолчанию Добавить или изменить CVMdl.ResponseTransform = @function |
|
Обученные ученики, клеточный массив моделей компактной регрессии. |
|
Чешуйчатое |
|
Матрица или таблица предикторных значений. |
|
Вектор числового столбца. Каждая запись в |
kfoldLoss | Потеря для перекрестно проверенной секционированной регрессионной модели |
kfoldPredict | Прогнозирование ответов для наблюдений в модели перекрестной регрессии |
kfoldfun | Функция перекрестной проверки для регрессии |
Значение. Сведения о том, как классы значений влияют на операции копирования, см. в разделе Копирование объектов.