最佳回归模型选择指标——马洛斯CP值

本文介绍最佳回归模型选择指标——马洛斯CP指标,并通过示例说明选择过程及如何计算。

马洛斯CP(Mallows’Cp) 指标用于在多个不同模型中选择最佳回归模型。其计算公式为:

Cp = R S S p / S 2 – N + 2 ( P + 1 ) {RSS_p/S^2 – N + 2(P+1)} RSSp/S2N+2(P+1)

参数说明:

  • R S S p {RSS_p} RSSp : 有P个预测变量模型的残差平方和
  • S 2 {S^2} S2 : 模型的均方差(通过MSE计算)
  • N :样本大小
  • P :预测变量个数

当我们有多个潜在预测变量,基于这些变量训练回归模型。需要使用马洛斯CP指标在这些预测变量的子集组合模型中识别最佳模型。

示例说明

下面实例说明如何使用马洛斯CP指标在多个潜在模型中选择最佳模型。

假设老师使用学习时间、预考成绩、GPA成绩三个预测变量在回归模型中预测期末成绩。供有7个回归模型并分布计算对应马洛斯CP指标:

预测变量P+1马洛斯CP指标值
Hours245.5
GPA231.4
PrepExams229.3
Hours,PrepExams33.4
Hours,GPA32.9
PrepExams,GPA32.7
Hours,PrepExams,GPA44

如果马洛斯CP指标小于系数数量(模型中的P+1),则该模型为无偏模型。上面结果中看到两个无偏结果:

  • Hours,GPA :P+1= 3; CP = 2.9
  • PrepExams,GPA: P+1= 3; CP = 2.7

这两个模型中PrepExams,GPA的CP值最小,说明该模型偏差最小,为最佳模型。可以通过下图更直观看到最佳模型选择:
在这里插入图片描述

计算CP值

最简单的计算方法是是使用olsrr包中的 ols_mallows_cp() 函数:

# library(olsrr)

# 使用全部预测变量
full_model <- lm(mpg ~ ., data = mtcars)

# 拟合三个较少预测变量模型
model1 <- lm(mpg ~ disp + hp + wt + qsec, data = mtcars)
model2 <- lm(mpg ~ disp + qsec, data = mtcars)
model3 <- lm(mpg ~ disp + wt, data = mtcars)

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
  • model1: p+1=5, cp = 4.43
  • model2: p+1=3, cp = 18.63
  • model3: p+1=30,cp = 9.12

我们看到model1的cp值接近p+1,表明它是几个模型中的最佳选择。

CP值说明

  • 模型的马洛斯CP指标值接近P+1,表示模型的偏差较低
  • 如果每个备选模型的马洛斯CP指标都比较高,则表明模型中缺少一些重要预测变量
  • 如果几个备选模型有较低的马洛斯CP指标值,则选择最小CP指标模型为最佳模型

另外,为判断回归模型的拟合质量,马洛斯CP指标是其中的一个指标。还有其他指标,如校正R方,因为预测变量增加R-squared值总是增加,校正R方(Adjusted R-squared) 可以作为更有效的度量参数,它根据模型中预测因子的数量进行调整,表示模型的拟合程度。

实际选择回归模型时,一般会同时使用校正R方和马洛斯CP值两个衡量指标。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值