exponenta event banner

resubPredict

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

    Описание

    пример

    yFit = resubPredict(Mdl) возвращает вектор прогнозируемых откликов для обученной регрессионной модели Mdl используя данные предиктора, хранящиеся в Mdl.X.

    пример

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

    Примеры

    свернуть все

    Тренируйте обобщенную аддитивную модель (GAM), а затем прогнозируйте ответы для обучающих данных.

    Загрузить patients набор данных.

    load patients

    Создайте таблицу, содержащую переменные предиктора (Age, Diastolic, Smoker, Weight, Gender, SelfAssessedHealthStatus) и переменной ответа (Systolic).

    tbl = table(Age,Diastolic,Smoker,Weight,Gender,SelfAssessedHealthStatus,Systolic);

    Обучить одномерный GAM, который содержит линейные члены для предикторов в tbl.

    Mdl = fitrgam(tbl,"Systolic")
    Mdl = 
      RegressionGAM
               PredictorNames: {1x6 cell}
                 ResponseName: 'Systolic'
        CategoricalPredictors: [3 5 6]
            ResponseTransform: 'none'
                    Intercept: 122.7800
              NumObservations: 100
    
    
      Properties, Methods
    
    

    Mdl является RegressionGAM объект модели.

    Прогнозирование ответов для обучающего набора.

    yFit = resubPredict(Mdl);

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

    t = table(tbl.Systolic,yFit, ...
        'VariableNames',{'Observed Value','Predicted Value'});
    head(t)
    ans=8×2 table
        Observed Value    Predicted Value
        ______________    _______________
    
             124              124.75     
             109              109.48     
             125              122.89     
             117              115.87     
             122              121.61     
             121              122.02     
             130              126.39     
             115              115.95     
    
    

    Предсказать ответы для набора обучающих данных с использованием обобщенной аддитивной модели (GAM), которая содержит как линейные, так и условия взаимодействия для предикторов. Укажите, следует ли включать термины взаимодействия при прогнозировании ответов.

    Загрузить carbig набор данных, содержащий замеры автомобилей, сделанные в 1970-х и начале 1980-х годов.

    load carbig

    Определить Acceleration, Displacement, Horsepower, и Weight в качестве переменных предиктора (X) и MPG в качестве переменной ответа (Y).

    X = [Acceleration,Displacement,Horsepower,Weight];
    Y = MPG;

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

    Mdl = fitrgam(X,Y,'Interactions','all');

    Mdl является RegressionGAM объект модели.

    Спрогнозировать отклики, используя как линейные, так и интерактивные члены, а затем используя только линейные члены. Чтобы исключить термины взаимодействия, укажите 'IncludeInteractions',false.

    yFit = resubPredict(Mdl);
    yFit_nointeraction = resubPredict(Mdl,'IncludeInteractions',false);

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

    t = table(Mdl.Y,yFit,yFit_nointeraction, ...
        'VariableNames',{'Observed Response', ...
        'Predicted Response','Predicted Response Without Interactions'});
    head(t)
    ans=8×3 table
        Observed Response    Predicted Response    Predicted Response Without Interactions
        _________________    __________________    _______________________________________
    
               18                  18.026                           17.22                 
               15                  15.003                          15.791                 
               18                  17.663                           16.18                 
               16                  16.178                          15.536                 
               17                  17.107                          17.361                 
               15                  14.943                          14.424                 
               14                  14.119                          14.981                 
               14                  13.864                          13.498                 
    
    

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

    свернуть все

    Регрессионная модель машинного обучения, заданная как объект модели полной регрессии, как указано в следующей таблице поддерживаемых моделей.

    МодельОбъект регрессионной модели
    Обобщенная аддитивная модельRegressionGAM
    Модель нейронной сетиRegressionNeuralNetwork

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

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

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

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

    свернуть все

    Прогнозируемые ответы, возвращаемые как вектор длиной n, где n - количество наблюдений в данных предиктора (Mdl.X).

    Алгоритмы

    resubPredict предсказывает ответы согласно соответствующему predict функция объекта (Mdl). Описание модели см. в разделе predict страницы ссылок на функции в следующей таблице.

    МодельОбъект регрессионной модели (Mdl)predict Функция объекта
    Обобщенная аддитивная модельRegressionGAMpredict
    Модель нейронной сетиRegressionNeuralNetworkpredict

    См. также

    Представлен в R2021a