kfoldPredict

Прогнозируйте ответы на наблюдения в перекрестно проверенной регрессионой модели

    Описание

    пример

    yfit = kfoldPredict(CVMdl) возвращает ответы, предсказанные перекрестно проверенной регрессионой моделью CVMdl. Для каждой складки, kfoldPredict предсказывает ответы на наблюдения с сворачиванием с использованием модели, обученной на наблюдениях с сворачиванием. CVMdl.X и CVMdl.Y содержат оба набора наблюдений.

    yfit = kfoldPredict(CVMdl,'IncludeInteractions',includeInteractions) задает, включать ли термины взаимодействия в расчеты. Этот синтаксис применяется только к обобщенным аддитивным моделям.

    Примеры

    свернуть все

    Когда вы создаете перекрестно проверенную регрессионую модель, можно вычислить среднюю квадратичную невязку (MSE) при помощи kfoldLoss функция объекта. Кроме того, можно предсказать ответы для наблюдений с сворачиванием валидации с помощью kfoldPredict и вычислите MSE вручную.

    Загрузите carsmall набор данных. Задайте данные предиктора X и данные отклика Y.

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

    Обучите перекрестно проверенную модель дерева регрессии. По умолчанию программное обеспечение реализует 10-кратную перекрестную валидацию.

    rng('default') % For reproducibility
    CVMdl = fitrtree(X,Y,'CrossVal','on');

    Вычислите 10-кратный MSE перекрестной валидации при помощи kfoldLoss.

    L = kfoldLoss(CVMdl)
    L = 29.4963
    

    Спрогнозируйте ответы yfit при помощи перекрестно проверенной регрессионной модели. Вычислите среднюю квадратичную невязку между yfit и истинные ответы CVMdl.Y. Вычисленный MSE соответствует значению потерь, возвращаемому kfoldLoss.

    yfit = kfoldPredict(CVMdl);
    mse = mean((yfit - CVMdl.Y).^2)
    mse = 29.4963
    

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

    свернуть все

    Перекрестная проверенная секционированная регрессионая модель, заданная как RegressionPartitionedModel, RegressionPartitionedEnsemble, RegressionPartitionedGAM, или RegressionPartitionedSVM объект. Можно создать два способа:

    • Передайте обученную регрессионую модель, перечисленную в следующей таблице, в свою crossval функция объекта.

    • Обучите регрессионую модель с помощью функции, перечисленной в следующей таблице, и задайте один из аргументов имя-значение перекрестной валидации для функции.

    Флаг для включения условий взаимодействия модели, заданный как true или false. Этот аргумент действителен только для обобщенной аддитивной модели (GAM). То есть можно задать этот аргумент только тогда, когда CVMdl является RegressionPartitionedGAM.

    Значение по умолчанию true если модели в CVMdl (CVMdl.Trained) содержат условия взаимодействия. Значение должно быть false если модели не содержат условий взаимодействия.

    Типы данных: logical

    Выходные аргументы

    свернуть все

    Предсказанные отклики, возвращенные как n-на-1 числовой вектор, где n - количество наблюдений. (n есть size(CVMdl.X,1) когда наблюдения указаны в строках.) Каждая запись yfit соответствует предсказанному ответу для соответствующей строки CVMdl.X.

    Если вы используете метод валидации удержания для создания CVMdl (то есть, если CVMdl.KFold является 1), затем yfit имеет NaN значения для обучающих-складных наблюдений.

    Введенный в R2011a