Как рассчитать Cp Маллоуса в R


В регрессионном анализе Cp Маллоуза — это показатель, который используется для выбора наилучшей модели регрессии среди нескольких потенциальных моделей.

Мы можем определить «лучшую» регрессионную модель, найдя модель с наименьшим значением Cp, которое близко к p +1, где p — количество переменных-предикторов в модели.

Самый простой способ вычислить Cp Маллоуса в R — использовать функцию ols_mallows_cp() из пакета olsrr .

В следующем примере показано, как использовать эту функцию для расчета Cp Маллоуза, чтобы выбрать лучшую модель регрессии среди нескольких потенциальных моделей в R.

Пример: расчет Cp Маллоу в R

Предположим, мы хотели бы подобрать три разные модели множественной линейной регрессии, используя переменные из набора данных mtcars .

В следующем коде показано, как подобрать следующие модели регрессии:

  • Переменные-предикторы в полной модели: все 10 переменных
  • Переменные-предикторы в модели 1: disp, hp, wt, qsec.
  • Переменные-предикторы в модели 2: disp, qsec
  • Переменные-предикторы в модели 3: disp, wt

В следующем коде показано, как подобрать каждую из этих регрессионных моделей и использовать функцию ols_mallows_cp() для вычисления Cp Маллоуса для каждой модели:

library (olsrr)

#fit full model
full_model <- lm(mpg ~ ., data = mtcars)

#fit three smaller models
model1 <- lm(mpg ~ disp + hp + wt + qsec, data = mtcars)
model2 <- lm(mpg ~ disp + qsec, data = mtcars)
model3 <- lm(mpg ~ disp + wt, data = mtcars)

#calculate Mallows' Cp for each model
ols_mallows_cp(model1, full_model)

[1] 4.430434

ols_mallows_cp(model2, full_model)

[1] 18.64082

ols_mallows_cp(model3, full_model)

[1] 9.122225

Вот как интерпретировать вывод:

  • Модель 1: p + 1 = 5, Cp Маллоуса = 4,43.
  • Модель 2: p + 1 = 3, Cp Маллоуса = 18,64.
  • Модель 3: p + 1 = 30, Cp Маллоуза = 9,12.

Мы видим, что модель 1 имеет значение Cp Маллоуза, наиболее близкое к p + 1, что указывает на то, что это лучшая модель, которая приводит к наименьшему количеству смещения среди трех потенциальных моделей.

Примечания к Cp Маллоуса

Вот несколько вещей, о которых следует помнить в отношении Cp Маллоуса:

  • Если каждая потенциальная модель имеет высокое значение Cp Маллоуса, это указывает на то, что в каждой модели, вероятно, отсутствуют некоторые важные переменные-предикторы.
  • Если несколько потенциальных моделей имеют низкие значения Cp Маллоу, выберите модель с наименьшим значением в качестве наилучшей модели для использования.

Имейте в виду, что Cp Маллоуза — это только один из способов определить «лучшую» модель регрессии среди нескольких потенциальных моделей.

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

При принятии решения о том, какая регрессионная модель является лучшей из списка нескольких различных моделей, рекомендуется смотреть как на Cp Маллоуза, так и на скорректированный R-квадрат.

Дополнительные ресурсы

Как рассчитать скорректированный R-квадрат в R
Как рассчитать AIC в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.