step.gam
位於 mgcv
包(package)。 說明
包 mgcv
中沒有 step.gam
。 mgcv
模型選擇的默認值是使用預測誤差標準,例如 GCV、GACV、Mallows' Cp/AIC/UBRE 或基於似然的 REML 或 ML 方法。由於模型選擇的平滑度估計部分是以這種方式完成的,因此以相同的方式執行模型選擇的其餘部分在邏輯上是最一致的。即通過查看 GCV、AIC、REML 等的變化來決定包含或省略哪些術語。
為了促進全自動模型選擇,該軟件包實現了兩種平滑修改技術,可用於將平滑度縮小到零,作為平滑度選擇的一部分。
- 收縮平滑劑
-
是平滑器,其中單位矩陣的小倍數被添加到平滑懲罰中,因此足夠強的懲罰會將平滑的所有係數縮小到零。作為平滑參數估計的一部分,這種平滑器可以有效地從模型中完全受到懲罰。實現了 2 類收縮平滑器:
"cs"
和"ts"
,基於三次回歸樣條曲線和薄板回歸樣條平滑器(參見s
) - 零空間懲罰
-
另一種方法是為每個平滑構造一個額外的懲罰,根據其現有的懲罰來懲罰零擺動函數的空間。如果該項的所有平滑參數趨於無窮大,則該項將被懲罰為零,並且實際上會從模型中刪除。這種方式的優點是可以自動實現任意平滑。
gam
的select
參數導致使用後一種方法。未受處罰的術語(例如s(x,fx=TRUE)
)仍然不受處罰。
REML 和 ML 平滑度選擇在這種方法下是等效的,並且模擬證據表明,對於模型選擇,它們往往比預測誤差標準表現得更好一些。
例子
## an example of GCV based model selection as
## an alternative to stepwise selection, using
## shrinkage smoothers...
library(mgcv)
set.seed(0);n <- 400
dat <- gamSim(1,n=n,scale=2)
dat$x4 <- runif(n, 0, 1)
dat$x5 <- runif(n, 0, 1)
attach(dat)
## Note the increased gamma parameter below to favour
## slightly smoother models...
b<-gam(y~s(x0,bs="ts")+s(x1,bs="ts")+s(x2,bs="ts")+
s(x3,bs="ts")+s(x4,bs="ts")+s(x5,bs="ts"),gamma=1.4)
summary(b)
plot(b,pages=1)
## Same again using REML/ML
b<-gam(y~s(x0,bs="ts")+s(x1,bs="ts")+s(x2,bs="ts")+
s(x3,bs="ts")+s(x4,bs="ts")+s(x5,bs="ts"),method="REML")
summary(b)
plot(b,pages=1)
## And once more, but using the null space penalization
b<-gam(y~s(x0,bs="cr")+s(x1,bs="cr")+s(x2,bs="cr")+
s(x3,bs="cr")+s(x4,bs="cr")+s(x5,bs="cr"),
method="REML",select=TRUE)
summary(b)
plot(b,pages=1)
detach(dat);rm(dat)
作者
Simon N. Wood simon.wood@r-project.org
參考
Marra, G. and S.N. Wood (2011) Practical variable selection for generalized additive models Computational Statistics and Data Analysis 55,2372-2387
也可以看看
相關用法
- R scat 用於重尾數據的 GAM 縮放 t 係列
- R smooth.construct.cr.smooth.spec GAM 中的懲罰三次回歸樣條
- R smooth.construct.bs.smooth.spec GAM 中的懲罰 B 樣條
- R smooth.construct GAM 中平滑項的構造函數
- R smooth.construct.sz.smooth.spec GAM 中的約束因子平滑交互
- R smooth.construct.re.smooth.spec GAM 中的簡單隨機效應
- R slanczos 計算對稱矩陣的截斷特征分解
- R single.index 具有 mgcv 的單指數模型
- R smooth.info 提供有關平滑規範的額外信息的通用函數
- R smooth2random 將平滑轉換為適合估計隨機效應的形式
- R smooth.construct.mrf.smooth.spec 馬爾可夫隨機場平滑
- R smooth.construct.gp.smooth.spec 低階高斯過程平滑
- R smooth.construct.tp.smooth.spec GAM 中的懲罰薄板回歸樣條
- R smooth.construct.ad.smooth.spec GAM 中的自適應平滑
- R smooth.construct.so.smooth.spec 皂膜平滑劑
- R smooth.construct.ds.smooth.spec 低階 Duchon 1977 樣條
- R sp.vcov 從 (RE)ML GAM 擬合中提取平滑參數估計器協方差矩陣
- R smooth.construct.fs.smooth.spec GAM 中平滑交互的因子
- R smooth.construct.ps.smooth.spec GAM 中的 P 樣條
- R smooth.construct.sos.smooth.spec 球體上的樣條線
- R smooth.construct.tensor.smooth.spec 張量積平滑構造函數
- R shash Sinh-arcsinh 位置比例和形狀模型族
- R s 在 GAM 公式中定義平滑
- R smooth.construct.t2.smooth.spec 張量積平滑構造函數
- R smoothCon GAM 平滑項的預測/構造包裝函數
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Alternatives to step.gam。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。