BRISC_decorrelation {BRISC} | R Documentation |
Function for decorrelating data with BRISC
Description
The function BRISC_decorrelation
is used to decorrelate data (known structure) using Nearest Neighbor
Gaussian Processes (NNGP). BRISC_decorrelation
uses the sparse Cholesky representation of Vecchia’s
likelihood developed in Datta et al., 2016. Some code blocks are borrowed from the R package: spNNGP:
Spatial Regression Models for Large Datasets using Nearest Neighbor Gaussian Processes
https://CRAN.R-project.org/package=spNNGP .
Usage
BRISC_decorrelation(coords, sim, sigma.sq = 1, tau.sq = 0,
phi = 1, nu = 1.5, n.neighbors = NULL,
n_omp = 1, cov.model = "exponential",
search.type = "tree",
stabilization = NULL, verbose = TRUE,
tol = 12)
Arguments
coords |
an |
sim |
an |
sigma.sq |
value of sigma square. Default value is 1. |
tau.sq |
value of tau square. Default value is 0.1. |
phi |
value of phi. Default value is 1. |
nu |
value of nu, only required for Matern covariance model. Default value is 1.5. |
n.neighbors |
number of neighbors used in the NNGP. Default value is |
n_omp |
number of threads to be used, value can be more than 1 if source code is compiled with OpenMP support. Default is 1. |
cov.model |
keyword that specifies the covariance function to be used in modelling the spatial dependence structure
among the observations. Supported keywords are: |
search.type |
keyword that specifies type of nearest neighbor search algorithm to be used. Supported keywords are:
|
stabilization |
when the correlated data are generated from a very smooth covarince model (lower values of phi for spherical and Gaussian
covariance and low phi and high nu for Matern covarinace), the decorrelation process may fail due to computational
instability. If |
verbose |
if |
tol |
the input observation coordinates are rounded to this many places after the decimal. The default value is 12. |
Details
Denote h
be the input sim
. Let \Sigma
be the covariance matrix associated with the covariance model determined by the cov.model
and model parameters. Then BRISC_decorrelation
calculates g
, where g
is given as follows:
S ^{-0.5} h = g
where, S ^{-0.5}
is a sparse approximation of the cholesky factor \Sigma ^{-0.5}
of the precision matrix \Sigma ^{-1}
, obtained from NNGP.
Value
A list comprising of the following:
coords |
the matrix |
n.neighbors |
the used value of |
cov.model |
the used covariance model. |
Theta |
parameters of covarinace model; accounts for |
input.data |
if |
output.data |
the output matrix |
time |
time (in seconds) required after preprocessing data in |
Author(s)
Arkajyoti Saha arkajyotisaha93@gmail.com,
Abhirup Datta abhidatta@jhu.edu
References
Datta, A., S. Banerjee, A.O. Finley, and A.E. Gelfand. (2016) Hierarchical Nearest-Neighbor Gaussian process models for large geostatistical datasets. Journal of the American Statistical Association, 111:800-812.
Andrew Finley, Abhirup Datta and Sudipto Banerjee (2017). spNNGP: Spatial Regression Models for Large Datasets using Nearest Neighbor Gaussian Processes. R package version 0.1.1. https://CRAN.R-project.org/package=spNNGP
Examples
rmvn <- function(n, mu = 0, V = matrix(1)){
p <- length(mu)
if(any(is.na(match(dim(V),p))))
stop("Dimension not right!")
D <- chol(V)
t(matrix(rnorm(n*p), ncol=p)%*%D + rep(mu,rep(n,p)))
}
set.seed(1)
n <- 1000
coords <- cbind(runif(n,0,1), runif(n,0,1))
sigma.sq = 1
phi = 1
set.seed(1)
D <- as.matrix(dist(coords))
R <- exp(-phi*D)
sim <- rmvn(3, rep(0,n), sigma.sq*R)
decorrelation_result <- BRISC_decorrelation(coords, sim = sim)