This function serves as a unified interface to compute the log marginal likelihood for different regression models and priors by calling specific log likelihood functions.
fbms.mlik.master(
y,
x,
model,
complex,
mlpost_params = list(family = "gaussian", beta_prior = list(type = "g-prior"), r =
NULL)
)A list with elements:
Log marginal likelihood combined with the log prior.
Posterior mode of the coefficients.
A numeric vector containing the dependent variable.
A matrix containing the precalculated features (independent variables).
A logical vector indicating which variables to include in the model.
A list of complexity measures for the features.
A list of parameters controlling the model family, prior, and tuning parameters. Key elements include:
family: "binomial", "poisson", "gamma" (all three referred to as GLM below), or "gaussian" (default: "gaussian")
prior_beta: Type of prior as a string (default: "g-prior"). Possible values include:
"beta.prime": Beta-prime prior (GLM/Gaussian, no additional args)
"CH": Compound Hypergeometric prior (GLM/Gaussian, requires a, b, optionally s)
"EB-local": Empirical Bayes local prior (GLM/Gaussian, requires a for Gaussian)
"EB-global": Empirical Bayes local prior (Gaussian, requires a for Gaussian)
"g-prior": Zellner's g-prior (GLM/Gaussian, requires g)
"hyper-g": Hyper-g prior (GLM/Gaussian, requires a)
"hyper-g-n": Hyper-g/n prior (GLM/Gaussian, requires a)
"tCCH": Truncated Compound Hypergeometric prior (GLM/Gaussian, requires a, b, s, rho, v, k)
"intrinsic": Intrinsic prior (GLM/Gaussian, no additional args)
"TG": Truncated Gamma prior (GLM/Gamma, requires a, s)
"Jeffreys": Jeffreys prior (GLM/Gaussian, no additional args)
"uniform": Uniform prior (GLM/Gaussian, no additional args)
"benchmark": Benchmark prior (Gaussian/GLM, no additional args)
"ZS-adapted": Zellner-Siow adapted prior (Gaussian TCCH, no additional args)
"robust": Robust prior (Gaussian/GLM, no additional args)
"Jeffreys-BIC": Jeffreys prior with BIC approximation of marginal likelihood (Gaussian/GLM)
"ZS-null": Zellner-Siow null prior (Gaussian, requires a)
"ZS-full": Zellner-Siow full prior (Gaussian, requires a)
"hyper-g-laplace": Hyper-g Laplace prior (Gaussian, requires a)
"AIC": AIC prior from BAS (Gaussian, requires penalty a)
"BIC": BIC prior from BAS (Gaussian/GLM)
"JZS": Jeffreys-Zellner-Siow prior (Gaussian, requires a)
r: Model complexity penalty (default: 1/n)
a: Tuning parameter for g-prior (default: max(n, p^2))
a, b, s, v, rho, k: Hyperparameters for various priors
n: Sample size for some priors (default: length(y))
var: Variance assumption for Gaussian models ("known" or "unknown", default: "unknown")
laplace: Logical for Laplace approximation in GLM only (default: FALSE)
fbms.mlik.master(y = rnorm(100),
x = matrix(rnorm(100)),
c(TRUE,TRUE),
list(oc = 1),
mlpost_params = list(family = "gaussian", beta_prior = list(type = "g-prior", a = 2),
r = exp(-0.5)))
Run the code above in your browser using DataLab