synLikeMisspec {BSL} | R Documentation |

## Estimate the Gaussian synthetic (log) likelihood whilst acknowledging model incompatibility

### Description

This function estimates the Gaussian synthetic likelihood whilst
acknowledging that there may be incompatibility between the model and the
observed summary statistic. The method has two different ways to
account for and detect incompatibility (mean adjustment and variance
inflation). An additional free parameter `gamma`

is employed to account for the
model misspecification. See the R-BSL methods of
Frazier and Drovandi (2021) for more details. Note this function
is mainly designed for interal use as the latent variable `gamma`

need
to be chosen otherwise. Alternatively, `gamma`

is updated with a slice
sampler (Neal 2003), which is the method of
Frazier and Drovandi (2021).

### Usage

```
synLikeMisspec(
ssy,
ssx,
type = c("mean", "variance"),
gamma = numeric(length(ssy)),
log = TRUE,
verbose = FALSE
)
```

### Arguments

`ssy` |
The observed summary statisic. |

`ssx` |
A matrix of the simulated summary statistics. The number of rows is the same as the number of simulations per iteration. |

`type` |
A string argument indicating which method is used to account for and detect potential incompatibility. The two options are "mean" and "variance" for mean adjustment and variance inflation, respectively. |

`gamma` |
The additional latent parameter to account for possible
incompatability between the model and observed summary statistic. In
“BSLmisspec” method, this is updated with a slice sampler
(Neal 2003). The default gamma implies no model misspecification
and is equivalent to the standard |

`log` |
A logical argument indicating if the log of likelihood is
given as the result. The default is |

`verbose` |
A logical argument indicating whether an error message
should be printed if the function fails to compute a likelihood. The
default is |

### Value

The estimated synthetic (log) likelihood value.

### References

Frazier DT, Drovandi C (2021).
“Robust Approximate Bayesian Inference with Synthetic Likelihood.”
*Journal of Computational and Graphical Statistics (In Press)*.
https://arxiv.org/abs/1904.04551.

Neal RM (2003).
“Slice sampling.”
*The Annals of Statistics*, **31**(3), 705–767.

### See Also

Other available synthetic likelihood estimators:
`gaussianSynLike`

for the standard synthetic likelihood
estimator, `gaussianSynLikeGhuryeOlkin`

for the unbiased
synthetic likelihood estimator, `semiparaKernelEstimate`

for
the semi-parametric likelihood estimator, `synLikeMisspec`

for
the Gaussian synthetic likelihood estimator for model misspecification.
Slice sampler to sample gamma `sliceGammaMean`

and
`sliceGammaVariance`

(internal functions).

### Examples

```
# a toy model (for details see section 4.1 from Frazier et al 2019)
# the true underlying model is a normal distribution with standard deviation equals to 0.2
# whist the data generation process has the standard deviation fixed to 1
set.seed(1)
y <- rnorm(50, 1, sd = 0.2)
ssy <- c(mean(y), var(y))
m <- newModel(fnSim = function(theta) rnorm(50, theta), fnSum = function(x) c(mean(x), var(x)),
theta0 = 1, fnLogPrior = function(x) log(dnorm(x, sd = sqrt(10))))
ssx <- simulation(m, n = 300, theta = 1, seed = 10)$ssx
# gamma is updated with a slice sampler
gamma <- rep(0.1, length(ssy))
synLikeMisspec(ssy, ssx, type = "variance", gamma = gamma)
```

*BSL*version 3.2.5 Index]