當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R smooth.construct.gp.smooth.spec 低階高斯過程平滑


R語言 smooth.construct.gp.smooth.spec 位於 mgcv 包(package)。

說明

基於簡單協方差函數的高斯過程/克裏金模型可以用與薄板和 Duchon 樣條模型非常相似的形式編寫(例如 Handcock、Meier、Nychka,1994 年),以及由 Wood 的特征近似方法生成的低階版本(2003 年) )。 Kammann 和 Wand (2003) 提出了一種特別簡單的 Matern 協方差函數形式,僅需要估計一個平滑參數,並且此類實現了該模型和其他類似模型。

通常由 gam 公式中的 s(...,bs="gp") 項調用。參數 m 選擇協方差函數,設置範圍參數和任何冪參數。如果未提供m,則默認為NA,並使用 Kammann 和 Wand (2003) 建議的協方差函數及其建議的範圍參數。否則,abs(m[1]) 介於 1 和 5 之間,分別從球麵、冪指數和 Matern 中選擇相關函數,kappa = 1.5、2.5 或 3.5。 m[1] 的符號決定是否將協變量的線性趨勢添加到高斯過程(正)或不添加(負)。後者確保平穩性。 m[2](如果存在)指定範圍參數,非正值或不存在表示應使用 Kammann 和 Wand 估計。 m[3] 可用於指定冪指數的冪,否則默認為 1。

用法

## S3 method for class 'gp.smooth.spec'
smooth.construct(object, data, knots)
## S3 method for class 'gp.smooth'
Predict.matrix(object, data)

參數

object

平滑的規範對象,通常由術語 s(...,bs="ms",...) 生成。

data

僅包含該術語所需的數據(包括任何 by 變量)的列表,其名稱對應於 object$term (和 object$by )。 by 變量是最後一個元素。

knots

包含為基礎設置提供的任何結的列表 - 與 data 具有相同的順序和相同的名稱。可以是NULL

細節

為範圍參數, 表示兩點之間的距離。那麽m[1]索引的相關函數為:

  1. 如果 則為 ,否則為0。

  2. .

參見 Fahrmeir 等人。例如,(2013) 第 8.1.6 節。請注意,將 r 設置為太小的值會導致令人不快的結果,因為大多數點幾乎都是獨立的(特別是對於球形模型。注意:Wood 2017,圖 5.20 右側基於有缺陷的實現)。

此類的默認基本維度是 k=M+k.def,其中 M 是零空間維度(未懲罰函數空間的維度),k.def 對於維度 1 為 10,對於維度 2 為 30,對於更高維度為 100。這本質上是任意的,應該進行檢查,但與所有懲罰回歸平滑器一樣,結果在統計上對確切的選擇不敏感,隻要它不是小到強製過度平滑(平滑器的自由度主要由其平滑參數控製) )。

構造函數通常不直接調用,而是由 gam 在內部使用。要用於基礎設置,建議使用 smooth.construct2

對於這些類,規範 object 將包含有關如何在其 xt 字段中處理大型數據集的信息。默認情況下,如果唯一預測變量組合的數量超過 2000,則對 2000 ‘knots’ 進行隨機子采樣,從中生成完整基礎的降級特征值近似。默認值可以通過 xt 參數修改為 s 。它作為一個列表提供,其中包含元素 max.knotsseed,其中包含用於代替 2000 的數字,以及要使用的隨機數種子(兩者都可以缺失)。請注意,隨機采樣不會影響 R 的 RNG 的狀態。

對於這些基礎 knots 有兩個用途。首先,如前所述,對於大型數據集,tp 基礎的計算可能非常耗時。用戶可以通過提供一組精簡的協變量值來保留該方法的大部分優點,從中獲取基礎 - 通常使用的協變量值的數量將大大小於數據的數量,並且遠大於基礎維度,k。如果唯一協變量值(組合)的數量超過 max.knots ,則自動采用此方法。第二種可能性是避免用於完全查找樣條基礎的特征分解,而僅使用所選結隱含的基礎:如果提供的結數量與基礎尺寸 k 匹配,就會發生這種情況。對於給定的基本尺寸,第二個選項速度更快,但結果較差(用戶在選擇結位置時必須非常小心)。

"gp.smooth" 的對象。除了 smooth.construct 下記錄的平滑類的常見元素之外,該對象還將包含:

shift

應用於每個協變量的移位記錄,以便使其以零為中心,並避免在該項的懲罰零空間基礎中可能發生的任何 co-linearity 問題。

Xu

此平滑的唯一協變量組合的矩陣(通過首先刪除重複位置來構建基礎)。

UZ

將平滑參數映射回完整 GP 平滑參數的矩陣。

null.space.dimension

根據此項的擺動懲罰,擺動為零的函數空間的維數。

gp.defn

定義相關函數的類型、範圍參數和功率參數。

例子

require(mgcv)
eg <- gamSim(2,n=200,scale=.05)
attach(eg)
op <- par(mfrow=c(2,2),mar=c(4,4,1,1))
b0 <- gam(y~s(x,z,k=50),data=data)  ## tps
b <- gam(y~s(x,z,bs="gp",k=50),data=data)  ## Matern spline default range
b1 <- gam(y~s(x,z,bs="gp",k=50,m=c(1,.5)),data=data)  ## spherical 

persp(truth$x,truth$z,truth$f,theta=30) ## truth
vis.gam(b0,theta=30)
vis.gam(b,theta=30)
vis.gam(b1,theta=30)

## compare non-stationary (b1) and stationary (b2)
b2 <- gam(y~s(x,z,bs="gp",k=50,m=c(-1,.5)),data=data)  ## sph stationary 
vis.gam(b1,theta=30);vis.gam(b2,theta=30)
x <- seq(-1,2,length=200); z <- rep(.5,200)
pd <- data.frame(x=x,z=z)
plot(x,predict(b1,pd),type="l");lines(x,predict(b2,pd),col=2)
abline(v=c(0,1))
plot(predict(b1),predict(b2))

detach(eg)

作者

Simon N. Wood simon.wood@r-project.org

參考

Fahrmeir, L., T. Kneib, S. Lang and B. Marx (2013) Regression, Springer.

Handcock, M. S., K. Meier and D. Nychka (1994) Journal of the American Statistical Association, 89: 401-403

Kammann, E. E. and M.P. Wand (2003) Geoadditive Models. Applied Statistics 52(1):1-18.

Wood, S.N. (2003) Thin plate regression splines. J.R.Statist.Soc.B 65(1):95-114

Wood, S.N. (2017) Generalized Additive Models: an introduction with R (2nd ed). CRC/Taylor and Francis

也可以看看

tprs

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Low rank Gaussian process smooths。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。