gpt4 book ai didi

r - R::mgcv 中张量相互作用的方差分量

转载 作者:行者123 更新时间:2023-12-01 16:06:14 26 4
gpt4 key购买 nike

为什么 mgcv::gam.vcomp 显示与 mgcv::ti 进行的交互的两个方差分量?

我似乎无法在任何地方找到解释或字里行间的解释。方差是否可能归因于交互中的每个组件?

require(mgcv)
test1 <- function(x,z,sx=0.3,sz=0.4) {
x <- x*20
(pi**sx*sz)*(1.2*exp(-(x-0.2)^2/sx^2-(z-0.3)^2/sz^2)+
0.8*exp(-(x-0.7)^2/sx^2-(z-0.8)^2/sz^2))
}
n <- 500
old.par <- par(mfrow=c(2,2))
x <- runif(n)/20;z <- runif(n);
xs <- seq(0,1,length=30)/20;zs <- seq(0,1,length=30)
pr <- data.frame(x=rep(xs,30),z=rep(zs,rep(30,30)))
truth <- matrix(test1(pr$x,pr$z),30,30)
f <- test1(x,z)
y <- f + rnorm(n)*0.2
b3 <- gam(y~ ti(x) + ti(z) + ti(x,z))
b3s <- gam(y~ ti(x) + ti(z) + s(x,z)) # describing the itneraction with s().

我知道我们在这里混合了苹果和橙子。

gam.vcomp(b3)
ti(x) ti(z) ti(x,z)1 ti(x,z)2
0.06609731 0.01476070 0.08834218 0.05700322

gam.vcomp(b3s)
ti(x) ti(z) s(x,z)
0.1623056 2.4870344 7.7484987

最佳答案

您将看到与 te(x, z) 相同的行为

> b <- gam(y ~ te(x,z))
> gam.vcomp(b)
te(x,z)1 te(x,z)2
0.08668107 0.04596708

出现是因为张量积平滑由两个(在本例中为边缘基)定义,每个基都有一个平滑参数。因此,有两个方差分量,每个平滑参数/边际基础都有一个。

  1. ti(x,z)1x 边际基数的方差分量,
  2. ti(x,z)2z 边际基数的方差分量.

由于这些张量积交互平滑已消除了主要影响,物理解释很复杂,但在实际意义上,这些值是边缘基平滑参数的方差分量解释。

原因s(x, z)只有一个方差分量是它是二维薄板样条基础。该基础是各向同性的;到 维度具有相同的平滑度,因此基础需要单个平滑度参数。因此存在单一方差分量。

关于r - R::mgcv 中张量相互作用的方差分量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47854718/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com