# mlegp-svd-functions: Singular Value Decomposition functions for mlegp In mlegp: Maximum Likelihood Estimates of Gaussian Processes

 mlegp-svd-functions R Documentation

## Singular Value Decomposition functions for mlegp

### Description

Functions that deal with the singular value decomposition of an output Y, for use with Gaussian process lists

### Usage

```pcweights(Y, weights.num = NULL, cutoff = 99)
getSingularValues(Y)
singularValueImportance(Y)
numSingularValues(Y, cutoff = 99)
```

### Arguments

 `Y` the output to decompose, where each column of `Y` correspond to k-dimensional output `weights.num` optionally, the number of principle component weights to keep `cutoff` if specified, `weights.num` is set to correspond to number of principle component weights that account for `cutoff` percent of the total variation in `Y`; if both `cutoff` and `weights.num` are specified, `weights.num` will be used

### Details

Utilizes the singular value decomposition (SVD) of `Y`, Y = UDVprime. Columns of `Y` should correspond to a single k-dimensional observation (e.g., functional output of a computer model, evaluated at a particular input).

For a k x m matrix `Y`, and r = min(k,m), in the complete SVD, `U` is k x r, `D` is r x r, containing the singular values along the diagonal, and `Vprime` is r x m. The output `Y` is approximated by keeping l < r singular values, keeping a UD matrix of dimension k x l, and the `Vprime` matrix of dimension l x m. Each column of `Vprime` now contains l principle component weights, which can be used to reconstruct the functional output.

### Value

`pcweights` returns a list with components:

 `UD` the UD matrix corresponding to the number of principle components kept `Vprime` The Vprime matrix corresponding to the number of principle components kept

Note: the number of principle component weights kept is equal to dim(UD)[2]

`getSingularValues` returns a matrix containing the singular values of `Y`

`numSingularValues` returns the minimum number of singular values accounting for `cutoff` percent of the variation in `Y`

`singularValueImportance` returns a matrix where element i corresponds to the percentage of total variation in `Y` accounted for by the first i singular values

### Note

these functions are utilized by `mlegp` to fit Gaussian processes to principle component weights

### Author(s)

Garrett M. Dancik dancikg@easternct.edu

### References

Heitmann, K., Higdon, D., Nakhleh, C., Habib, S., 2006. Cosmic Calibration. The Astrophysical Journal, 646, 2, L1-L4.

`mlegp`

### Examples

```

## create functional output that varies based on parameter 'p' ##
x = seq(-5,5,by=.2)
p = 1:50
y = matrix(0,length(p), length(x))
for (i in p) {
y[i,] = sin(x) + i + rnorm(length(x), sd  = .1)
}

singularValueImportance(t(y))
numSingularValues(t(y), cutoff = 99.99)

```

mlegp documentation built on March 18, 2022, 5:29 p.m.