gam.control
位於 mgcv
包(package)。 說明
這是 mgcv
包的內部函數,它允許控製擬合 GAM 的數值選項。通常,如果模型擬合無法收斂,或者生成警告表明擬合過程中數值穩定性丟失,用戶將希望修改默認值。要更改擬合方法的默認選擇,請參閱 gam
參數 method
和 optimizer
。
用法
gam.control(nthreads=1,ncv.threads=1,irls.reg=0.0,epsilon = 1e-07,
maxit = 200,mgcv.tol=1e-7,mgcv.half=15, trace = FALSE,
rank.tol=.Machine$double.eps^0.5,nlm=list(),
optim=list(),newton=list(),
idLinksBases=TRUE,scalePenalty=TRUE,efs.lspmax=15,
efs.tol=.1,keepData=FALSE,scale.est="fletcher",
edge.correct=FALSE)
參數
nthreads |
如果您的 R 安裝支持 openMP,並且 |
ncv.threads |
鄰域交叉驗證 (NCV) 的計算通常比其他 GAM 計算具有更好的擴展性,並且值得並行化。 |
irls.reg |
對於大多數模型,該值應為 0。在某些情況下,用於擬合 GAM 的迭代重新加權最小二乘法可能無法收斂。例如,具有多個零的數據可能會導致具有對數鏈接的模型出現問題,因為零均值對應於無限範圍的線性預測變量值。這種收斂問題是由根本上缺乏可識別性引起的,但在迭代的每個階段都必須解決的懲罰線性模型問題中並不表現為缺乏可識別性。在這種情況下,可以對模型應用嶺回歸罰分以施加可識別性, |
epsilon |
|
maxit |
要執行的 IRLS 迭代的最大次數。 |
mgcv.tol |
GCV/UBRE 優化中使用的收斂容差參數。 |
mgcv.half |
如果GCV/UBRE優化方法的某個步驟導致GCV/UBRE分數更差,則步長減半。這是放棄之前要嘗試的減半次數。 |
trace |
將其設置為 |
rank.tol |
用於估計擬合問題的等級的容差。 |
nlm |
如果用於平滑參數的外部估計(非默認),則傳遞給 |
optim |
如果用於平滑參數的外部估計(非默認),則傳遞給 |
newton |
要傳遞給默認牛頓優化器的控製參數列表,用於對數平滑參數的外部估計。查看具體信息。 |
idLinksBases |
如果平滑項的平滑參數通過 |
scalePenalty |
|
efs.lspmax |
允許在擴展 Fellner Schall 平滑參數優化下的最大對數平滑參數。 |
efs.tol |
在測試 EFS 收斂時,REML 的更改可以忽略不計。如果步長很小並且最後 3 個步長導致 REML 變化小於此值,則停止。 |
keepData |
原始 |
scale.est |
如何估計由外迭代估計的指數族模型的尺度參數。請參閱 |
edge.correct |
通過使用默認牛頓 RE/ML 優化器在 |
細節
使用 newton
的外部迭代由具有以下元素的列表 newton
控製: conv.tol
(默認 1e-6)是相對收斂容差; maxNstep
是牛頓搜索方向的元素允許的最大長度(默認5); maxSstep
是最速下降方向元素允許的最大長度(僅在牛頓失敗時使用 - 默認 2); maxHalf
是放棄之前允許的最大減半步數(默認 30)。
如果使用 nlm
的外部迭代用於擬合,則控製列表 nlm
存儲用於調用例程 nlm
的控製參數。該列表具有以下命名元素: (i) ndigit
是 GCV/UBRE 分數中的有效位數 - 默認情況下,這是從 epsilon
算出的; (ii) gradtol
是用於判斷 GCV/UBRE 分數梯度收斂到零的容差 - 默認設置為 10*epsilon
; (iii) stepmax
是最大允許的對數平滑參數步長 - 默認為 2; (iv) steptol
是允許的最小步長 - 默認為 1e-4; (v) iterlim
是允許的最大優化步驟數 - 默認為 200; (vi) check.analyticals
指示是否應以數字方式檢查內置的精確導數計算 - 默認為 FALSE
。列表中未提供和命名的任何這些都將設置為其默認值。
使用 optim
的外部迭代由列表 optim
控製,該列表當前有一個元素:factr
,其默認值為 1e7。
作者
Simon N. Wood simon.wood@r-project.org
參考
Wood, S.N. (2011) Fast stable restricted maximum likelihood and marginal likelihood estimation of semiparametric generalized linear models. Journal of the Royal Statistical Society (B) 73(1):3-36
Wood, S.N. (2004) Stable and efficient multiple smoothing parameter estimation for generalized additive models. J. Amer. Statist. Ass.99:673-686.
https://www.maths.ed.ac.uk/~swood34/
也可以看看
gam
, gam.fit
, glm.control
相關用法
- R gam.check 擬合 gam 模型的一些診斷
- R gam.reparam 尋找平方根懲罰的穩定正交重新參數化。
- R gam.side GAM 的可識別性邊條件
- R gam.fit3 使用 GCV、UBRE/AIC 或 RE/ML 導數計算進行 P-IRLS GAM 估計
- R gam.fit5.post.proc gam.fit5 的後處理輸出
- R gam.fit GAM P-IRLS 估計與 GCV/UBRE 平滑度估計
- R gam.mh 具有 gam 擬合的簡單後驗模擬
- R gam.outer 使用“外部”迭代最小化 GAM 的 GCV 或 UBRE 分數
- R gam.vcomp 將 gam 平滑度估計報告為方差分量
- R gam.models 指定廣義加性模型
- R gam.selection 廣義加性模型選擇
- R gamm 廣義加性混合模型
- R gamlss.gH 計算回歸係數的對數似然導數
- R gam 具有集成平滑度估計的廣義加性模型
- R gam2objective GAM 平滑參數估計的目標函數
- R gamlss.etamu 將 mu 的導數轉換為線性預測器的導數
- R gammals 伽瑪位置比例模型係列
- R gamSim 模擬 GAM 的示例數據
- R gaulss 高斯位置尺度模型族
- R gfam 分組家庭
- R gumbls Gumbel 位置比例模型族
- R gevlss 廣義極值位置比例模型族
- R ginla GAM 集成嵌套拉普拉斯逼近牛頓增強
- R get.var 從列表或 data.frame 中獲取命名變量或計算表達式
- R vcov.gam 從 GAM 擬合中提取參數(估計器)協方差矩陣
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Setting GAM fitting defaults。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。