在我以前的文章中,我们分析了土耳其的COVID-19数据,并选择了立方模型来预测疾病的传播。在本文中,我们将详细显示为什么选择立方模型进行预测,并查看我们的决策是否正确。
当我们分析回归趋势模型时,应考虑过度拟合和拟合不足的情况;欠拟合表明高偏压和低方差而过度拟合表明低偏置和高方差。
偏差是拟合值的期望值和观察值之间的差:
E(\ hat y)-y
拟合值的方差是相对于拟合值的平均值的平方偏差的期望值:
E [(\ hat yE(\ hat y))^ 2]
所述确定的调整系数在不同程度的多项式趋势回归模型进行比较的使用。在下面的公式中,p表示解释性术语的数量,n表示观察次数。
\ bar R ^ 2 = 1- \ frac {SSE} {SST}(\ frac {n-1} {np-1})
SSE是平方的残差和:
\ sum(y- \ hat y)^ 2
SST是平方的总和:
\ sum(y- \ bar y)^ 2
当我们检查以上公式时,我们可以注意到SSE与偏差之间的相似性。我们可以很容易地说,如果偏差减少,那么SSE就会减少,而调整后的确定系数也会增加。因此,我们将使用调整后的R平方而不是偏差来平衡方差,并找到多项式回归的最佳程度。
我们将要使用的数据集和数据框架(tur)可以从上一篇文章中找到。首先,我们将创建所有要比较的多项式回归模型。
一个<-1:15模型<
-list () 用于(seq_along(a)中的i){
模型[] <-分配(paste0('model_',i),lm(new_cases?poly(index,i ),data = tur))
}
多项式回归模型所有阶次的拟合值的方差:
方差<-c()
对于(i在seq_along(a)中){
方差 <-均值((models [] [[“ fitted.values”]]-mean(models [] [ [“ fitted.values”]]))^ 2)
}
为了创建调整后的R平方对象,我们首先创建趋势回归模型的摘要对象。因为adj.r.squared功能是在摘要函数中计算的。
models_summ <-list()
adj_R_squared <-c()
for(i in seq_along(a)){
models_summ [] <-summary(models [])
adj_R_squared <-(models_summ [[i ]] [[“ adj.r.squared”]])
}}
在分析方差和调整后的R平方的数值结果之前,我们将在单独的图中显示所有趋势回归线以用于比较模型。
#按度数进行构面模型查找最佳拟合
库(ggplot2)
dat < -do.call (rbind,lapply(1:15,function(d){
x <
-tur $ index preds <-预报(lm(new_cases?poly (x,d),data = tur),newdata = data.frame(x = x))
data.frame(cbind(y = preds,x = x,degree = d))}))
ggplot(dat,aes( x,y))+
geom_point(data = tur,aes(index,new_cases))+
geom_line(color =“ steelblue”,lwd = 1.1)+
facet_wrap(?degree,nrow = 3)
当我们检查以上曲线时,应注意尾巴的弯曲。因为它表示过度拟合,因此对观察到的数据点显示出极大的敏感性。根据这种方法,第二和第三级模型似乎对数据更方便。
让我们在下面创建的图上检查调整后的R平方方差权衡。
library(gridExtra)
plot_variance <-ggplot(df_tradeoff,aes(degree,variance))+
geom_line(size = 2,colour =“ orange”)+
scale_x_continuous(breaks = 1:15)+
theme_bw(base_line_size = 2)
plot_adj.R .squared <-ggplot(df_tradeoff,aes(degree,adj_R_squared))+
geom_line(size = 2,colour =“ steelblue”)+
labs(y =“ Adjusted R-Squared”)+
scale_x_continuous(breaks = 1:15)+
theme_bw(base_line_size = 2)
grid.arrange(plot_variance,plot_adj.R.squared,ncol = 1)
如上所示,调整后的R平方和方差具有非常相似的趋势线。调整的R平方越多,意味着复杂度越高,偏差也就越小,但是我们必须考虑方差。否则,我们会陷入过度拟合陷阱。因此,我们需要尽可能地寻找低偏差(或高调整R平方)和低方差,以实现最佳选择。
当我们检查方差图时,我们可以看到二度和三度之间没有太大差异;但是,在升到三度之后,涨幅似乎更大了。这是一种破坏。这可能会导致过度拟合。因此,最合理的选择似乎是3度。这种方法不是科学事实,但可以用于最佳解决方案。
[img]https://pic.jg.com.cn/img/pinggu/c2d3f9902d687474703a2f2f6564752e6364612e636e2f66696c65732f64656661756c742f323032302f30372d30382f313135383031393