kfoldPredict

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

    Описание

    пример

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

    yFit = kfoldPredict(CVMdl,Name,Value) задает опции с помощью одних или нескольких аргументов name-value. Например, 'IncludeInteractions',true задает, чтобы включать периоды взаимодействия в расчеты. Этот синтаксис применяется только к обобщенным аддитивным моделям.

    [yFit,ySD,yInt] = kfoldPredict(___) также возвращает стандартные отклонения и интервалы предсказания переменной отклика, оцененной при каждом наблюдении в данных о предикторе CVMdl.X, использование любой из комбинаций входных аргументов в предыдущих синтаксисах. Этот синтаксис применяется только к обобщенным аддитивным моделям для который IsStandardDeviationFit свойство CVMdl true.

    Примеры

    свернуть все

    Когда вы создаете перекрестную подтвержденную модель регрессии, можно вычислить среднеквадратическую ошибку (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 объектная функция.

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

    Аргументы name-value

    Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

    Пример: 'Alpha',0.01,'IncludeInteractions',false задает доверительный уровень как 99% и исключает периоды взаимодействия из расчетов для обобщенной аддитивной модели.

    Уровень значения для доверительного уровня интервалов предсказания yIntВ виде числового скаляра в области значений [0,1]. Доверительный уровень yInt равно   100(1 – Alpha)%.

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

    Пример: 'Alpha',0.01

    Типы данных: single | double

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

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

    Типы данных: логический

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

    свернуть все

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

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

    Стандартные отклонения переменной отклика, оцененной при каждом наблюдении в данных о предикторе CVMdlX, возвращенный как вектор-столбец длины n, где n является количеством наблюдений в CVMdlX. iэлемент th ySD(i) содержит стандартное отклонение iответ th для iнаблюдение th CVMdl.X(i,:), предполагаемое использование обученной модели стандартного отклонения в CVMdl.

    Этот аргумент допустим только для обобщенного аддитивного объекта модели, который включает подгонку стандартного отклонения. Таким образом, kfoldPredict может возвратить этот аргумент только когда CVMdl RegressionPartitionedGAM и IsStandardDeviationFit свойство CVMdl true.

    Интервалы предсказания переменной отклика, оцененной при каждом наблюдении в данных о предикторе CVMdlX, возвращенный как n-by-2 матрица, где n является количеством наблюдений в CVMdlX. iстрока th yInt(i,:) содержит приблизительно 100 (1 – Alpha)% интервал предсказания iответ th для iнаблюдение th CVMdl.X(i,:) использование ySDi. Alpha значение является вероятностью, что интервал предсказания не содержит истинное значение отклика CVMdl.Y(i). Первый столбец yInt содержит нижние пределы интервалов предсказания, и второй столбец содержит верхние пределы.

    Этот аргумент допустим только для обобщенного аддитивного объекта модели, который включает подгонку стандартного отклонения. Таким образом, kfoldPredict может возвратить этот аргумент только когда CVMdl RegressionPartitionedGAM и IsStandardDeviationFit свойство CVMdl true.

    Расширенные возможности

    Введенный в R2011a